1 / 7

微机控制 实验一

微机控制 实验一. A/D 转换实验. 实验内容. A/D 转换实验. 已知有 ADC0809 模数转换器,有一模拟电压,电压高低由电位器控制 要求: 1 、通过接线令 ADC0809 的地址为 0F000H 2 、使用 0809 上的 IN0 采集模拟量 3 、将 0809 转换的结果的 二进制数值用 8 位 LED 显示. ADC0809. 总线式电路连接. 数据总线. 数据线. 245. 地址总线. 地址线. CPU. 373. 控制总线. 控制线. 245. 地址译码. 内存模块. 模块 1. 模块 2. 模块 N.

Download Presentation

微机控制 实验一

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 微机控制 实验一 A/D转换实验

  2. 实验内容 • A/D转换实验 已知有ADC0809模数转换器,有一模拟电压,电压高低由电位器控制 要求: 1、通过接线令ADC0809的地址为0F000H 2、使用0809上的IN0采集模拟量 3、将0809转换的结果的二进制数值用8位LED显示

  3. ADC0809

  4. 总线式电路连接 数据总线 数据线 245 地址总线 地址线 CPU 373 控制总线 控制线 245 地址译码 内存模块 模块1 模块 2 模块 N … 问题: 在总线模式下,可供我们直接使用的通用IO口还剩有哪些?

  5. 初始化各个变量 启动AD 向ADC0809写入通道号 启动AD转换 等待EOC 等待转换完成 no EOC为1? yes 取转换结果 从ADC0809取出转换结果 显示转换结果 显示结果

  6. mov dptr,#1000h • mov a,#55h • movx @dptr,a • 上面3调语句的C语言可以表示如下 • #define W_DATA XBYTE[0x1000] • W_DATA=0X55; • 在使用外部总线的时候,数据 地址和控制信号是直接按照规定的时序输出高低电平的,所以不用你管,当然你必须要满足时序工作如何理解#define XBYTE ((unsigned char volatile xdata * )) • code 以 MOVC @A+DPTR 读取的程序内存 • data 可以直接存取的内部数据存储器 • idata 以 Mov @Rn 存取的内部数据存储器 • bdata 可以位寻址(Bit Addressable)的内部存储器 • xdata 以 MOVX @DPTR 存取的外部数据存储器 • pdata 以 MOVX @Rn 存取的外部数据存储器 • sfr 特殊功能缓存器(Special Function Register) • 语法 • sfr my_sfr = location; (location 范围从 0x80 ~ 0xFF) • 范例 • sfr P0 = 0x80; • 指定绝对地址的变量 • 在单一模块内可以使用下面的语法宣告 • [memory_space] type variable_name _at_ location • 范例 • pdata char my_pdata _at_ 0x80;

More Related