ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:312.96KB ,
资源ID:10281606      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10281606.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的四位数字温度计设计.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的四位数字温度计设计.docx

1、基于单片机的四位数字温度计设计 微机原理课程设计姓 名: 学 号: 院 别: 机械与电子工程学院 班 级: 电气0801 专 业: 电气工程及其自动化 设计课题: 基于单片机的四位数字温度计设计 指导教师: 时 间: 2011.6.132011.6.24 目 录摘要.1一、 课程设计的目的.1二、 系统设计总体方案.11.设计思路.12.AT89C51单片计算机的组成原理.22.1组成框图及内部总体结构.22.2单片机各口及其负载能力、接口要求.3三、 硬件电路设计.53.1 温度检测和变送器.53.2 ADC0808.7四、电路部分.84.1显示器接口电路.84.2温度采集系统.84.3电路

2、总图.9五、软件设计和功能说明105.1系统主程序.105.2LED数码显示子程序.11六、PROTEUS仿真.126.1工作界面.126.2 仿真结果图.13七、总结14八、参考文献15附录15摘要现代测温应用中,温度计向数字化方向发展。传统的机遇物理方法的温度计功能单一,而数字温度计以其便携,检测精度高,功能多等优点应用的越来越广泛。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化

3、控制方向发展。本课程设计研究四位数字温度计的设计与实现,并采用Protues软件和Keil软件来对其进行仿真,通过电阻值的变化使相应电压发生改变,输出电压经A/D转换后,其值由AT89C51处理,最后将其显示在4个七段数码显示器上。随着技术的发展,一些环境比较恶劣的场合中也能觅得数字温度计的踪迹。在本文中,主要从功能组合,硬件组合,软件算法等几个方面探讨温度计的设计。数字温度计在现代测温应用方面具有诸多优势,值得进一步学习和研究。关键词 :单片机AT89C51、ADC0808芯片、模数转换、数码显示一、课程设计的目的1、通过单片机应用产品的设计与调试过程,巩固本课程所学理论知识,初步了解单片机

4、应用系统设计的方法。2、通过查阅手册和相关文献资料,培养学生独立分析和解决问题的能力。3、进一步熟悉单片机和常用接口电路,加深对专业知识和理论知识学习的认识和了解。4、进一步熟悉电子仪器的正确使用。5、加深对数模转换原理和应用,并了解ADC0808完成模数转换的原理,掌握ADC0808与AT89C51接口硬件电路的设计方法及编程方法。二、系统设计总体方案1.设计思路根据任务书要求,初步思路如下:温度计电路设计总体设计方框图如下图所示,本设计是测温电路,使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可

5、以将被测温度显示出来。温度是非电量模拟信号,数字显示温度就必须将这一非电量信号转换成电量(电压或电流),然后将模拟电信号经A/D转换器转换成数字信号,最后经译码显示器显示温度值。控制器采用单片机AT89C51,采集到的温度模拟信号05V用一个滑动变阻器分压实现,模拟信号数字化是通过ADC0808实现的,其主要功能和要求的实现是通过可编程芯片AT89C51单片机达到的,用4位LED数码管显示温度。2. AT89C51单片计算机的组成原理2.1组成框图及内部总体结构外时钟源 外部事件计数 中断 控制 并 行 口 串行通信 图2-1AT89C51单片机功能结构框图图2-1为AT89C51单片机功能结

6、构框图 AT89C51 芯片内部集成了 CPU、RAM、ROM、定时/计数器和I/O口等各功能部件,并由内部总线把这些不见连接在一起。AT89C51单片机内部包含以下一些功能部件:(1) 一个8位CPU;(2) 一个片内振荡器和时钟电路;(3) 4KB ROM(80C51有4KB掩膜ROM,87C51有4KB EPROM,80C31片内有无ROM);(4) 128B内RAM;(5) 可寻址64KB的外ROM和外RAM控制电路;(6) 两个16位定时/计数器;(7) 21个特许功能寄存器;(8) 4个8位并行I/O口,共32条可编程I/O端线;(9) 一个可编程全双工串行口;(10) 5个中断源

7、,可设置成2个优先级。2.2单片机各口及其负载能力、接口要求80C51共有4个8位并行I/O端口,共32个引脚 (1)P0口8位双向I/O口。 在不并行扩展外存储器(包括并行扩展I/O口)时, P0口可用作双向I/O口。 在并行扩展外存储器(包括并行扩展I/O口)时, P0口可用于分时传送低8位地址(地址总线)和8位数据信号(数据总线)。位结构如图2-4所示。P0口能驱动8个LSTTL门。 图2-2 P0口位结构(2) P1口8位准双向I/O口(“准双向”是指该口内部有固定的上拉电阻)。位结构如图2-5所示。 P1口能驱动为4个LSTTL门。图 2-3 P1口位结构 (3) P2口8位准双向I

