基于TLC549的温度采集系统的设计报告.docx
《基于TLC549的温度采集系统的设计报告.docx》由会员分享,可在线阅读,更多相关《基于TLC549的温度采集系统的设计报告.docx(22页珍藏版)》请在冰豆网上搜索。
![基于TLC549的温度采集系统的设计报告.docx](https://file1.bdocx.com/fileroot1/2022-11/27/2fbebc32-390d-4b3f-b9be-7acc7fb4402e/2fbebc32-390d-4b3f-b9be-7acc7fb4402e1.gif)
基于TLC549的温度采集系统的设计报告
基于TLC549的温度采集系统的设计
课程设计说明书
系(部):
信息工程系
班级:
自动化082
学生姓名:
张青蒙学号080819623
指导教师:
韩耀振
时间:
2010年12月13日到2010年12月24日
课程设计任务书
题目基于TLC549的温度采集系统的设计
系(部)信息工程系
专业自动化
班级自动化082
学生姓名张青蒙
学号080819623
12月13日至12月24日共2周
指导教师(签字)
系主任(签字)
年月日
一、设计内容及要求
利用温度传感器AD590采集温度信号,并调理放大采集到的电压信号,用TLC549进行电压转换,实现温度采集,并将采集温度显示出来(LED动态显示)。
二、设计原始资料
单片机原理及应用教程范立南2006年1月
单片机原理及应用教程刘瑞新2003年07月
三、设计完成后提交的文件和图表
1.计算说明书部分
1)方案论证报告打印版或手写版
2)程序流程图
3)具体程序
2.图纸部分:
具体电路原理图打印版
四、进程安排
教学内容学时地点
资料查阅与学习讨论2天现代电子技术实验室
分散设计5天现代电子技术实验室
编写报告2天现代电子技术实验室
成果验收1天现代电子技术实验室
五、主要参考资料
《电子设计自动化技术基础》马建国、孟宪元编清华大学出版2004年4月
《实用电子系统设计基础》姜威2008年1月
《单片机系统的PROTEUS设计与仿真》张靖武2007年4月
指导老师成绩
答辩小组成绩
总成绩
目录
摘要8
Abstract9
第一章系统功能原理及硬件介绍10
1.1AT89C51单片机介绍10
1.2TLC549介绍12
l.2.1TLC549的主要特点12
1.2.2TLC549芯片的工作原理12
1.3AD590的介绍13
第二章理论分析15
2.1各模块接线及原理说明15
2.1.1AD590采集温度信号模块15
2.1.2TLC549A/D(模数)转换模块15
2.1.3静态数码管显示模块15
2.1.4蜂鸣器超量程报警模块16
2.2最小分度、量程及报警温度的算法16
2.2.1最小分度、量程的算法16
2.2.2报警温度的算法16
第三章各模块电路设计16
3.1温度测量采集及加热电路模块16
3.2串行A/D(模数)转换模块18
3.3静态数码管显示模块18
3.4蜂鸣器超量程报警模块19
第四章电路与程序设计20
4.1程序流程图20
4.2程序清单21
4.3PROTEUS制作的电路图25
总结26
参考文献27
摘要
温度是工业生产和自动控制中最常见的工艺参数之一。
过去温度检测系统设计中,大多采用模拟技术进行设计,这样就不可避免地遇到诸如传感器外围电路复杂及抗干扰能力差等问题;而其中任何一环节处理不当,就会造成整个系统性能的下降。
随着半导体技术的高速发展,特别是大规模集成电路设计技术的发展,数字化、微型化、集成化成为了传感器发展的主要方向。
以单片机为核心的控制系统.利用汇编语言程序设计实现整个系统的控制过程。
在软件方面,结合TLC549串行8位A/D转换器的工作时序,给出A,AT89C5l单片机与TLC549串行A/D转换器件的接口电路图,提出基于器件工作时序进行汇编程序设计的基本技巧。
本系统包括温度传感器,数据传输模块,温度显示模块和温度调节驱动电路,其中温度传感器为数字温度传感器AD590,包括了单总线数据输出电路部分。
文中对每个部分功能、实现过程作了详细介绍。
关键词:
单片机、汇编语言、TLC549、温度传感器AD590、
Abstrac
Temperatureisthemostcommononeofprocessparametersinautomaticcontrolandindustrialproduction.Inthetraditionaltemperaturemeasurementsystemdesign,oftenusingsimulationtechnologytodesign,andthiswillinevitablyencountererrorcompensation,suchaslead,complexoutsidecircuit,pooranti-jammingandotherissues,andpartofadealwiththemImproperly,couldcausetheentiresystemofthedecline.Withmodernscienceandtechnologyofsemiconductordevelopment,especiallylarge-scaleintegratedcircuitdesigntechnologies,digital,miniaturization,integrationsensorsarebecominganimportantdirectionofdevelopment.
InthecontrolsystemswiththecoreofSCM,assemblylanguageprogrammingisusedtoachievethecontrolofthewholesystem.CombiningwiththeoperationsequenceofTLC549,theinterfacecircuitdiagramsofAT89C51SCMandTLC549serialA/Dconvegeralegiven.Thebasicskillsofassemblylanguageprogrammingbasedontheoperationse—queneeofthechipaleputforward.Thissystemincludetemperaturesensoranddatatransmission,themoduledisplaysmoduleandthermoregulationdrivencircuitfromthesensorsintofiguresofthetemperaturesensorsAD590,includingalistofthedataoutputcircuit.Thetextofeverypartofthefunctionsandprocedureatpresent.
Keywords:
single-chip;assemblylanguage;serialA/Dconversion;TLC549;TemperaturesensorAD590
第一章系统功能原理及硬件介绍
该数字温度计利用AD590集成温度传感器及其接口电路完成温度的测量并转换成模拟电压信号,经由模数转换器TCL549转换成单片机能够处理的数字信号,然后送到单片机AT89C51中进行处理变换,最后将温度值显示在D4、D3、D2、D1共4位七段码LED显示器上。
系统以AT89C51单片机为控制核心,加上AD590测温电路、TCL549模数转换电路、4位温度数据显示电路以及外围电源等组成。
系统组成框图如图1所示。
图1系统组成框图
1.1AT89C51单片机介绍
AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,可提供以下标准功能:
4K字节闪存,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
图2AT89C51引脚图
引脚功能说明
Vcc:
电源电压GND:
地
P0口:
P0口是一组8位漏极开路型双向I/O口,即地址/数据总线复位口。
作为输出口用时,每位能吸收电流的方式驱动8个逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,此时P0激活内部的上拉电阻。
P1口:
P1是一个带有内部上拉电阻的8位双向I/O口。
P1的输出缓冲级可驱动(输入或输出)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可做输入口。
因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
P2口:
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(输入或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。
因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
在访问外部程序存储器获16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。
P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(输入或输出)4个TTL逻辑门电路。
对P3口写入“1”时,他们被内部上拉电阻拉高并可作为输入口。
此时,被外部拉低的P3口将用上拉电阻输出电流。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对输出时钟信号或用于定时。
要注意的是:
当访问外部数据存储器时将跳过一个ALE脉冲。
闪存编程期时,该引脚还用于输入编程脉冲。
PSEN:
程序存储允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两个PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。
EA/VPP:
外部访问允许。
要使CPU仅访问外部程序存储器(地址为0000H---FFFFH),EA端必须保持低电平(接地)。
需注意的是;如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。
XTAL1:
振荡器反相放大器及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端。
1.2TLC549介绍
l.2.1TLC549的主要特点
TLC549是采用IinCMOSTM技术并以开关电容逐次逼近原理工作的8位串行A/D7芯片,可与通用微处理器、控制器通过I/OCLOCK、CS、DATAOUT三条口线进行串行接口。
TLC549具有4MHz的片内系统时钟和软、硬件控制电路,转换时间最长为17μs,允许的最高转换速率为40000次/s。
总失调误差最大为±0.5LSB,典型功耗值为6mW。
TLC549采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,由于其VREF-接地时,(VREF+)-(VREF-)≥1V,故可用于较小信号的采样,此外,该芯片还单电源3~6v的供电范围。
总之,TLC549具有控制口线少,时序简单,转换速度快,功耗低,价格便宜等特TLC549的极限参数如下:
◇电源电压:
6.5V:
◇输入电压范围:
0.3V~VCC:
+o.3V:
◇输出电压范围:
0.3V~VCC:
+0.3V;
◇峰值输入电流(任一输人端):
±10mA;
◇峰值输人电流(所有输入端):
±30mA
◇工作温度:
TLC549C:
0℃~70~C
◇TLC549I:
-40℃~85℃
◇TLC549M.-55"C~125℃
TLC549的引脚图如图3所示。
图3TLC549的引脚图
1.2.2TLC549芯片的工作原理
TLC549带有片内系统时钟,该时钟与I/OCLOCK是独立工作的,无需特殊的速度或相位匹配。
当CS为高时,数据输DATAOUT端处于高阻状态,此时I/OCLOCK不起作用。
这种CS控制作用允许在同时使用多片TLc549时,共用I/OcLOCK,以减少多路(片)A/D使用时的I/O控制端口。
一组通常的控制时序操作如下:
(1)将Cs置低,内部电路在测得CS下降沿后,在等待两个内部时钟上升沿和一个下降沿后,再确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到DATAOUT端;
(2)在前四个I/OCLOCK周期的下降沿依次移出第2、3、4和第5个位(D6,D5,D4,D3),片上采样保持电路在第4个I/OCLOCK下降沿开始采样模拟辅人:
(3)接下来的3个I/OCLOCK周期的下降沿可移出第6、7、8(D2,D1,D0)各转换位;(4)最后,片上采样保持电路在第8个I/OCLOCK周期的下降沿将移出第6、7、8(D2,D1,D0)各转换位。
然后使保持功能持续4个内部时钟周期,接着开始进行32个内部时钟周期的A/D转换。
在第8个I/OcLCOK后,CS必须为高或I/OLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。
如果CS为低时,I/OCLOCK上出现一个有效干扰脉冲,则微处理器,控制器将与器件的I/O时序失去同步;而在cs为高时若出现一次有效低电平,则将使引脚重新初始化,从而脱离原转换过程。
在36个内部系统时钟周期结束之前,实施步骤
(1)~(4),可重新启动一次新的A/D转换,与此同时,正在进行的转换将终止。
但应注意,此时的输出是前一次的转换结果而不是正在进行的转换结果。
若要在特定的时刻采样模拟信号,则应使第8个I/OCLOCK时钟的下降沿与该时刻对应。
因为芯片虽在第4个I/OCLOCK时钟的下降沿开始采样,却在第8个I/OCLOCK的下降沿才开始保存。
TLC549的工作时序图如图4所示。
图4TLC549的工作时序
1.3AD590的介绍
AD590是AD公司利用PN结构正向电流与温度的关系制成的电流输出型两端温度传感器.(热敏器件)
AD590是美国模拟器件公司生产的单片集成两端感温电流源。
它的主要特性如下:
1、流过器件的电流(mA)等于器件所处环境的热力学温度(开尔文)度数,即:
mA/K式中:
—流过器件(AD590)的电流,单位为mA;T—热力学温度,单位为K。
2、AD590的测温范围为-55℃~+150℃。
3、AD590的电源电压范围为4V~30V。
电源电压可在4V~6V范围变化,电流变化1mA,相当于温度变化1K。
AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会被损坏。
4、输出电阻为710MW。
5、精度高。
AD590共有I、J、K、L、M五档,其中M档精度最高,在-55℃~+150℃范围内,非线性误差为±0.3℃。
AD590温度感测器是一种已经IC化的温度感测器,它会将温度转换为电流,在8051的各种课本中常看到它,相当常用到。
其规格如下:
温度每增加1℃,它会增加1μA输出电流。
可量测范围-55℃至150℃。
供应电压范围+4V至30V。
AD590的输出电流值说明如下:
其输出电流是以绝对温度零度(-273℃)为基准,每增加1℃,它会增加1μA输出电流,因此在室温25℃时,其输出电流Io=(273+25)=298μA。
Vo的值为Io乘上10K,以室温25℃而言,输出值为2.98V(10K×298μA)。
量测Vo时,不可分出任何电流,否则量测值会不准。
AD590的输出电流I=(273+T)μA(T为摄氏温度),因此量测的电压V为(273+T)μA×10K=(2.73+T/100)V。
为了将电压量测出来又需使输出电流I不分流出来,我们使用电压追随器其输出电压V2等于输入电压V。
由于一般电源供应较多零件之后,电源是带杂讯的,因此我们使用齐纳二极体作为稳压零件,再利用可变电阻分压,其输出电压V1需调整至2.73V。
接下来我们使用差动放大器其输出Vo为(100K/10K)×(V2-V1)=T/10V。
如果现在为摄氏28度,输出电压为2.8V。
图5AD590的封装及其基本应用电路
图6AD590内部电路原理图
第二章理论分析
TLC549温度采集系统采用了AD590采集温度信号,TLC549转换温度模拟信号,AT89C51(伟福仿真器仿真)控制TLC549转换,静态数码管显示,超量程报警。
2.1各模块接线及原理说明
2.1.1AD590采集温度信号模块
将T-DETECT接到TLC549的AIN端口,然后用T-CON控制电路加热与否。
不需要进行其他的控制。
2.1.2TLC549A/D(模数)转换模块
TLC549的三个I/O口分别为DATA、CLK和CS端口,其中CLK为时钟、CS为片选、DATA为数据输出。
2.1.3静态数码管显示模块
静态数码管显示电路由四只74LS164、四只共阴极LED数码管组成。
输入只有两个信号,它们是串行数据线DIN和移位信号CLK。
四只74LS164首尾相连,每只74LS164的并行输出作为LED数码管的段码。
因此,选取单片机的两个I/O口分别控制串行数据线DIN和移位信号CLK,使四位数码管静态显示。
2.1.4蜂鸣器超量程报警模块
由AT89C51的I/O口直接输出信号到蜂鸣器的控制信号输入端口C,当输入信号为高点平时,蜂鸣器报警。
2.2最小分度、量程及报警温度的算法
2.2.1最小分度、量程的算法
TLC549C工作温度为0℃~70℃,温度与电压成正比。
当设定量程与70℃接近时测量所得温度与实际温度才能相符。
TLC549C的A/D输出为00H到FFH,可进行256等分,4能被256整除,以此算法设定最小分度为0.25℃,量程为0℃~63.75℃,比较符合要求。
2.2.2报警温度的算法
设定最小温度分度为0.25℃,量程为0℃~63.75℃,所以,0℃时A/D输出的数字量为00H,63.75℃时A/D输出的数字量为FFH。
报警温度以0℃为基准:
报警时A/D输出的数字量=报警温度*4/16
将所得的数字量转化成二进制表示形式,输入程序相应位置即可完成设定。
第三章各模块电路设计
温度采集系统由温度采集模块、AD转换模块和温度值显示模块三大部分组成。
其中温度采集模块主要用AD590采集温度,并输出一个模拟电压信号,TLC549接收到模拟信号后,进行AD转换把模拟信号转换位数字信号,并串行输出(一个时钟下降沿输出一次),单片机接到数据后存入累加器A,经过一定的转化,经过74LS164输入到四段七位数码管中,并静态显示出来,当温度超过设定的报警温度,蜂鸣器报警装置自动报警。
3.1温度测量采集及加热电路模块
T-DETECT接到TLC549模拟信号输入端AIN,T-CON接高电平时开始加热。
图7温度测量采集及加热电路原理图
图8参考电压电路
3.2串行A/D(模数)转换模块
图9串行模数转换电路
3.3静态数码管显示模块
图10静态数码管显示模块电路原理图
3.4蜂鸣器超量程报警模块
图11蜂鸣器超量程报警原理电路
第四章电路与程序设计
4.1程序流程图
4.2程序清单
CLK_549BITP3.4
DOBITP3.5
CSBITP3.2
DINBITP2.0
CLKBITP2.1
BJOBITP2.2
GEWEIEQU41H
SHIWEIEQU40H
ORG0000H
JMPMAIN
ORG0030H
MAIN:
MOVSP,#60H
CLRBJO;防止误报警
AD:
SETBCLK_549
SETBCS
MOVR0,#00H
CLRCLK_549
CLRCS;启动转换
LCALLREAD;调用读数
SETBCS;停止转换
CLRC;清零CY,以备下次转换
MOVR1,A;将数据暂存在R1中,报警时用到
MOVB,#4
DIVAB
MOVR0,B
PP0:
CJNER0,#0,PP1;判断余数是否为0,不为0转PP1
LCALLL0
JMPAD
PP1:
CJNER0,#1,PP2;判断余数是否为1,不为1转PP2
LCALLL1
JMPAD
PP2:
CJNER0,#2,PP3;判断余数是否为2,不为2转PP3
LCALLL2
JMPAD
PP3:
LCALLL3;余数为3时执行
JMPAD
;******读数函数******
READ:
MOVC,DO;读取最高位
RLCA;左移一位
MOVR6,#07H
RE:
SETBCLK_549;循环读取剩下七位数
NOP
NOP
CLRCLK_549
NOP
NOP
MOVC,DO
RLCA
DJNZR6,RE
SETBCLK_549
NOP
NOP
CLRCLK_549
NOP
NOP
RET
;******余数为0时子函数******
L0:
LCALLDIV1;余数为0时,显示XX.00
MOVA,#0
LCALLDISP
MOVA,#0
LCALLDISP
MOVA,GEWEI
LCALLXSD
MOVA,SHIWEI
LCALLDISP
LCALLD10MS
LCALLBJ
RET
;******余数为1时子函数******
L1:
LCALLDIV1;余数为1时,显示xx.25
MOVA,#5
LCALLDISP
MOVA,#2
LCALLDISP
MOVA,GEWEI
LCALLXSD
MOVA,SHIWEI
LCALLDISP
LCALLD10MS