- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
简易数字温度计的设计与制作_精品
简易数字温度计的设计与制作
一、系统功能原理及硬件组成
该数字温度计利用AD590集成温度传感器及其接口电路完成温度的测量并转换成模拟电压信号,经由模数转换器ADC0804转换成单片机能够处理的数字信号,然后送到单片机AT89C51中进行处理变换,最后将温度值显示在D4、D3、D2、D1共4位七段码LED显示器上。
系统以AT89C51单片机为控制核心,加上AD590测温电路、ADC模数转换电路、4位温度数据显示电路以及外围电源、时钟电路等组成。系统组成框图如图1所示。
图1系统组成框图
1、AT89C51单片机
Atmel公司的生产的AT89C51单片机是一种低功耗/低电压、高性能的8位单片机,内部除CPU外,还包括128字节RAM,4个8位并行I/O口,5个中断优先级,2层中断嵌套中断,2个16位可编程定时计数器,片内集成4K字节可改变程序Flash存储器,具有低功耗,速度快,程序擦写方便等优点,完全满足本系统设计需要。
单片机P0口作为ADC0804转换数据的输入端,P2.0接ADC0804的INTR端检测数据转换是否结束。P1.0~P1.3的输出信号接到译码器7447上作为数码管的显示,P1.4~P1.7则作为4个数码管的位选信号控制。P3口有特殊的功能,P3.6用于控制ADC0804的启动,P3.7用于控制读取ADC0804的转换结果。
2、AD590温度传感器
AD590是美国模拟器件公司生产的单片集成两端感温电流源。AD590测温范围为-55℃~+150℃,满足人们日常生产和生活中的温度范围。AD590电源电压可在4V~6V范围变化,可以承受44V正向电压和20V反向电压,因而器件反接也不会被损坏。AD590产生的电流与绝对温度成正比,它有非常好的线性输出性能,温度每增加1℃,其电流增加1μA。
AD590温度与电流的关系如下表所示:
摄氏温度 AD590电流 经10KΩ电压 0℃ 273.2μA 2.732 V 10℃ 283.2μA 2.832 V 20℃ 293.2μA 2.932 V 30℃ 303.2μA 3.032 V 40℃ 313.2μA 3.132 V 50℃ 323.2μA 3.232 V 60℃ 333.2μA 3.332 V 100℃ 373.2μA 3.732 V 为了提高精度,扩大测量范围,在A/D转换前还要将信号加以放大并进行零点迁移,因而一个高稳定性的、高精度的放大电路是必须的。当温度变化时,AD590会产生电流变化,当AD590的电流通过一个10kΩ的电阻时,这个电阻上的压降为10mV,即转换成10mV/K,为了使此10kΩ电阻精确,可用一个9kΩ的电阻与一个2kΩ的电位器串联,然后通过调节电位器来获得精确的10kΩ。运算放大器A1被接成电压跟随器形式,以增加信号的输入阻抗,由运放A2减去2.732做零位调整(即把绝对温度转成摄氏温度),最后由运放A3反相并放大5倍输送给A/D转换器。具体硬件连接图如图2所示。
图2 AD590温度采集及模数转换电路
3、ADC0804模数转换器
AD590测温电路输出的电压信号为模拟信号,要进行数码显示,还需将此信号转换成数字信号。为此我们通过A/D转换器ADC0804将输入的模拟值转换成数字值,经AT89C51单片机处理后输出到P1以控制温度显示电路。
ADC0804是用CMOS集成工艺制成的逐次比较型摸数转换芯片,分辨率8位,转换时间100μs,输入电压范围为0~5V,增加某些外部电路后,输入模拟电压可为5V。该芯片内有输出数据锁存器,当与计算机连接时,转换电路的输出可以直接连接在CPU数据总线上,无须附加逻辑接口电路。具体硬件连接图如图2所示。
4、七段码LED温度显示电路
由发光二极管组成的七段码LED显示器是单片机应用产品中最常用的廉价输出设备,用于显示各种数字和字符。该数字温度计的温度显示由4位七段码LED显示器组成,单片机以并行通信方式从P1.0~P1.7口输出段码和控制信号,通过7447 TTL BCD译码器译码,用4个共阳极LED动态显示温度的各个数位。具体硬件连接图如图3所示。
图3温度显示及单片机时钟、复位电路
二、系统软件设计与编程
该数字温度计软件部分用MCS-51汇编语言编程实现,采用模块化程序设计思想,将软件划分成若干单元,主要包括主程序、十进制数据转换及调整子程序、LED数码显示子程序和延时子程序等。本系统具体汇编源程序见后附。
1、系统主程序
在主程序中,系统上电自动复位以后首先设置堆栈,然后启动ADC0804
文档评论(0)