8、/O口。在不并行扩展外存储器(包括并行扩展I/O口)时, P2口可用作双向I/O口。在并行扩展外存储器(包括并行扩展I/O口)时, P2口可用于传送高8位地址(属地址总线) 。P2口能驱动4个LSTTL门。P2口的位结构如图2-6所示,引脚上拉电阻同P1口。在结构上,P2口比P1口多一个输出控制部分。图 2-4 P2口位结构 (4) P3口8位准双向I/O口。可作一般I/O口用,同时P3口每一引脚还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。P3口驱动能力为4个LSTTL门。 图 2-5 P3口位结构上述4个I/O口,各有各的用途。 在不并行扩展外存储器(包括并行扩展I/O口)

9、时, 4个I/O口都可作为双向I/O口用。在并行扩展外存储器(包括并行扩展I/O口)时, P0口专用于分时传送低8位地址信号和8位数据信号,P2口专用于传送高8位地址信号。P3口根据需要常用于第二功能,真正可提供给用户使用的I/O口是P1口和一部分未用作第二功能的P3口端线。三、 硬件电路设计3.1 温度检测和变送器(1)热敏电阻温度转换原理热敏电阻是近年来发展起来的一种新型半导体感温元件,由于它具有灵敏度高、体积小、重量轻、热惯性小、寿命长以及价格便宜等优点,因此应用非常广泛。热敏电阻与普通热电阻不同,它具有负的电阻温度特性,当温度升高时,电阻值下降,其特性曲线如图3-1所示。 图3-1 热

10、敏电阻特性曲线热敏电阻的阻值-温度特性曲线是一条指数曲线,非线性度较大,因此,在使用时要进行线性化处理。线性化处理虽然能改善热敏电阻的特性曲线,但比较复杂。为此,在要求不高的一般应用中,常常作出在一定的温度范围内温度与阻值成线性关系的假定,以简化计算。使用热敏电阻是为了感知温度,给热敏电阻通以恒定电流,电阻两端就可测到一个电压,然后通过下面公式求得温度: 被测温度;与热敏特性有关的温度参数;热敏电阻有关的系数;热敏电阻两端的电压。根据这一公式,如能测得热敏电阻两端的电压,再知道参数和参数,则可计算出热敏电阻的环境温度,也就是被测得温度。这样,就把电阻随温度的变化关系转化为电压随温度的变化关系了

11、。数字式电阻温度计设计工作的主要内容,就是把热敏电阻两端电压值经A/D转换变成数字量,然后通过软件方法计算出温度值,再进行显示等处理。所以采取ADC0809芯片来读取电压值。3.2 ADC0808ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。内部结构ADC0808是CMOS单片型逐次逼近式AD转换器,它有8路模拟开

12、关、地址锁存与译码器、比较器、8位开关树型A/D转换器。 引脚功能(外部特性)ADC0808芯片有28条引脚,采用双列直插式封装,如右图所示。各引脚功能如下: 15和2628(IN0IN7):8路模拟量输入端。 6(START): AD转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 7(EOC): AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平(转换期间一直为低电平)。 8、14、15和1721:8位数字量输出端。9(OE):数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能打开输出三

