单片机应用技术项目教程(C语言版)-项目六 模拟量输入输出设计与实现

单片机应用技术项目教程(C语言版)-项目六 模拟量输入输出设计与实现

ID:35612245

大小:213.50 KB

页数:28页

时间:2019-04-01

单片机应用技术项目教程(C语言版)-项目六  模拟量输入输出设计与实现_第1页
单片机应用技术项目教程(C语言版)-项目六  模拟量输入输出设计与实现_第2页
单片机应用技术项目教程(C语言版)-项目六  模拟量输入输出设计与实现_第3页
单片机应用技术项目教程(C语言版)-项目六  模拟量输入输出设计与实现_第4页
单片机应用技术项目教程(C语言版)-项目六  模拟量输入输出设计与实现_第5页
资源描述:

《单片机应用技术项目教程(C语言版)-项目六 模拟量输入输出设计与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、项目六 模拟量输入输出设计与实现教学目的掌握模/数、数/模转换芯片与单片机的连接方法及典型应用.掌握用查询方式、中断方式完成模/数、数/模转换程序的编写方法。模/数、数/模转换模拟量I/O接口的作用实际工业生产环境——连续变化的模拟量例如:电压、电流、压力、温度、位移、流量计算机内部——离散的数字量二进制数、十进制数工业生产过程的闭环控制模拟量D/A传感器执行元件A/D数字量数字量模拟量模拟量输入(数据采集)模拟量输出(过程控制)计算机模拟量I/O通道的组成模拟接口电路的任务模拟电路的任务0010110110101100工业生产过程传感器放大滤波多路转换&采样保

2、持A/D转换放大驱动D/A转换输出接口计算机执行机构输入接口物理量变换信号处理信号变换I/O接口输入通道输出通道工作模块15模数转换LED显示模拟量由电位器模拟产生;使用ADC0808/ADC0809模数转换器,将电位器上的模拟量(模拟电压)转换为数字量;把转换结果送到8个LED进行显示(既二进制显示)。模数转换显示电路ADC0809模数转换器ADC0809是8通道8位的,以逐次逼近原理进行模—数转换的器件;内部有一个8通道模拟多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换;A/D转换后的数据由三态锁存器输出;片内没有时

3、钟,需外接时钟信号。ADC0809主要特性8路8位A/D转换器,即分辨率8位;具有转换起停控制端;转换时间为100μs;单个+5V电源供电;模拟输入电压范围0~+5V,不需零点和满刻度校准;工作温度范围为-40~+85摄氏度;低功耗,约15mW。ADC0809外部特性一ADC0809芯片有28条引脚,采用双列直插式封装IN0~IN7:8路模拟量输入端;D0~D8:8位数字量输出端;ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路;CLK:时钟脉冲输入端;REF(+)、REF(-):基准电压;Vcc:电源,单一+5V;GND:地;通道选择

4、表地址码CBA选择的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7ADC0809外部特性二ALE:地址锁存允许信号,输入,高电平有效。START:A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。ADC0809工作过程首先输入3位地

5、址,并使ALE=1,将地址存入地址锁存器中;此地址经译码选通8路模拟输入之一到比较器;START上升沿将逐次逼近寄存器复位;下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行;直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请;当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。模数转换显示程序模数转换显示流程图模数转换显示程序开始初始化启动A/D转换A/D转换完成?数据输出延时结束技能训练6-1采用中断方式完成模数转换设计要求工作模块15是采用查询方式完成模数转换LED显示的,如

6、何采用中断方式实现模数转换LED显示。中断方式模数转换电路设计中断方式模数转换程序设计中断方式模数转换电路设计把转换完成的状态信号(EOC)作为中断请求信号,经过反相器后送到单片机的INT0引脚,电路其它部分与工作模块15一样。工作模块16数字电压表设计与实现使用AT89S52单片机,采用动态显示的方式,把8通道模数转换器ADC0808采样的电压值的大小经单片机处理后由数码管显示出来,量程为0-5V,显示格式:X.XXX。数字电压表电路设计由于需要显示多位,因此数码管采用了较节省I/O口线的动态显示方式。数字电压表程序设计数码管显示电压值实现分析模数转换采用的是

7、8位的ADC0808,因此其分辨力为5*1/2^8V,即19.6mV。为了得到各位待显示的数字的大小,采取了除法和取余相结合的方式:dat[3]=tmp/10000;/最高位dat[2]=tmp/1000%10;dat[1]=tmp/100%10;dat[0]=tmp/10%10;/最低位数字电压表控制C语言程序C语言结构体类型结构体与前面介绍过的数组一样,是一种构造类型的数据,它是将若干个不同类型的数据变量有序地组合在一起而形成的一种数据的集合体。组成该集合体的各个数据变量称为结构成员。整个集合体使用一个单独的结构变量名。一般来说结构中的各个变量之间是存在某些

8、关系的,如时间数据中的时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。