数字温度计单片机课设Word格式.docx
- 文档编号:22309027
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:34
- 大小:1.50MB
数字温度计单片机课设Word格式.docx
《数字温度计单片机课设Word格式.docx》由会员分享,可在线阅读,更多相关《数字温度计单片机课设Word格式.docx(34页珍藏版)》请在冰豆网上搜索。
指导教师:
王健强
一、课程设计题目:
数字温度计
选用温度传感器AD590实现温度采集、摄氏温度显示,温度精度达到度,测量范围零下10度到零上100度。
二、课程设计要求
1.根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整;
2.查阅有关参考资料和手册,并能正确选择有关元器件和参数,对设计方案进行仿真;
3.完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果;
4.进实验室进行编程和电路调试,边调试边修正方案;
5.撰写课程设计报告——最终的电路图、调试过程中遇到的问题和解决问题的方法。
三、进度安排
1.时间安排
序号
内容
学时安排(天)
1
方案论证和系统设计
2
完成电路仿真,写预习报告
3
电路调试
4
写设计总结报告与答辩
合计
5
设计调试地点:
电气楼406
2.执行要求
课程设计共多个选题,每组不得超过2人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型)。
严禁抄袭,严禁两篇设计报告雷同。
摘要
随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。
本文主要介绍了一个基于STC89C52单片机的测温系统,详细描述了利用温度传感器AD590开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示。
它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。
AD590、ADC0832与STC89C52结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。
关键词:
单片机;
温度检测;
温度传感器;
数字显示;
模数转换
Abstract
Withtheprogressanddevelopmentofthetimes,theMicrocontrollertechnologyhasspreadtothewaywelive,work,researchinvariousfields,hasbecomearelativelymaturetechnology,thispaperdescribesaTemperatureMeasurementSystemBasedonSTC89C52detaileddescriptionoftheuseoftemperaturesensorAD590temperaturemeasurementsystemdevelopmentprocess,focusingonthehardwareconnectionofthesensorundertheSCM,softwareprogramming,aswellasthemodulesystemprocessescarriedoutadetailedanalysisofthevariouspartsofthecircuitareintroducedonebyone,thesystemiseasytoachieveacquisitionanddisplayoftemperature.
itisveryconvenienttouse,withhighprecision,widerange,highsensitivity,smallsize,lowpowerconsumption,suitableinourdailylifeandwork,thetemperaturemeasurementinagriculturalproduction,canalsobeusedasatemperaturetheprocessingmoduleisembeddedintheothersystems,astheauxiliaryexpansionofotherprimarysystem.AD590,ADC0832andSTC89C52mostsimpletemperaturedetectionsystem,thesystemissimple,stronganti-jammingcapability,suitableforharshenvironmentsspottemperaturemeasurement,thereisawiderangeofapplicationprospects.
Keywords:
Microcontroller;
temperaturedetection;
temperaturesensor;
digitaldisplay;
analog-to-digitalconversion
1绪论·
·
7
研究的目的及意义
主要研究方向和要求
2方案设计·
9
基本元器件管脚图与功能表
设计思路和原理
方案设计和选择
3基于Proteus仿真设计·
17
仿真电路设计
仿真总结
仿真结果与分析
4汇编编程与元件的安装及调试·
19
汇编语言简介
温度计实验程序
实物显示效果
5基于Protel99se设计PCB印制电路·
26
ProtelPCB图绘制
6课程设计总结·
27
课程设计过程中遇到的问题及解决途径
课程设计体会与心得
7参考文献·
28
8附录·
29
附录1:
元器件清单
附录2:
wave6000简介
第一章绪论
研究目的及意义
随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。
现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确而又迅速的获得这些参数就需要受制于现代信息基础的发展水平。
在三大信息信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)中,传感器属于信息技术的前沿尖端产品,尤其是温度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领域,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。
测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段:
①传统的分立式温度传感器②模拟集成温度传感器③智能集成温度传感器。
目前的智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的,它是微电子技术、计算机技术和自动测试技术(ATE)的结晶,特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU)。
社会的发展使人们对传感器的要求也越来越高,现在的温度传感器正在基于单片机的基础上从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展,并朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。
本文将介绍智能集成温度传感器AD590的结构特征及控制方法,并对以此传感器,STC89C52单片机为控制器构成的数字温度测量装置的工作原理及程序设计作了详细的介绍。
与传统的温度计相比,其具有读数方便,测温范围广,测温准确,输出温度采用数字显示,主要用于对测温要求比较准确的场所,或科研实验室使用。
该设计控制器使用STC公司的STC89C52单片机,测温传感器使用AD公司AD590,用数码管来实现温度显示.
主要研究方向和要求
方向:
温度采集和转换技术研究+数字电路技术研究+模拟放大显示技术研究
要求:
1.用AD590与电阻组成的温度采集电路产生变化的电压信号;
2.ADC0832和运算放大器组成模数转换电路产生0-255数字信号;
3.最后经过单片机算法处理输出摄氏温度显示,温度精度达到度,测量范围零下10度到零上100度;
4.器件:
功率集成电路+分立元件;
5.仿真设计,程序编写与硬件调试。
第二章系统方案设计
2.1基本元器件管脚图与功能表
(1)温度传感器AD590
<
1>
AD590是美国模拟器件公司生产的单片集成两端感温电流传感器,是一种已经IC化的温度感测器,它会将温度转换为电流。
其规格如下:
a、度每增加1℃,它会增加1μA输出电流
b、可测量范围-55℃至150℃
c、供电电压范围+4V至+30V,可以承受44V正向电压和20V反向电压,因而器件即使反接也不会被损坏;
2>
AD590管脚图及元件符号
3>
AD590工作原理
AD590相当于一个温度控制的恒流源,输出电流大小只与温度有关,且与温度成正比。
只需一个精密电阻,就可以将电流(温度)信号转化为电压信号,总的灵敏度系数通过该电阻设定。
AD590的温度系数是1μA/K,即温度每增加1K,它会增加1μA输出电流。
其输出电流是以绝对温度零度-273℃为基准,每增加1℃,它会增加1μA输出电流,因此0℃到100℃时AD590输出电流为273μA到373μA。
4>
电流-电压转换电路
电压-电流转换电路
图中,AD590输出端输出电流,经过10K的电阻,转换为电压值。
OP07为一射极跟随器,A=1,用于提高输入阻抗。
两个二极管用于隔离干扰。
电流-电压转换公式如下:
AD590的灵敏度:
经过10K电阻后:
具体温度-电压值对应如下表
摄氏温度/℃
AD590电流/μA
经10KΩ电压/V
10
20
30
40
50
60
100
(2)模拟转数字ADC0832
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
通过DI数据输入端,可以轻易的实现通道功能的选择。
片选使能,低电平芯片使能,CH0模拟输入通道0,CH1模拟输入通道1,GND芯片参考0电位(地),DI数据信号输入,选择通道控制,DO数据信号输出,转换数据输出,CLK芯片时钟输入,Vcc/REF电源输入及参考电压输入。
输入格式
配置位
选择通道号
CH0
CH1
差分
L
+
-
H
单端
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。
当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能,当此2位数据为“1”、“0”时,只对CH0进行单通道转换。
当2位数据为“1”、“1”时,只对CH1进行单通道转换。
到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。
从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。
直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。
也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。
随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。
本次实验中我们使用CH1通道输入模拟信号,因此实验中控制ADC0832的时序图如下:
(3)单片机STC89C52
STC89C52管脚图:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
RXD(串行输入口)
TXD(串行输出口)
/INT0(外部中断0)
/INT1(外部中断1)
T0(记时器0外部输入)
T1(记时器1外部输入)
/WR(外部数据存储器写选通)
/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
(4)八双向总线发送器\接收器(3态)74HC245
74HC245总线驱动器,典型的TTL型三态缓冲门电路,其作用为,信号功率放大。
74HC245管脚图:
74HC245引脚定义:
第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。
第2~9脚“A”信号输入输出端,A1=B1、、、、、、A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。
如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。
第11~18脚“B”信号输入输出端,功能与“A”端一样。
第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。
第10脚GND,电源地;
第20脚VCC,电源正极。
实验过程中我们使用的为从“A”到“B”传输数据。
(5)数码管
LED数码管中各段发光二极管的伏安特性和普通二极管类似,只是正向压降较大,正向电阻也较大。
在一定范围内,其正向电流与发光亮度成正比。
由于常规的数码管起辉电流只有1~2mA,最大极限电流也只有10~30mA,所以它的输入端在5V电源或高于TTL高电平的电路信号相接时,一定要串加限流电阻,以免损坏器件。
1.基本设计思路
(1)本实验要求温度计的范围-10℃~100℃,并且显示一位小数,所以我们需要四个LED,前两个显示温度的整数部分,第三个显示小数部分,最后一个显示符号。
根据给出的元件,我们用AD590做温度传感器,可以把绝对温度转换成电压电流信号。
(2)把得到的电压电流信号输入ADC0832以后得到数字信号,即为要采样接收的数据,根据要求,所测温度为-10℃~100℃,则温度每变化一摄氏度输出电压变化10mv,又根据0度时输出电压为得出电压的变化范围是。
0度采集到的数据为:
*255/5=139
100度采集到的数据为:
*255/5=190
(3)那么实际的温度计算公式为:
(采集到的数据-139)*5*100/255。
温度为正时:
高八位放在B中,除以10得到的商为十位数,余数为各位;
低八位放在A中,除以10,商为第一位小数。
温度为负值:
高八位的数小于10放在个位数字,十位数显示符号,得到的低八位放在A中,,除以10,商为第一位小数。
由此就得到了所要显示的温度。
(4)第一个LED的字形地址偏移量放在20H,将20H送入;
第二个LED的字形地址偏移量放在21H,将21H送入;
第三个LED的字形地址偏移量放在22H,将22H送入;
第四个LED的字形地址偏移量放在23H,将23H送入。
电路板连接如下图:
由此得到的整体框架图为:
(1)温度采集处理模块
(2)数据算法处理输出模块
第三章基于Proteus仿真设计
仿真总结
用Proteus仿真模拟电路的效果总体来说是非常不错的,但也存在一些软件的不足之处,比如说没有AD590这个器件,需要用一个滑动变阻器来代替。
相比之前自己做的仿真,我觉得本次实验让我最大的收获就是学会了编写输入芯片程序可以在仿真上大概查到程序的一些显示错误。
不用自己每天占着学院的电脑苦苦尝试。
本次实验仿真的制作还是很顺利的,调试的过程最令人痛苦。
(1)零下温度显示
(2)零上温度显示
第四章汇编编程与元件的安装及调试
汇编语言介绍
本次设计软件采用汇编语言进行编程。
汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
汇编语言,作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。
高级的汇编器如MASM,TASM等等为我们写汇编程序提供了很多类似于高级语言的特征,比如结构化、抽象等。
在这样的环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令,已经类同于高级语言。
现在的汇编环境已经如此高级,即使全部用汇编语言来编写windows的应用程序也是可行的,但这不是汇编语言的长处。
汇编语言的长处在于编写高效且需要对机器硬件精确控制的程序。
汇编语言直接同计算机的底层软件甚至硬件进行交互,它具有如下一些优点:
(1)能够直接访问与硬件相关的存储器或I/O端口;
(2)能够不受编译器的限制,对生成的二进制代码进行完全的控制;
(3)能够对关键代码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁;
(4)能够根据特定的应用对代码做最佳的优化,提高运行速度;
(5)能够最大限度地发挥硬件的功能。
同时还应该认识到,汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,因此不可避免地存在一些缺点:
(1)编写的代码非常难懂,不好维护;
(2)很容易产生bug,难于调试;
(3)只能针对特定的体系结构和处理器进行优化。
温度计实验程序:
AD0832DIBIT;
伪指令
AD0832DOBIT
AD0832CLKBIT
AD0832CSBIT
LED1EQU20H;
第一个LED的字形地址偏移量放在20H
LED2EQU21H;
第二个LED的字形地址偏移量放在21H
LED3EQU22H;
第三个LED的字形地址偏移量放在22H
LED4EQU23H;
第四个LED的字形地址偏移量放在23H
ORG0000H
LJMPMAIN
ORG0030H
MAIN:
MOVSP,#6FH
MOVR4,#5;
显示五次程序
H:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 温度计 单片机