13、态门,输出数字量。 10(CLK):时钟脉冲输入端。要求时钟频率不高于640KHZ。 11(Vcc):主电源输入端。 12(VREF(+)和16(VREF(-):参考电压输入端 13(GND):地。 22(ALE):地址锁存允许信号,输入,高电平有效。2325(ADDA、ADDB、ADDC):3位地址输入线,用于选通8路模拟输入中的一路四、电路部分4.1显示器接口电路4.2温度采集系统4.3电路总图五、软件设计和功能说明5.1系统主程序在主程序中,系统上电自动复位以后首先设置堆栈,然后启动ADC0808,开始转换测温电路输入的电信号,待数据转换结束后读入到累加器A,然后进行十进制数据转换调整,

14、输出给显示电路。主程序流程图如图3.1所示。主程序流程图 是否 人为读取程序流程图5.2LED数码显示子程序十进制转换调整后的数据送到寄存器R5、R4中,然后通过P1口把数据输出给D4、D3、D2、D1四个数码显示器中,从而最终把测得的温度显示出来。显示子程序流程图如图3.3所示。显示子程序流程图六、 PROTEUS仿真6.1工作界面 Proteus ISIS的工作界面是一种标准的Windows界面,如图4.2所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。图4.2 Proteus ISI

15、S的工作界面6.2 仿真结果图七、总结忙碌的的日子总是觉得短暂,充实紧张的两周单片机课程设计转眼就要结束了,我喜欢这种节奏的学习生活。在这短暂而又充实的两周课程设计的时间里,让我获益良多,受益匪浅,翁老师耐心细致的指导讲解答疑,个人积极紧张的筹备思考操作,使这两周的日子变得忙碌而又充实美好。课程设计的第一天,面对着翁老师布置下来的设计课题,有些茫然而不知所措,不知该如何着手开始。心想,怎么这个单片机的课程设计会如此的难,如此的不好下手,更不知道该怎么办才好。但发现其他同学和我的感觉竟然一样,同样的茫然同样的无助,顿时心里释怀不少。于是对自己说,别人也不会,不急,慢慢来,总会找到解决的办法的。离

16、开教室回到宿舍,直接去图书馆借来了相关的资料拿回来阅读参考。接下来的几天,渐渐的开始有了一些头绪,明白了该从何处着手,心中有了课程设计的初步框图。接下来的时间里,查阅了不少的相关资料,随着理解的加深,设计程序及流程渐渐的变得细致,确定了设计要求及操作实施步骤,随着设计中问题的逐个解决,操作开始变得简单有趣,我开始乐于做好课程设计中的各部分环节要求,乐于和同组的同学相互探讨争论,解决我们这个温度检测设计,单片机课程设计中的难点,并取得共同的进步。按照这种方式与解决办法,解决了不少设计中的问题。通过这两周的微机原理课程设计,使我对单片机知识内容有了进一步的扩展和深入的理解,书本上的知识,只有通过自

17、己动手去操作去运用才会变得实际有用,这才是真正的学习,感谢翁老师给了我们这么一个学习的好机会。我更懂得了个人努力的重要性,这让我感觉充实自信,这种满足感与成就感真是无与伦比。明白了什么叫做团队,群体的力量,一起探讨,一起争论,一起协作着解决问题。 八、参考文献1 张迎新. 单片微型计算机原理、应用及接口技术.国防工业出版社2 张毅刚. 单片机原理与应用设计.电子工业出版社3 周航慈. 单片机程序设计基础.北京航空航天大学出社.4陈明荧. 8051单片机课程设计实训教材.清华大学出版社5胡汉才. 单片机原理及其接口技术.清华大学出版社6 何立民. 单片机高级教程.北京航空航天大学出版社 7 肖来

18、胜. 单片机技术实用教程.华中科技大学出版社附录 程序清单LED_0 EQU 30HLED_1 EQU 31HLED_2 EQU 32HADC EQU 35HTCNTA EQU 36HTCNTB EQU 37HH_TEMP EQU 38H ;温度上限L_TEMP EQU 39H ;温度下限FLAG BIT 00HH_ALM BIT P3.0L_ALM BIT P3.1SOUND BIT P3.7CLOCK BIT P2.4ST BIT P2.5EOC BIT P2.6OE BIT P2.7 ORG 00H SJMP START ORG 0BH LJMP INT_T0 ORG 1BH LJMP

19、INT_T1 START: MOV LED_0,#00H MOV LED_1,#00H MOV LED_2,#00H MOV DPTR,#TABLE MOV H_TEMP,#200 MOV L_TEMP,#00 MOV TMOD,#12H MOV TH0,#245 MOV TL0,#0 MOV TH1,#252 MOV TL1,#0 MOV IE,#8aH CLR C SETB TR0 ;为ADC0808提供时钟WAIT: SETB H_ALM SETB L_ALM CLR ST SETB ST CLR ST ;启动转换 JNB EOC,$ SETB OE MOV ADC,P1 ;读取AD转换

20、结果 CLR OE MOV A,ADC SUBB A,#00 ;判断是否低于下限 JC LALM MOV A,H_TEMP MOV R0,ADC SUBB A,R0 ;判断是否高于上限 JC HALM CLR TR1 LJMP PROCLALM: ;低温报警 CLR L_ALM SETB TR1 CLR FLAG LJMP PROCHALM: ;高温报警 CLR H_ALM SETB TR1 SETB FLAG LJMP PROCPROC: MOV A,ADC ;数值转换 MOV B,#100 DIV AB MOV LED_2,A MOV A,B MOV B,#10 DIV AB MOV LE

21、D_1,A MOV LED_0,B LCALL DISP SJMP WAITINT_T0: CPL CLOCK ;提供ADC0808时钟 RETIINT_T1: MOV TH1,#252 MOV TL1,#0 CPL SOUND INC TCNTA MOV A,TCNTA JB FLAG,I1 ;判断是高温警报还是低温警报 CJNE A,#30,RETUNE ;低温警报声 SJMP I2 I1: CJNE A,#20,RETUNE ;高温警报声 I2: MOV TCNTA,#0 INC TCNTB MOV A,TCNTB CJNE A,#25,RETUNE MOV TCNTA,#0 MOV T

22、CNTB,#0 LCALL DELAY2RETUNE: RETI DISP: MOV A,LED_0 ;数码显示子程序 MOVC A,A+DPTR CLR P2.3 MOV P0,A LCALL DELAY SETB P2.3 MOV A,LED_1 MOVC A,A+DPTR CLR P2.2 MOV P0,A LCALL DELAY SETB P2.2 MOV A,LED_2 MOVC A,A+DPTR CLR P2.1 MOV P0,A LCALL DELAY SETB P2.1 CLR P2.0 MOV P0,#3FH LCALL DELAY SETB P2.0 RET DELAY: MOV R6,#10D1: MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 RETDELAY2: MOV R5,#20D2: MOV R6,#20D3: MOV R7,#250 DJNZ R7,$ DJNZ R6,D3 DJNZ R5,D2 RETTABLE: DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FH END

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1