基于单片机的数字温度计方案设计书09129.docx
《基于单片机的数字温度计方案设计书09129.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字温度计方案设计书09129.docx(15页珍藏版)》请在冰豆网上搜索。
![基于单片机的数字温度计方案设计书09129.docx](https://file1.bdocx.com/fileroot1/2023-1/8/5ddafe99-c4f1-4197-8fe3-860356273e45/5ddafe99-c4f1-4197-8fe3-860356273e451.gif)
基于单片机的数字温度计方案设计书09129
1绪论
1.1设计背景
环境温度作为最基本的环境参数之一,与人们的生活、工农业生产以及科学研究密切相关,研制温度测量装置具有很高的现实意义和应用价值。
常用的温度计如水银温度计虽然价格低廉,但随着人们对测量精度要求的不断提高使其在很多方面难以满足人们的需求。
数字温度计作为一种高精度和高灵敏度的温度测量装置,在许多领域都得到了越来越广泛的应用。
1.2设计要求
利用单片机80C51与串行A/D转换芯片ADC0831设计一个数字温度计,能够测量0~150°C的温度值,测量结果用4位数码显示。
温度通过温度传感器TC1测量后转换为电信号,再经放大器输出送至ADC0831进行A/D转换。
本设计用80C51作为主控芯片,采用ADC0831作为电压信号转换器,采用TCK作为实时温度信号采集器,输入电压值范围为0~5V。
本设计电路结构简单,成本相对而言比较低,温度测量范围为0~150°C,精确也比较高,其精度为1°C。
1.3设计思路
温度传感器TC1输出信号经差动放大到0~5V,放大器输出送ADC0831进行A/D转换,A/D转换结果送至单片机进行外理,最后将所测的温度在LED数码管上显示。
2系统硬件设计
2.1设计总框图
设计总框图见图2.1:
图2.1设计总框图
2.2各模块功能
2.2.1ADC0831功能说明
(1)ADC0831引脚图见图2.2:
图2.2ADC0831引脚图
(2)ADC0831各引脚定义与功能如下:
CS:
片选信号输入端。
VIN(+)VIN(-):
差分输入端。
DO:
A/D转换数据输入端。
VREF:
参考电压输入端,接+5V。
CLOCK:
时钟信号输入端,决定A/D转换速率,时钟信号频率范围为50~800KHZ。
2.2.280C51单片机的信号引脚说明及其功能
(1)80C51的信号引脚
80C51的引脚排列请参见图2.3。
图2.380C51引脚
①信号引脚介绍
P0.0~P0.7:
P0口8位双向口线。
P1.0~P1.7:
P1口8位双向口线。
P2.0~P2.7:
P2口8位双向口线。
P3.0~P3.7:
P3口8位双向口线。
:
访问程序存储控制信号。
当
信号为低电平时,对ROM的读操作限定在外部程序存储器;而当
信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。
RST:
复位信号。
当输入的复位信号延续2个机器周期以上高电平即为有效,用以完成单片机的复位初始化操作。
XTAL1和XTAL2:
外接晶体引线端。
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
②P3口的第二功能
P3口的8条口线都定义有第二功能,详见表2.1。
表2.1P3口的第二功能
引脚
第二功能
信号名称
P3.0
RXD
串行数据接收
P3.1
TXD
串行数据发送
P3.2
外部中断0申请
P3.3
外部中断1申请
P3.4
T0
定时器/计数器0的外部输入
P3.5
T1
定时器/计数器1的外部输入
P3.6
外部RAM写选通
P3.7
外部RAM读选通
(2)分别介绍下P0、P1、P2、P3口
①P0口
P0口的口线逻辑电路如图2.4所示。
图2.4P0口某位结构
②P1口
P1口的口线逻辑电路见图2.5。
图2.5P1口某位结构
③P2口
P2口的口线逻辑电路见图2.6。
图2.6P2口某位结构图
④P3口
P3口的口线逻辑电路见图2.7。
图2.7P3口某位结构
(3)时钟电路与复位电路
①时钟电路
时钟电路用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各地信号之间的相互关系。
单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。
单片机的时钟电路,如图2.8所示。
图2.8时钟振荡电路
一般电容C1,C2取30pF左右,晶体的振荡频率范围是1.2MHz~12MHz。
晶体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。
MCS-51在通常应用情况下,使用振荡频率为的6MHz或12MHz。
②单片机的复位电路
单片机复位的条件是:
必须使RST/VPD或RST引脚(9)加上持续二个机器周期(即24个振荡周期)的高电平。
单片机常见的复位电路如图2.9(a)(b)所示。
(a)上电复位电路(b)按键复位电路
图2.9常见的复位电路
图2.9(a)为上电复位电路,它是得用电容充电来实现的。
在接电瞬间,RST端的电位与VCC的相同,随着充电电流的减小,RST的电位逐渐下降。
图2.9(b)为按键复位电路。
该电路除具有上电复位功能外,若要复位,只需按图2.9(b)中的RESET键,此时电源VCC经电阻R1、R2分压,在RST端产生一个复位高电平。
2.2.3四位数码显示管
(1)四位数码显示管引脚图如图2.10。
图2.10四位数码显示管引脚图
(2)四位七段共阳数码显示器功能介绍:
图中引脚1、2、3、4分别为数码显示选择位,顺序从左至右,高电平有效。
引脚A、B、C、D、E、F、G表示的是七段字符,控制数码管显示,低电平有效。
引脚DP表示的是小数点,低电平有效。
2.2.4温度测量电路
(1)温度测量电路如图2.11。
图2.11温度测量电路
(2)温度测量电路的功能介绍:
温度测量电路将采集到的温度通过温度传感器测量,运算放大得到0~5V的电压信号。
经过模/数转换再由单片机分析后即可得到实际温度。
2.2.4A/D转换电路
(1)A/D转换电路如图2.12。
图2.12A/D转换电路
(2)A/D转换电路的功能介绍:
A/D转换将模拟量变为数字量,本例为八位A/D转换芯片,其分辨率为1/28×5=0.01953,所以测量误差小于1°C。
另外选用串行的转换器是为了使电路更简单,在性能上也符合要求。
2.3设计总电路图
总电路图如图2.13。
图2.13总电路图
3系统软件设计
3.1程序流程图
3.1.1程序总流程图
如图3.1所示。
图3.1程序总流程图
3.1.2A/D转换子程序流程图
如图3.2所示。
图3.2A/D转换子程序流程图
3.1.3数码显示子程序流程图
如图3.3所示。
图3.3显示子程序流程图
3.2源程序
CSBITP1.7
CLKBITP1.0
DOBITP1.1
AD_TMPEQU30H。
AD_TMP_1EQU31H。
AD_TMP_2EQU32H。
AD_TMP_3EQU33H。
AD_TMP1EQU34H。
ORG0000H
LJMPMAIN
ORG0030H
MAIN:
CLRP2.0
START:
LCALLAD_CONV。
LCALLDISPLAY。
LJMPSTART
AD_CONV:
SETBCS
CLRCLK
NOP
NOP
CLRCS
NOP
NOP
SETBCLK
NOP
NOP
CLRCLK
NOP
NOP
SETBCLK
NOP
NOP
MOVR0,#08H
AD_READ:
CLRCLK
MOVC,DO
RLCA
SETBCLK
NOP
NOP
DJNZR0,AD_READ
SETBCS
MOVAD_TMP,A
RET
DISPLAY:
MOVA,AD_TMP
MOVDPTR,#TAB1
MOVCA,@A+DPTR。
CJNEA,#0,S1
SJMPS4
S1:
JNCS4
SETBP2.0
CLRP0.0
CLRP0.1
CLRP0.2
CLRP0.4
CLRP0.5
SETBP0.6
S4:
MOVB,#100
DIVAB
MOVAD_TMP_1,A
MOVA,B
MOVB,#10
DIVAB
MOVAD_TMP_2,A
MOVAD_TMP_3,B
MOVDPTR,#TAB
MOVA,AD_TMP_1
MOVCA,@A+DPTR
MOVP0,A
SETBP2.1
LCALLDLY
CLRP2.1
MOVA,AD_TMP_2
MOVCA,@A+DPTR
MOVP0,A
SETBP2.2
LCALLDLY
CLRP2.2
MOVA,AD_TMP_3
MOVCA,@A+DPTR
MOVP0,A
SETBP2.3
LCALLDLY
CLRP2.3
RET
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
TAB1:
DB0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
DB21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38
DB39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56
DB57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74
DB75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92
DB93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110
DB111,112,113,114,115,116,117,118,119,120,121,122,123,124,125
DB126,127,128,129,130,131,132,133,134,135,136,137,138,139,140
DB141,142,143,144,145,146,147,148,149,150
DLY:
MOVR4,#2
D1:
MOVR3,#248
DJNZR3,$
DJNZR4,D1
RET
END
4系统仿真与调试
4.1电路仿真
采用proteus仿真软件进行仿真,在仿真之前按照预先设计好的电路图进行连线,以及布局,最后确定线路已连接好,再运行开始仿真。
数字温度计的仿真结果如图4.1所示。
图4.1仿真结果
4.2系统调试
(1)点击全速执行按钮。
(2)改变温度传感器的设置值,可以观察到ADC0831输出电平值的改变,从而可以确定转换是否正常,并且可以观察到LED显示的数据随着变化。
(3)如果LED显示值与传感器的设置值不一致,则可对通过改变电阻的值来改变运算放大器的放大倍数,直到显示值与预设值一致为止。
改变传感器预设值,重复上述过程。
5总结与展望
5.1总结
通过单片机课程设计,我对单片机的理论学习和实践操作有了更深入的理解,明白只有将理论同实际联系起来,才能真正地学好一门课程。
而且,也只有当我们将所学知识付诸实际行动时,才能真正学以致用和不断创新。
虽然这次课程设计完成得比较顺畅,但过程中还是遇到了一些问题。
比如,在设计硬件电路时不知道运算放大器应该如何正确使用,虽然以前在模拟电路的课程学习中对它有所了解,但对于它的放大原理却不是很清楚。
后来通过翻阅其他的资料,终于对它的原理和应用有了更深的认识,也为电路的顺利完成打下了基础。
其次就是编程,程序用的是汇编语言并且采用了模块化编程的思想,程序主要分为三个部分,分别是主程序部分、A/D转换部分和显示部分。
这样做使得本来很难读懂的汇编程序更加具有可读性,同时也简化了编程的过程。
总的来说这次课程设计收获还是挺大的。
不仅锻炼了自己动手的能力,也真正体会了“实践出真知”的道理。
而单片机这样一门实践性很强的学科更是强调了对动手能力和创新能力的培养。
5.2展望
单片机从诞生到现在对计算机的发展起了很大的推进作用。
它已经渗透到人们生活的每一个角落。
与通用计算机相比,单片机主要应用于实时控制,在家用电器、智能玩具、机器人、仪表仪器、工业控制以及通信产品中扮演着关键角色。
其发展直接影响着人们的生活、工厂的生产,甚至国防、军事、通信等许多方面。
数字温度计作为一种仪表,在人们的生活和生产中得到了广泛的应用和发展,我相信随着单片机以及嵌入式系统的飞速发展,数字温度计将愈来愈朝着智能化、高精度化、高可靠性等方面发展。
参考文献
[1]张迎新,等.单片机初级教程[M].北京:
北京航空航天大学出版社,2000.
[2]王幸之,等.AT89系列单片机原理与接口技术[M].北京:
北京航空航天大学出版社,2004.
[3]何立民.单片机高级教程[M].北京:
北京航空航天大学出版社,2000.
[4]AtmelCorporation.MicrocontrollerDataBook.2004.
[5]李维偍,郭强.液晶显示应用技术[M].北京:
电子工业出版社,2000.
致谢
由于对单片机的接触时间还不是很长,各个方面经验也不足,本次课程设计的顺利完成离不开刘伟春老师的悉心指导。
从课题的选题到课题的开发与研究,再到本论文的撰写到定稿的每一步工作都倾注着老师的心血和汗水,同时得到同学们相助,并提供了大量的资料。
在此,对老师和同学们的帮助表示忠心的感谢。