温度计微机原理与接口技术课程设计报告书.docx
电气工程学院微机原理与接口技术课程设计设计题目:温度计课程设计成绩评定表姓名树霞学号10292013课程设计题目:温度计课程设计答辩或提问记录:成绩评定依据:课程设计预习报告与方案设计情况(30%):课程设计考勤情况(15%):课程设计调试情况(30%):课程设计总结报告与答辩情况(25%):最终评定成绩(以优、良、中、与格、不与格评定)指导教师签字:年月日微机原理与技术接口课程设计任务书一、课程设计题目:温度计二、浮程设计要求1 .根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方确、步骤完整;2 .查阅有关参考资料和手册,并能正确选择有关元器件和参数,对设计方案进行仿真;3 .完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果;4,进实验室进行电路调试,边调试边修正方案;5 .撰写课程设计报告一一最终的电路图、调试过程中遇到的问题和解决问题的方法。三、进度安排1时间安排序号容学时安排(天)1方案论证和系统设计12完成电路仿真,写预习报告13电路调试24写设计总结报告与答辩1合计5设计调试地点:电气楼4102执行要求微机原理与接口技术课程成绩优秀的可以自拟题目,其余的同学都是指定题目。,每组不得超过2人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型A严禁抄袭,严禁两篇设计报告雷同。摘要随着时代的进步和发展,单片机技术已经普与到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术,本文主要介绍了一个基于89C51单片机的测温系统,详细描述了利用数字温度传感器AD590开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以与各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。关键词:单片机,温度计,89C51,AD590,AD0832AbstractWiththeprogressofthetimesanddevelopment,microcontrollertechnologyhasspreadtoourlife,work,scientificresearch,andeachdomain.Ithasbecomearelativelymaturetechnology.Thispaperintroducesatemperaturemeasurementsystembasedon89C51microcontroller,andadetaileddescriptionoftheprocessofusingdigitaltemperaturesensor,D590temperaturemeasurementsystemdevelopment,focusingonthehardwaresensorsinasingleconnection.Softwareprogrammingandsystemflowingofeachmoduleareanalyzedindetai1andonthepartofthecircuitareintroduced.Thesystemcanachievetherealizationoftemperatureacquisitionanddisplayandconvenient.Itisveryconvenienttouse.Ithashighaccuracy,widemeasuringrange,highsensitivity,smallsize,lowpowerconsumption.ItissuitableforourdaiIylivesandindustrial,agriculturalproductioninthetemperaturemeasurement,butalsocanbeusedasatemperatureprocessingmoduleembeddedinothersystems,asotherauxi1iarysystem.Thesystemhassimplestructure,stronganti-jammingcapability,anditissuitableforharshenvironmenton-sitetemperaturemeasurement.Ithaswideapplicationprospect.Keywords:SCM,thermometer,89C51,AD590,AD0832目录第一章、系统方案设计(一)、实验元件介绍(二)、设计思路第二章、仿真第三章、调试第四章、结论第五章、心得体会与建议参考文献附录:元器件清单第一章系统方案设计(一)、实验元件介绍1、感温元件AD590(1) AD590的主要特性:AD590是美国模拟器件公司生产的单片集成两端感温电流传感器,是一种已经IC化的温度感测器,它会将温度转换为电流。其规格如下:a、度每增加1,它会增加1“A输出电流b、可测量围-55至150c、供电电压围+4V至+30V(2) AD590管脚图与元件符号(3) AD590工作原理AD590相当于一个温度控制的恒流源,输出电流大小只与温度有关,且与温度成正比。只需一个精密电阻,就可以将电流(温度)信号转化为电压信号,总的灵敏度系数通过该电阻设定°AD590的温度系数是1"AK,即温度每增加IK,它会增加1A输出电流。其输出电流是以绝对温度零度-273°C为基准,每增加1,它会增加1A输出电流,因此0到100时AD590输出电流为273A到373/A。(4)电流-电压转换电路AD590电压-电流转换电路图中,AD590输出端输出电流,经过IOK的电阻,转换为电压值。OP07为一射极跟随器,A=1,用于提高输入阻抗。两个二极管用于隔离干扰。电流-电压转换公式如下:AD590的灵敏度:经过IOK电阻后:l"AK10ZO=10mVK具体温度-电压值对应如下表摄氏温度/°CAD590电流/A经10K。电压/V0273.22.73210283.22.83220293.22.93230303.23.03240313.23.13250323.23.23260333.23.332100373.23.7322、ADC0832通过特定的电流-电压转换电路之后,可得到与温度相对应的电压。但是若想显示,需要得到数字信号才行。所以需要用ADC0832。ADCO832为8位分辨率A/D转换芯片,其最高分辨可达256级,芯片的模拟电压输入在0-5V之间。其引脚图与说明如下:引脚功能说明: cs_片选使能,低电平芯片使能。 CHO模拟输入通道0,或作为in+使用。 CH1模拟输入通道1,或作为IN+/-使用。 GND芯片参考0电位(地)。 Dl数据信号输入,选择通道控制。 DO数据信号输出,转换数据输出。 CLK芯片时钟输入。 Vcc/REF电源输入与参考电压输入(复用)ADC08322-ChannelMUXDuaMn-LinePackage(N)CSCHQCHIGNDvccCLKDODlOOM>输入格式配置位选择通道号CHOCHlCHOCHl差分LL+LH+单端HL+HH+COMinternallyconnectedioGNDVrefIntemairyconnectedtovcc."bpviewADC0832Timing12345679IO11U13M13161718192CLOCK (CLX>CHIP SELECT (CS)MXMSS MUXSTAKT BITOOo/SIGNOATA * (0l- I jSO./WFDATA OUT (DO)Tm-STATfOUTFUT DATAMSB HRSI DATA+LSB FIRST OATA-J-11JWLLLRLRRRRRWUUUWWL-I-II-II-II-II-II-1r-三-7654321123497(*SB(LSS)(MS8)ADC0832时序:当CS由高变低时,选中ADCO832。在时钟的上升沿,Din端的数据移入ADC0832部的多路地址移位寄存器。在第一个时钟期间,Din为高,表示启动位,紧接着输入两位配置位。当输入启动位和配置位后,选通输入模拟通道,转换开始。转换开始后,经过一个时钟周期延迟,以使选定的通道稳定。ADeO832接着在第4个时钟下降沿输出转换数据。数据输出时先输出最高位(D7-DO);输出完转换结果后,又以最低位开始重新输出一遍数据(D7-D0),两次发送的最低位共用。当片选CS为高时,部所有寄存器清0,输出变为高阻态。实验中我们由CHO输入模拟量,D°ut输出数字量。我们把ADC0832的CS、CLK'Dout、Din端分别连接在P3.3、P3.2,P3.1,P3.0端,所以ADCO832的片选、时钟信号、启动位和配置位均通过置位端口实现。由于是CHO输入模拟信号,所以配置位为10(B)。ADeO832为单端输出模式。由于AD是串行输入输出,故前3个脉冲上升沿完成设置,第4-11个脉冲下降沿后取1位AD转换的结果,在第11-18个脉冲下降沿后第二次取AD转换结果,将两次结果进行比对,如果一致,则完成转换,关ADCO832;如果不一致,则重新开始转换。经AD转换后,数字量D与温度值的转换如下所示:T(K)=-2731.963'51单片机实验中将用51单片机作为将数字信号输出为数码显像管显示数字的转换芯片,用汇编程序控制单片机不同输出端口的高低电平,即可控制数码显像管显示的数字。4、数码显像管实验中所用的是较为普遍的4个8位显像管,显示的数字分别有不同的输出位所对应。其字形表为1-10:3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH。(二)、设计思路1、设计要求选用温度传感器AD590实现温度采集、摄氏温度显示,温度精度达到0.1度,测量围零下10度到零上100度电路由温度传感器(AD590),电压-电流转换电路,AD转换器,51单片机和显示模块组成。AD590属于电流输出型传感器,其输出的电流经电压-电流转换电路变为模拟电压信号,通过AD转换器变为数字量。此数字量输入单片机,单片机直接控制显示。显示模块由四个1.ED数码显示管和若干阻排组成。电路板连接如下图:2、程序设计框图与汇编语句:系统程序包括主程序、AD子程序、BCD子程序和显示子程序。实验中由于需要显示小数,所以需要借助100/51得到的小数位。具体计算过程如下:程序中将R7作为存储ADCO832输出8位的位。实验测得在0IO(TC的过程中,AD590经过IOkQ电阻,经过ADCo832转换之后的围为8BH-BEH,其中共有51个数,反映的是0°C100的变化。由于100/51=1,96=2-0.04,所以2可以作为整数显示的基础位,0.04可作为小数显示的基础位脸样就可以实现实验要求的功能。在ADCO832输出8BH-A4H的时候,小数位都不会超过1,所以就在整数位将其输出的数值乘以2之后减1,然后送到数码显像管显示;小数位就用其输出的数值乘以4,再用100减去这个数,作为小数位的数,送给数码显像管显示。这就是我们设计的温度计的基本原理。当然,由于ADCO832的原因,在CLK口输入的时钟信号需要从单片机中发出,所以还需要用SETB,CLR,DELAY等语句产生时钟信号。程序框图如下:AD子程序显示子程序实验程序ADDIBITP3.0;伪指令ADDOBITP3.1ADCLKBITP3.2ADCSBITP3.3LEDlEQU40H;第一个LED的字形地址偏移量放在40HLED2EQU41H;第一个LED的字形地址偏移量放在41HLED3EQU42H;第一个LED的字形地址偏移量放在42HLED4EQU43H;第一个LED的字形地址偏移量放在43HORGOOOOHAJMPMAINORG0030HMAlN:MOVSP,#60HMOVR4,#5TEST:LCALLADC0832;调用AD转换程序LCALLBCDCON;调用数值转换程序LP:LCALLDISPLAY;调用显示程序DJNZR4,LPSJMPTESTADC0832:SETBADDI;初始化通道选择CLRADCLKNOPNOPCLRADCS;拉低/CS端NOPNOPSETBADCLK;拉高CLK端NOPNOPCLRADCLK;拉低CLK端,形成下降沿SETBADDINOPSETBADCLK;拉高CLK端NOPNOPCLRADCLK;拉低CLK端,形成下降沿2CLRADDI;1-0选择1通道NOPNOPSETBADCLK;拉高CLK端NOPNOPCLRADCLK;拉低CLK端,形成下降沿3SETBADDINOPNOPMOVR7,#8;准备送下后8个时钟脉冲ADl:MOVC,ADDO;接收数据MOVACC.0,CRLA;左移一次SETBADCLKNOPCLRADCLK;形成一次时钟脉冲NOPNOPDJNZR7,ADl;循环7次MOVC,ADDO;接收数据MOVACC.O,CSETBADCS;拉高/CS端CLRADCLK;拉低CLK端SETBADDO;拉高数据端,回到初始状态MOV30H,A;数据放在30HADDA,#7MOV30H,ARETBCDCONrCLRCSUBBA,#139;与0摄氏度作判断JNCABOVEZERO;有借位往下执行,没有借位跳转ABOVEZEROBelowzero:MOVA,#139SUBBA,30HMULABMOVB,#64HMULABMOVRl,AMOVA,BMOVB,#0AHDIVABMOVLEDl,OAHMOVLED2,BMOVA,RlMOVB,#64HMULABMOVA,BMOVB,#0AHDIVABMOVLED3,AMOVLED4,BRETABOVEZERO:MOVB,#05H;最高位显示负号;显示个位;显示第一位小数;显示第二位小数MULABMULABMOVRl,AMOVA,BMOVB,#0AHDIVABMOVLEDl,AMOVLED2,BMOVA,RlMOVB,#64HMULABMOVA,BMOVB,#0AHDIVAB;显示第一位小数;显示第二位小数;显示子程序MOVLED3,AMOVLED4,BDISPLAY:RETSETBPO.2SETBPO.3SETBPO.4MOVDPTR,#TABMOVA,40HMOVCA,A+DPTR;查字形表MOVP2,A;P2作字形,PO口做字位CLRPO.5;开ACALLDELAYSETBPO.5;关MOVDPTR,#TABMOVA,41HMOVCA,A+DPTR;查字形表MOVP2,ASETBP2.7CLRPO.4ACALLDELAYSETBPO.4MOVDPTR,#TABMOVA,42HMOVCA,A+DPTR;查字形表MOVP2,AACALLDELAYSETBPO.3MOVDPTR,#TABMOVA,43HMOVCA,A+DPTRMOVP2,ACLRPO.2ACALLDELAYSETBPO.2RETDELAY:MOVR7,#01HDELAYl:MOVR6,#OFFHDELAY2:DJNZR6,DELAY2DJNZR7,DELAYlRETTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,40HRET电路原理图:第二章仿真:S93d*0lcEBI叫«LOJ-CQ>>11IP»nap.11*h*011»-1lh411D*F第三章调试第四章结论温度传感器AD590实现温度采集、摄氏温度显示,温度精度达到0.1度,测量围零下10度到零上100度电路由温度传感器(AD590),电压-电流转换电路,AD转换器,51单片机和显示模块组成。AD590属于电流输出型传感器,其输出的电流经电压-电流转换电路变为模拟电压信号,通过AD转换器变为数字量。此数字量输入单片机,单片机直接控制显示。显示模块由四个LED数码显示管和若干阻排组成。第五章心得体会与建议通过本次课程设计,我对AD590、AD0832的结构有了更全面的认识,也更明白了它们的工作原理,对我以后的学习和工作都有了很大的帮助。在做课程设计的过程中,我们遇到了一些问题,例如在数码管显示温度时,在第一位的后面多了一个小数点,通过查阅课本修改程序,实现了小数点的去除;再比如,数码管显示温度时,开始正常显示,但升温后在降温字形显示不正确,通过更换数码管,更换芯片,发现时接触不良,最后成功解决了这个问题。在解决这些问题的过程中,我受益良多。首先,补充了一部分知识;其次,我又一次体会到了合作的重要性;再次,学会了用多种方法解决问题等。参考文献1维波,MATLAB在电气工程中的应用,中国电力,20072胡汉才,单片机原理与其技术接口,清华大学,2007附录1:元器件清单元器件数量(个)AD5901AD08321742452OP071LED数码显示管4电阻若干电容若干二极管若干