当前位置:
文档之家› 单片机基于51单片机的温度传感器设计共52页
单片机基于51单片机的温度传感器设计共52页
AD590 测温电路
整体电路图
系统模块介绍
• AD590及外围电路 • ADC0809模数转换 • 按键控制模块 • 报警模块
温度传感器AD590
温度转换为电流。 线性度优良、性能稳定。 每增加1℃,它会增加1μA输出电流。 可测量范围-55℃至150℃。 供电电压范围+4V至+30V。
钟为500KHz时)。 单个+5V电源供电。 模拟输入电压范围0~+5V,不需零点和满刻度校
准。 工作温度范围为-40~+85摄氏度。 低功耗,约15mW。
ADC0809内部结构
ADC0809各脚功能
D7-D0:8位数字量输出引脚。 IN0-IN7:8位模拟量输入引 脚。 VCC:+5V工作电压。 GND:地。 REF(+):参考电压正端。 REF(-):参考电压负端。
getdataV=P1; //转换数据输出给单片机P1口
OE=0;
//传输结束,OE重新变为0
return getdataV;
}
单片机以及数码管显示
AT89C51单片机模块
80C51单片机介绍
80C51是美国ATMEL公司生产的低电压,高性能 CMOS8位单片机,可提供以下标准功能:4K 字节闪 存,128字节内部RAM,32个I/O口线,两个16位定时 /计数器,一个5向量两级中断结构,一个全双工串 行通信口,片内振荡器及时钟电路。同时,80C51可 降至0HZ的静态逻辑操作,并支持两种软件可选的节 电工作模式。空闲方式停止CPU的工作,但允许RAM, 定时/计数器,串行通信口及中断系统继续工作。 掉电方式保存RAM中的内容,但振荡器停止工作并 禁止其它所有部件工作直到下一个硬件复位。
的数据就输出给单片机了。
ADC0809电路连接
电压输入选择IN0通道 转换数据从OUT1~OUT7口输 出至单片机的P1口 START与ALE一起接P3.0 OE接P3.1 CLOCK接P3.3 A、B、C三条地址线接单片 机的P3.4 P3.5 P3.6
ADC0809模块
开始
初始化
启动转换
转换 结束
取数据
读数 据结
束
结束
软件实现
*函数:ADC0808初始化
void ADC_Init(void) {
ST=1; P34=0; P35=0; P36=0; //选择地址IN1(CBA=000) ST=0; //ST为转换启动信号 EOC=1; //转换结束信号。高电平时,表明转换结束 OE=0; //输出允许信号。OE=1,输出转换数据 }
温度传感器AD590
1脚接VCC 2脚接电流输出端 3脚一般不用
A阻选用9.6K 滑动变阻器 选用1K 通过微调使 得总电阻精确 到10K
AD590模块
选用运放741做电压跟随器,提高输入阻抗。 仿真时,用滑动变阻器改变电压,模拟实际中的温度变化。
通道选择
当ALE线为高电平时, 地址锁存与译码器 将A,B,C三条地址 线的地址信号进行 锁存,经译码后被 选中的通道的模拟 量进入转换器进行 转换。
ADC0809应用说明
(1) ADC0809内部带有输出锁存器,可以与51单片机 直接相连。
(2) 初始化时,使ST和OE信号全为低电平。 (3)送要转换的哪一通道的地址到A,B,C端口上。 (4) 在ST端给出一个至少有100ns宽的正脉冲信号。 (5) 是否转换完毕,我们根据EOC信号来判断。 (6) 当EOC变为高电平时,这时给OE为高电平,转换
放大电路
741放大器为运算放大器中最常被使用的一 种,拥有反相向与非反相两输入端,由输入端 输入欲被放大的电流或电压信号,经放大后由 输出端输出。放大器作动时的最大特点为需要 一对同样大小的正负电源,其值由±12Vdc至 ±18Vdc不等,这里使用±15Vdc的电压。
放大电路
7脚、4脚分别接正负15V; 3端输入,6端输出; 构成电压跟随器。
ADC0809
ADC0809是美国国家半导体公司 生产的CMOS工艺8通道,8位逐次 逼近式A/D模数转换器。其内部有 一个8通道多路开关,它可以根据 地址码锁存译码后的信号,只选通 8路模拟输入信号中的一个进行A/D 转换。
ADC0809
主要特性:
8路输入通道,8位A/D转换器,即分辨率为8位。 具有转换起停控制端。 转换时间为100μs(时钟为640KHz时),130μs(时
ADC0809各脚功能
START:A/D转换启 动信号输入端。 ALE:地址锁存允许 信号输入端。 (以上两种信号用 于启动A/D转) A、B、C:地址输入 线
ADC0809各脚功能
EOC:转换结束信号输 出引脚,开始转换时为 低电平,当转换结束时 为高电平。 OE:输出允许控制端, 用以打开三态数据输出 锁存器。 CLK:时钟信号输入端 (一般为500KHz)。
基于AD590温度显示器设计
小组成员 22019311 22019312 22019313
刘森林 俱子研 孙业飞
设计要求
自动显示当前温度。 设置温度上下限报警功能。 温度上下限调整可通过串行通信接口实现。 当前温度可通过串行通信接口送给计算机。 温度超限报警。
总体方案
系统以51单片机为控制核心,加上AD590测温 电路、ADC0809模数转换电路、温度数据显示 电路以及外围电源等组成。
利用AD590集成温度传感器及其接口电路完成 温度的测量并转换成模拟电压信号。经由模数 转换器ADC0809转换成单片机能够处理的数字 信号,然后送到单片机中进行处理变换,最后 将温度值显示在LED显示器上。
硬件原理图
温度显示 超量程报警 按键控制 电源及复位电路
AT89C51
ADC0809 模数转换
*函数:触发ADC0808开始转换并读取数值
uchar ADC_Read(void)
{
uchar getdataV;
OE=0;
//OE=0时输出呈高阻态
ST=1;
//上跳沿时,内部寄存器清零
ST=0;
//下跳沿时,进行A/D转换
while(EOC==0); //空循环,直到转换结束
OE=1;
//允许输出