《单片机原理及接口技术》课程设计报告数字温度计设计_第1页
《单片机原理及接口技术》课程设计报告数字温度计设计_第2页
《单片机原理及接口技术》课程设计报告数字温度计设计_第3页
《单片机原理及接口技术》课程设计报告数字温度计设计_第4页
《单片机原理及接口技术》课程设计报告数字温度计设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单片机原理及接口技术课程设计报告课题名称数字温度计设计学 院自动控制与机械工程学院专 业电气工程及其自动化专业班 级xx级电气(x)班姓 名学 号xxxxxxxxxxxxxx时 间2011年12月 27日数字温度计设计报告摘要基于at89c52单片机的一种数字温度测量及报警电路运用74hc244隔离电压来保护单片机,该电路采用tp100作为温度检测元件测量温度范围:-50110;在该系统系统中扩展8位avd转换器adc0808完成模数转换,avd转换控制可使用查询方式,或中断方式;使用led显示模块,能设置温度报警上下限。该电路设计额定功率强大、结构简单,在数字化、智能化方面有广泛的应用。关键

2、词 温度测量 pt100 at89c51单片机 led显示模块74hc244 summaryat89c52 single chip microcomputer based on a digital temperature measurement and alarm circuit using 74 hc244 isolation voltage to protect a single-chip microcomputer, the circuit is used as test components tp100 temperature measuring temperature range:-

3、50 110 ; in the system of eight avd system extension adc0808 completed converter module conversion, avd conversion control can use inquires the way, or interrupt mode; use led display module, can set the lower temperature alarm. the circuit design rated power strong, simple structure, in digital, in

4、telligent with extensive application. keyword : temperature measurement pt100 at89c51 single-chip microcomputer led display module 74 hc244 目录一、内容提要31、设计任务:32、设计要求:3二、步骤及方案41、设计步骤42、方案论证4三、硬件设计51、总体电路设计图52、主控制器63、a/d转换74、测温电路95、低通有源滤波放大106、显示电路10四、软件设计141、计算温度子程序152、数据转换子程序163、报警子程序17五、系统调试18六、课程设计体

5、会21七、参考文献22附录23一、内容提要1、 设计任务:基于ms-51系列单片机at89c51,使用热敏电阻类的传感器件,设计一个数字显示温度计。2、设计要求:(1)、测量温度范围:-50110。(2)、精度误差小于0.5。(3)、led数码自读显示。(4)、可以任意设计温度的上下限报警功能。(5)、编程实现热敏电阻的非线性补偿。(7)、实现语音报出测量的温度值。二、步骤及方案1、设计步骤(1)、硬件电路图,由xx同学设计完成;软件程序部分由xx同学编写调试;实验设计报告由xx同学完成。(2)、首先设计硬件电路,调试电路参数,找出温度变化与电压变化之间的关系,调试电路,实际结果为:温度为-5

6、0时电路输出电压值为0.10v,温度为110时电路输出电压值为4.81v。(3)、根据电路中温度与电压之间的关系,编写程序算法,对应关系为温度值电压值0.66-55,根据设计要求编写调试程序。(4)、根据设计要求,基于硬件电路与软件程序的设计思路撰写设计报告。2、方案论证根据系统的设计的要求,选择pt100作为本系统的温度传感器,选择单片机at89c52为监测系统的核心来完成数据采集、处理、显示、报警等功能。同时还选用8位a/d转换器adc0808完成模数转换,省却了采样/保持电路、运放以及进行长距离传输时的串/并转换电路,简化了电路,缩短了系统的工作时间,降低了系统的硬件成本。该系统的设计总

7、体思路如下,温度传感器pt100把所测得的温度发送到a/d转换器adc0808上,完成模数转换;接着再把信号传到at89c52单片机上,经过52单片机的处理,将把温度在led显示模块上显示,本系统采用4位共阳极led数码管以动态扫描的方法实现。测量温度范围:-50110。 按照系统设计功能的要求,确定系统由4个模块组成:主控制器、a/d转换、测温电路和显示电路。 数字温度计总体设计电路结构图如图1所示:图1 数字温度计总体电路结构框图三、硬件设计1、总体电路设计图数字温度计总体设计电路图如图2所示:图2 数字温度计总体设计电路图2、主控制器(1)单片机的选择at89c51作为温度测试系统的核心

8、器件。该器件是intel公司生产的mcs51系列单片机的基础产品,采用了可靠的cmos工艺制造技术,具有高性能的8位单片机,属于标准的mcs51的cmos产品。不仅结合了hmos的高速和高密度技术及hmos的低功耗特征,而且继承和扩展了mcs48单片机的体系结构和指令系统。单片机小系统的电路图如图3所示。图3 单片机小系统电路at89c51单片机的主要特征:a、与mcs51兼容,4k字节可编程闪烁存储器;b、灵活的在线系统编程,掉电标识和快速编程特性;c、寿命为1000次写/擦周期,数据保留时间可10年以上;d、全静态工作模式:0hz33hz;e、三级程序存储器锁定;f1288位内部ram,3

