用ADC0808设计的调温报警器.docx
- 文档编号:10194113
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:12
- 大小:795.42KB
用ADC0808设计的调温报警器.docx
《用ADC0808设计的调温报警器.docx》由会员分享,可在线阅读,更多相关《用ADC0808设计的调温报警器.docx(12页珍藏版)》请在冰豆网上搜索。
用ADC0808设计的调温报警器
课程设计Ⅳ设计报告书
用ADC0808设计的调温报警器
姓名:
班级:
学号:
指导老师:
时间:
4.5程序清单…………………………………………………………14
内容摘要:
本文从硬件和软件两方面介绍了基于AT89C51单片机的温度报警系统的设计思路,对硬件原理图和程序框图作了简介的描述。
系统选用ADC0808转换器,仿真时利用可调电阻调节电压进行温度的输入量模拟,当温度低于60℃时,扬声器发出报警和绿光报警,当温度高于160℃时发出报警和发出红光报警。
测量范围在0——250℃,并能实时显示当前温度值。
关键词:
AT89C51单片机,DAC0808稳压电源发光报警
1绪论
温度是一个十分重要的物理量,对它的测量与控制又十分重要的意义。
随着现代化工农业技术的发展及人们对生活环境要求的提高,人们迫不及待需要检测与控制温度。
温度控制电路杂工农业生产中有着广泛的应用。
采用单片机来对他们进行监控不仅具有监控方便,简单灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。
因而,单片机对温度的监控问题是一个工业生产中经常会遇到的监控问题。
现代社会是信息化社会,随着安全化程度的日益提高,而通过温度报警器及时报警,避免不必要的损失。
2系统设计
2.1设计任务与要求
2.1.1设计任务
(1)设计一款基于AT89C51单片机的温度报警器。
利用可调电阻调节电压作为模拟温度的输入量,当温度低于60℃时,扬声器发出报警和绿光报警,当温度高于160℃时,发出报警和红光报警。
测量的温度范围在0——250℃,并能实时显示当前温度值。
(2)用计算机绘制所有的电路图。
3温度报警器硬件设计
3,1用ADC0808作为温度调节器,当调节温度﹤60℃或﹥160℃时报警灯闪烁,且发出不同频率的声音。
本实训电路原理图如下:
元器件:
7SEG-MPX4-CC-BLUE(7段4位共阴极LED数码管)、ADC0808(8位模/数转换器)、AT89C51(单片机)、CAP(瓷片电容)、CAP-ELEC(电解电容)、CRYSTAL(晶体振荡器)、LED-YELLOW(发光二极管)、POT-HG(高精度电位计)、RES(电阻)、RESPACK-8(带公共端得8路电阻)、SOUNDER(发声器)
编写数码管温度显示子程序:
13H存放温度个位显示码;12H存放温度十位显示码;11H存放温度百位显示码,根据下列流程图写出显示子程序
3.2D/A转换模块
D/A转换模块如图5所示,由数模转换器DAC0808和运放TL082构成。
DAC0808芯片是一个8位D/A转换器,有8个数码输入端,1个模拟输出端,能将控制电路输出的8位二进制数字量转换成模拟量的输出。
P2口与DAC0808的输入端相连,通过D/A转换电路将输入的数字量转为模拟量,通过TL082运算放大器输出实际的电电压表读出。
DAC0808引脚图如图6所示。
DAC0808各引脚功能如表1所示。
图6DAC0808引脚图
DAC0808的COMP引脚的作用为通过调节外接电阻,以达到改善放大器的性能和输出电压。
运放输出电压为
(1)
式中,VREF为外接参考电压,D7~DO为8位输入数字量。
当输入数字量在00000000~11111111之间变化时,其对应的输出模拟电压U1在0~-VREF之间,电压分辨率为:
△V=5V/(28-1)=19.6mV。
表1DAC0808的引脚功能
引脚
功能
引脚
功能
D7-D0
8根数据输入线,D7为最高位
COMP
补偿端
IO
电流输出线(由外向内流)
VLC
阈值控制输入端
VREF(+)、VREF(-)
参考电压输入端
IN-
反相输入端
VCC、VSS
电源输入端
IN+
同相输入端
GND
模拟地
Io
输出端
VCC-、VCC+
正负电源供应端
、
3.3数码管显示模块
数码显示模块电路如图8所示。
显示部分选用的是7seg-mpx2-cc两片7段共阴数码管。
单片机的P00~P07分别接数码管的A~DP口,P20、P21分别接数码管1、2接口,分别控制第一片和第二片的暗亮。
外加上拉电阻加强驱动能力,使数码管更亮。
图8数码管显示电路
3.5硬件元件清单
系统元器件清单见表2。
表2系统元器件清单
器件
数量
器件
数量
ADC0808
1
TL082
1
LED
2
DAC0808
1
7seg-mpx2-cc
1
电容(220n)
1
排阻(4.7k)
1
电容(33p)
2
电阻(5k)
3
数字电压表
1
晶振器
1
电阻(1k)
1
电容(10uF)
1
开关
1
4软件设计与仿真
本系统程序包括主程序、发送数据子程序、接收命令子程序等。
主程序用于系统初始化,子程序调度等。
\。
发送键码子程序用于将缓冲区键的接通码或断开码发送给单片机接口。
发送数据子程序用于将数据发给单片机接口。
接收命令子程序用于接收单片机接口发来的键盘命令。
4.1主程序设计
主程序通过控制程序来判断控制报警子程序和发声子程序。
主程序流程图如图9所示。
图9主程序流程图、
4.2显示子程序流程图
4.3报警子程序流程图:
4.4SOUNDER扬声器发声子程序流程图
4.5源程序
、#include
#include
#defineADC_VREF_TYPE0xe0 //选用2.56V的片内基准电压源,且结果为左对齐
#defineAD_SE_ADC00x00 //ADC0
unsignedcharTable[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //数码管字型0~9
unsignedcharData[4]={0,0,0,0}; //存放A/D转换结果
unsignedlonginti,j=2560,k=256;
voidport_init(void)
{
PORTA=0x01;
DDRA=0x00;
PORTB=0xFF;
DDRB=0xFF;
PORTC=0x0F;//m103outputonly
DDRC=0x
0F;
PORTD=0x00;
DDRD=0x00;
}
//ADCinitialize
//Conversiontime:
112uS
voidadc_init(void)
{
ADCSR=0x00;//disableadc
ADMUX=0x00;//selectadcinput0
ACSR=0x80;
ADCSR=0x86;
}
//callthisroutinetoinitializeallperipherals
voidinit_devices(void)
{
//stoperrantinterruptsuntilsetup
CLI();//disableallinterrupts
port_init();
adc_init();
MCUCR=0x00;
GICR=0x00;
TIMSK=0x00;//timerinterruptsources
SEI();//re-enableinterrupts
//allperipheralsarenowinitialized
}
voiddelay_(unsignedchara)
{unsignedinti;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ADC0808 设计 调温 报警器