资源描述
word航天职业技术学院温度采集报警报告 报告题目:数字温度计 系部:电子工程系 专业:计算机控制技术 : 学号: 指导教师:汤平温度采集报警任务书 题目:数字温度计 任务与要求:1、查阅数字温度计设计相关资料,熟悉数字温度计设计的原理, 查阅A/D转换与传感器相关知识,画出数字温度计原理图,并编写相应的源程序。 2、使用8052单片机作为处理器,设计数字温度计设计,设定温度最高值和最低值。数码管进展循环显示,显示实际温度值。 3、实现单路的电压采集和显示,显示3位温度值,最后1位显示“C 4、并用喇叭报警。发挥局部:将仿真电路图和程序修改为中断方式实现温度采集和显示。 前言 温度的检测与控制是工业生产过程中比拟典型的应用之一,随着传感器在生活中的更加广泛的应用,利用新型数字温度传感器实现对温度的测试与控制得到更快的开发,本文设计了一种基于80C52的温度检测与报警系统。该系统可以方便的实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。该系统设计和布线简单,结构紧凑,抗干扰能力强,在大型仓库、工厂、智能化建筑等领域的温度检测中有广泛的应用前景。目录1、 原理 12、 元器件介绍 2 3、元器件清单 7 4、参考电路图 8 5 电路图详解10 6、元器件的排版与焊接 117、参考程序编写与导入128、成品的调试15 9、总结 16 10、参考文献 17 原理根据主芯片AT89S52所展开设计 1 微处理器:AT89S52非常适用于控制,他的主要结构和特点在前面已经介绍过了,为了满足外围接口电路的需要,一般都要在输出口处接锁存驱动电路,这里我们采用的是SN74HC573。 2 压频变换装置:将模拟的电压量转化成频率值,这是一种A/D转化方式,将输出电压U0采样通过压频变换装置传给单片机,压频转化装置我们用的是National Semiconductor的LM331。 3 输出控制电路:单片机的输出控制信号通过电阻解码网络转化成模拟电压值,控制电压和电流比拟器的基准值,实现对外围功率电路的控制。 4 上电复位电路:为了防止单片机的程序飞跑,出现死锁,我们采用MAXIM公司的MAX813L系统监控集成芯片来实现对单片机的监控,该芯片具有看门狗电路、门限值检测器、手动复位等功能。 5 输入控制和数码显示电路:包括按键和显示局部。通过简单的按键选择,实现运行方式选择、复位与故障的显示。显示局部采用SN74HC573驱动两个8位七段LED显示;同时通过发光二极管和蜂鸣器提示运行状态。 1 元器件介绍本设计选用的单片机型号为STC89C52RC,它是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。芯片的引脚见图3-1。图3-1 STC89C52芯片引脚图 2其部管脚与通用的8xC52根本一样,主要处理各外部硬件的初始化,会聚IC部存放器和数据RAM并与CPU进展通信等。其主要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST(9脚)为复位输入端口,外接电阻电容组成的复位电路,可进展手动复位。VCC(40脚)和GND(20脚)为供电端口,分别接+5V电源的正负端。P0P3为可编程通用I/O脚,其功能用途由软件定义,各引脚功能描述见表3-1。表3-1 STC89C52RC引脚功能描述名称名称与功能ALE地址锁存使能P0口P1口T2P1.0:定时/计数器2的外部记数输入/时钟输出T2EXP1.1:定时/计数器2重装载/捕捉/方向控制P2口P3口RXD(P3.0):串行输入口TXD(P3.1):串行输出口INT0(P3.2):外部中断0INT1(P3.3):外部中断T0(P3.4):定时器0外部输入T1(P3.5):定时器1外部输入WR(P3.6):外部数据存储器写信号RD(P3.7):外部数据存储器读信号PSEN程序存储选通RST复位端VCC电源:提供掉电,空闲,正常工作电压。GND接地EA/Vpp外部寻址使能/编程电压XTAL1晶体1:反相振荡放大器输入和部时钟发生电路输入XTAL2晶体2:反相振荡放大器输出STC89C52RC单片机还具有以下几个特点:1) 增强型6时钟/机器周期CPU;2) 宽工作电压,工作频率围0-40MHz,实际工作频率可达48MHz;3) 工作温度围075;4) 8KB用户应用程序空间以与512B片RAM,无需扩展存储器;32个通用I/O口,复位后P1/P2/P3是准双向口/弱上拉,P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口使用如此需要上拉电阻;5) 置看门狗电路,无需外加看门狗电路;6) 置3个16位定时器/计数器,其中定时器0可作为2个8位定时器使用;7) 具有4个外部中断源,下降沿或低电平触发中断,掉电模式可由外部中断低电平触发中断模式唤醒;8) PDIP-40封装。 4 共阳极数码管:数码管引脚分部: 5 6元器件清单名称参数数量7组数量51系列单片机STC89C51/52RC17单片机座子40引脚17晶振12MHz17瓷片电容22pF214瓷片电容214电解电容22uF/16V17电解电容20uF/16V214电阻10k214电阻1k214电阻4k214电阻30017变阻器100k17集成运放UA74117串行A/D转换器TLC54917模拟温度传感器LM3517三极管901217蜂鸣器17按键17焊锡假如干万能板7cmX15cm110导线假如干 7 参考电路图 8 电路详解80C51时钟有两种方式产生,即部方式和外部方式。如图2-4所示80C51中有一个构成部震荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反应元件的片外石英或瓷震荡器一起构成自激震荡器震荡电路如图。外接石英晶体或瓷震荡器与电容C1、C2接在放大器的震荡回路中构成并联震荡电路。对外接电容C1、C2虽然没有非常严格的要求,但电容的大小会轻微影响震荡频率的上下、震荡工作的稳定性、起震的难易程序与温度稳定性,如果使用石英晶体,推荐使用30pF10pF,而如果使用瓷谐振器建议选择40pF10pF。用户还可以采用外部时钟,采用外部时钟如下列图。在这种情况下,外部时钟脉冲接到XTAL1端,既部时钟发生器的输入端,XTAL2悬空。由于外部时钟信号是通过一个2分频的触发器后作为部时钟信号的所以外部时钟的占空比没有特殊要求,但最小高电平持续的时间和最大低电平持续的时间应符合产品技术条件的要求。本次设计采用部震荡电路,瓷片电容采用30P,晶振采用12MHZ。复位电路设计容采用电容值为10的电解电容。具体连接电路如图2-5所示:单片机系统的复位电路在这里采用的是上电+按钮复位电路形式,其中电阻R采用10K的阻值,电 10元器件排版焊接首先拿到参考电路图,仔细观看和理解电路图。在根据电路图上面的元器件一次核对教师所发的元器件是否够数,元器件的参数是否正确,用万用表测出每个电阻的参数大小,按顺序排列标注好参数信息。检查元器件是排版焊接的第一步.元器件检查完后,是就排版了,根据以往的经验可以把电路图分为几个局部后在来逐个排版焊接,现实最小系统电路的焊接,再焊接复位电路的元器件,这样把电路划分为几个小局部逐个焊接,利于焊接,便于检查,易防止漏掉元器件的安装与焊接。 11参考程序#include#define uchar unsigned char#define uint unsigned int#define Tmax 35 /报警温度35sbit TLC549_SCLK=P12; /TLC549芯片SCLK线sbit TLC549_SDO=P10; /TLC549芯片SDO线sbit TLC549_CS=P11; /TLC549芯片CS线sbit Speaker=P17; /蜂鸣器端口#define outbit P3 /outbit为数码管的公共端控制量#define outseg P2 /outseg为数码管的段码端控制量#define len 2 /len为数码管的个数uchar ledbuflen; /显示缓冲,存储显示字符的字段码uchar code segmap17=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77, 0x7c,0x39,0x5e,0x79,0x71,0x00; uchar TLC549_data( )/TLC549的A/D转换程序 uchar result;/定义result存放A/D转换结果 uchar i=0,j; TLC549_CS=1;/TLC549的CS引脚输出高电平,为A/D转换做准备 TLC549_CS=0; /TLC549的CS引脚输出低电平,开始一个A/D转换周期 result=0;/A/D转换结果清零 TLC549_SDO=1;/ 51单片机读数据时得先把管脚置1 for(i=0;ii);/ 从高位到低位依次获取A/D转换的结果 TLC549_SCLK=1; TLC549_SCLK=0; /输出TLC549的下降沿,从SDO端送出一位A/D转换结果 for(j=0;j2;j+);/下降沿产生后,400ns后新的位被写到数据线上,所以需延时 TLC549_CS=1; /一个周期完毕后,TLC549的CS端设置为高电平 return result; /返回A/D转换结果/延时子程序void Sleep(uchar count) uchar i; while(count- != 0) for(i=0;i124;i+);/ LED七段码显示函数 void DispLed() uchar i, pos=0x01; /从左往右显示,公共端控制暂存变量pos设置为0x01 outbit=0xff; /全灭 for(i=0; ilen; i+) /扫描2个LED outseg =ledbufi; /输出当前的段码值outbit=pos; /输出公共端的控制值,选通一个数码管 Sleep(20); /延时 pos=1; / 公共端控制暂存变量pos左移一位,为选通下一个数码管做准备 outbit=0xff; /关闭所有数码管Sleep(5); /延时 13/扬声器发声void speaker()uchar i;for(i=0;i=Tmax) /超过规定的温度,报警 speaker();DispLed();/显示温度值 顺序:1、18,19脚 2、9,31脚3、 14成品的调试 15 总结 经过这次微机控制技术实训温度采集报警数字温度计的制作过程,我再次巩固了单片机的有关知识。了解了80C52芯片的信息和功能还有用法,以与管脚分布,和引脚功能。学习了八段共阳极的数码管的引脚分布。温习了时钟电路,复位电路等的电路知识。通过焊接电路板,再次对我们的焊接技术进展回炉打造,得到提升,还有程序的编写也使我们对程序方面的知识得到大幅度的提升。 通过这次实训不仅使我们的专业知识和素养得到提升,对我们实际的动手能力和团结意识也得到成长,通过分组的形式一起完成实训任务,是我们充分认识到了,合作,团结的重要性,理解到团队能力大于个人能力本质意思。使我们各方面得到大幅度的成长表现,使我们变得更加成熟。 16参考文献1、 全立,德申,微机控制技术与应用,:机电,2004.2、 袁秀文,组态控制技术,:电子工业,20023、 德辉,士富,微型计算机控制系统,:冶金工业,20024、 长德,工业用微型计算机,:机械工业,19995、 黄一夫,微型计算机控制技术,:机械工业。19996、 互联网 17 21 / 21
展开阅读全文