9、2位可编i/o线;g、两个16位定时器/计数器,5个中断源,4个8位并行的i/o接口,1个全双工i/o接口。h、有位寻址功能、适于布尔处理的位处理机。(2)单片机与报警电路系统中的报警电路是由发光二极管和限电流电阻组成,并与单片机的p1.2端口连接。p1端口的作用和接线方法与p2端口相同,不同的是flash编程和程序校验,p1接收低8位地址数据。(3)程序存储器 本系统的所需的没有必要外扩程序存储器,所以不用考虑存储器扩充容量的大小,单片机本身的存储器就已足够。(4)数据存储器 根据系统的功能要求,不需扩展外部ram,89c51本身的ram就能满足要求。(5)i/o接口芯片 根据系统的功能要求

10、,i/o接口芯片的也不需进行扩展。(6)总线驱动能力 mcs-51系列单片机的外部扩展功能很强,但4个8位并行的带负载的能力是有限的。p0口能驱动8个ttl电路,p1p3口只能驱动3个ttl电路。在实际运用中,这些端口的负载不应超过总负载能力的70%,以保证留有一定的余量,以增强系统的抗干扰能力,在外接负载较多的情况下,应采用总线驱动电路,以提高端口的驱动能力和抗干扰能力。3、a/d转换adc0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行a/d转换。一般在硬件仿真时采用adc08

11、08进行a/d转换,实际使用时采用adc0809进行a/d转换。利用adc0808实现测量值为50110的温度,基准电压采用5v电源电压。由于adc0808为8位a/d转换器,则a/d采样的最小分辨温度为5/150=0.03。由此 可知,显示的温度只要小数点后保留一位即可。adc0808芯片有28条引脚,采用双列直插式封装,如图4所示。其时序图如图5所示,各引脚功能如下: 15和2628(in0in7):8路模拟量输入端。 8、14、15和1721:8位数字量输出端。 22(ale):地址锁存允许信号,输入,高电平有效。 6(start): ad转换启动脉冲输入端,输入一个正脉冲(至少100n

12、s宽)使其启动(脉冲上升沿使0809复位,下降沿启动a/d转换)。 7(eoc): ad转换结束信号,输出,当ad转换结束时,此端输出一个高电平(转换期间一直为低电平)。 9(oe):数据输出允许信号,输入,高电平有效。当ad转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 10(clk):时钟脉冲输入端。要求时钟频率不高于640khz。 12(vref(+)和16(vref(-):参考电压输入端 。11(vcc):主电源输入端。 13(gnd):地。 图4 0808的引脚图图5 0808的时序图4、测温电路金属铂(pt)的电阻值随温度的变化而变化,并具有良好的重视性和稳定性。

13、pt100在200850内比热电偶更精确、线性度更佳两端产生的降压远远大于热电偶的输出,并且不需要冷端补偿。此外,pt100还具有抗振动、防腐蚀、良好的互换性、重视性和稳定性等优点,常用于低中温测量。pt100的电阻值与温度的关系pt100在实际应用主要有以下要点:、选型应该根据实际使用温度测量范围、精度、尺寸及安装固定方式。、允许流过电流应小于5ma。在进行电流电源激励pt100(特别是采用电桥的电路形式)时,应注意满足该条件,负责会造成pt100自然而影响测量精确度。一般激励电流采用1ma,甚至更小。、电路接入方式一般有两线制、三线制和四线制。二线制时传感器电阻与连导线电阻值共同构成总的电

14、阻值,所以导线电阻带来的附加误差会使实际测量值偏高,一般适用于低测量精度且引线短的场合;三线制要求三根引线截面积和长度均相同、引线(正负线)电阻产生的影响才能相互抵消,工业中一般采用三线制;四线制用在测量精确度高且变化很小的场合,因为在这些场合下引线电阻可能引入明显误差,这时可利用其中的两条条引线提供恒定电流,另外两条引线提供未知电阻的电压降,四线制也是经常使用。、误差:温度传感器在测量温度的过程中主要误差来源有传感器对分度表的误差;绝缘不良引起的误差;线路引起的误差;测量仪表引起的误差以及传热误差、动态相应误差、干扰误差等。其中有些误差只有在一定条件下才出现,并且可以通过一定措施来减小或消除

15、误差。该系统除了采用三线制的接入方式来减小引线电阻的影响外,还采用了二阶有源滤波放大电路来减小外部干扰所带来的误差。5、低通有源滤波放大 由于被测温度是缓慢变化的,从而pt100的输出信号也是缓慢变化的,采用如图6所示的低通有源滤波放大电路来调理信号,能有效地滤除一些低频干扰,使得输出信号更平滑,根据图中的参考数,可算出截止频率图6 低通有源滤波放大6、显示电路 显示电路采用4位共阳极led数码管,从p0口输出断码,列扫描p2.0p2.3口分别作为led的1、2、3、4。led显示分别为静态显示和动态显示。这里采用静态显示,系统通过单片机的串行口来实现静态显示。串行口为方式零状态,即工作在移位

16、寄存器方式,波特频率为振荡频率的1/12。当器件执行任何一条将subf作为目的的寄存器的命令时,数据便开始从rxd端发送。信号有效时,相隔一个 机器周期后发送控制器send有效,即允许rxd端发送数据,同时允许txd端输出移位脉冲。如图7为显示电路连接图,图8为读取数据的流程图。图7 显示电路连接图图8 读取数据的流程图 读出温度数据后,low的低四位为温度的小数部分,可以精确到0.0625,low的高四位和high的低四位为温度的整数部分,high的高四位全部为一表示负数,全部为0表示正数。所以先将数据提取出来,分为三个部分:小数部分、整数部分和符合部分。小数部分进行四舍五入处理,大于0.5

17、的话,向个位进1;小于0.5的时候,舍去不要。当数据是负数的时候,显示之前要进行数据转换,将其整数部分反加一。因为pt100的最温度只能为50,所以可以将整数部分的最高位换成一个“”,表示为负数。如图9为温度数据处理程序的流程图。图9 温度数据处理程序的流程图。四、软件设计系统程序主要包括主程序,计算温度子程序,数据转换子程序,报警子程序和显示数据子程序,其主程序流程图如图10所示。图10 主程序流程图1、 计算温度子程序 计算温度子程序将ram所读的数据中进行bcd码转换运算,并进行温度值正负的判断,其流程图如图11所示。图11 计算温度子程序2、 数据转换子程序数据转换子程序主要是将p1口

18、送入b,判断输入的值是否大于83,通过各种线性关系分别显示数据,其流程图如图12所示。图12 数据转换子程序3、 报警子程序报警子程序主要是对所读春的温度值进行判断是否超出量程,若大于110度,则红灯亮蜂鸣器响,若小于-50度绿灯亮蜂鸣器响,其流程图如图13所示。图13 报警子程序五、系统调试经软件调试仿真软件protues调试,将温度传感器调到一定的温度值,根据温度传感器pt100随温度变化电阻值发生变化的特性,利用a/d转换采集数据,利用at89c51作为温度测试系统的核心器件将电压变化转换为温度变化。待显示稳定后记录显示模块的温度值,观察对二者进行比较看是否对应,并将其记录下来。进行多组

19、测量,观察是否存在误差。例如,仿真protues,j将温度传感器调为0.0度,待显示稳定后读出测量结果为0.0度。实验结果是,得到的有些数据存在误差,其余的都符合设计要求。实验基本成功。调试仿真结果如下:1、当温度低于-50时,低温报警,发光二极管绿灯点亮,蜂鸣器发出报警声,仿真图如图14所示:图14 低温报警仿真图2、当温度高于105时,高温报警,发光二极管红灯点亮,蜂鸣器发出报警声,仿真图如图15所示:图15 高温报警仿真图3、当温度为0时,led显示器应显示000.0,仿真图如图16所示:图16 温度为0时显示仿真图六、课程设计体会作为一名电气工程及其自动化专业的学生,我觉得做单片机课程

20、设计是很有意义的,而且是很有必要的,在这次课程设计的过程中带给我们的影响很大,我们又一次的查阅大量的设计资料,每一步都有可能出现的问题,我们所做的就是迎接问题,改正错误,使自己的作品更加完善。其次,在这次课程设计中,我们运用了以前学过的专业知识,如protues仿真、汇编语言、c语言、模拟和数字电路的知识等。虽然在电子技术大赛期间也曾独立运用过它们,但是在学习过程中带着问题去学习我发现效率很高,这就是在这次课程设计中的又一个收获。最后,要做好一个课程设计,就必须做到在课程设计之前,对所用单片机的内部结构有一个系统的理解,知道该单片机有哪些资源:要有一个清晰的思路和一个完整的软件电路图;在程序设

21、计时,不能妄想一次将整个程序设计好,反复修改、不断改进是程序设计的必经之路,要养成注释程序的好习惯,这样为资料的保留和交流提供了方便。在今后的学习生活中,要牢记在实验中的经验教训,争取获得更大的进步。七、参考文献1、李雪莉、张岩.基于avr单片机的多功能电源设计 .现代电子技术.2009-09-012、吴亦锋、陈德为.单片机原理与接口技术.电子工业出版社.20103、北京赛亿凌科技有限公司.铂电阻温度传感器(pdf).4、赵继文.传感器与应用电路设计.科学出版社,20025、mcp60 datas.6、杨素行.模拟电子技术m. 高等教育出版社.2006附录源程序代码/-/名称:用ad0808与

22、单片机做数字温度计/-#include#defineuncharunsignedchar#defineunintunsignedint sbitst=p25;/adc0808引脚定义sbitoe=p27;sbiteoc=p26;sbitclk=p24;sbith_led=p30;/报警指示灯sbit l_led=p31;sbitbeep=p37; /蜂鸣器uncharcodedsy_code=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x80;/数码管断码定义unchartemperature=0,0,0,0;/待显示各温度数位unchart=0; unchar b,d,c;/-/延时/- void delayms(unint ms)unchar i;while(ms-) for(i=0;i120;i+);/-/显示函数/-voidshow_temperature() unchari,dsy_idx=0xf7,0xfb,0xfd,0xfe;for(i=0;i4;i+) p0=dsy_co

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论