温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023
基于
嵌入式
温度传感器
设计
目录
第一章 系统概要 1
1.1 系统背景 1
1.2 系统功能框图 1
第二章 系统硬件设计 2
2.1 系统原理图 2
2.2 单片机〔MCU〕模块 2
2.2.1 MC908GP32单片机性能概述 2
2.2.2 内部结构简图与引脚功能 3
2.2.3 GP32最小系统 5
2.3 传感器模块 6
2.4 信号放大模块 7
2.5 A/D转换模块 7
2.5.1 进行A/D转换的根本问题 7
2.5.2 A/D转换模块的根本编程方法 8
2.5.3 A/D芯片TCL2543概述 8
2.6 串行通信模块 11
2.6.1 串行通信常用概念 11
2.6.2 RS-232C总线标准 12
第三章 系统软件设计 13
3.1 MCU方〔C〕程序 13
3.1.1 A/D转换子程序 14
3.1.2 串行通信子程序 17
3.2 PC方〔VB〕程序 19
3.3 PC方界面 23
第四章 系统测试 24
第五章 总结展望 24
5.1 总结 24
5.2 展望 25
参考文献 25
第一章 系统概要
1.1 系统背景
温度是日常生活、工业、医学、环境保护、化工等领域遇到的一个物理量。温度测量的根本方法是使用温度计直接读取。最常见的测量温度的工具是各种各样的温度计,它们常常以刻读的形式表示温度的上下,人们必须通过读取刻度的多少来测量温度。由于单片机在检测和控制系统中得到广泛的应用,利用单片机和温度传感器构成的电子式智能温度计就可以直接测量温度,得到温度的数字值并显示出来,既简单方便,又直观准确。
本次课程设计的目的是以MC908GP32单片机为核心设计出一个路温度测量系统。设计将温度传感器采样得到的模拟信号转换成数字信号,通过串口在PC的界面显示出来。本次课程设计用温度传感器将被测温度转换为电量,经过放大滤波电路处理后,由模数转换器将模拟量转换为数字量,再与单片机相连,通过可编程键盘显示接口芯片实现温度限值的设定。.被测量经过温度传感器转换为电量,再放大后送给A/D转换器。电量经过A/D转换为二进制数值,单片机根据设计目的完成相应的软件处理。处理完毕后,送键盘显示处理芯片,然后再由数码管显示。
这是一种低本钱的利用单片机I/O口实现的温度检测电路, 该电路非常简单, 易于实现, 并且适用于几乎所有类型的单片机。
1.2 系统功能框图
数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端〔单片机、PC或其它设备〕组成。
A/D转换模块即模/数转换模块,功能是将电压信号转换为对应的数字信号。实际应用中,这个电压信号可能由温度,湿度,压力等实际物理量经过传感器和相应的交换电路转换而来。经过A/D转换后,MCU就可以处理这些物理量。
第二章 系统硬件设计
2.1 系统原理图
整个系统软件设计分为两个局部,作为主控的PC端的软件设计及作为数据采集器的单片机终端节点的软件设计。系统采用模块化编程,将各局部功能分别实现,主要的功能子程序有:数据采集、标度变换、数制转换、数值显示、发送、接收和局部中断子程序。
图2.1 系统原理图
2.2 单片机〔MCU〕模块
2.2.1 MC908GP32单片机性能概述
MC908GP系列单片机是HC80系列单片机大家族中具有通用性的一族,MC908GP32是MC908GP系列中的一个型号,MC908GP32单片机具有3种封装形式,分别为40脚、42脚、44脚。MC908GP32单片机的主要特点如下:
〔1〕512B片内RAM;32KB片内Flash程序存储器,具有在线编程能力和保密功能。
〔2〕时钟发生器模块,具有PLL电路,可产生各种工作频率;内部总线频率最高可达8MHz。
〔3〕增强的HC50 CPU结构,16种寻址方式〔比HC50多8种〕,16位变址存放器和堆栈指针,存储器至存储器数据传送,快速8x8指令,扩展的循环控制功能,BCD功能。
〔4〕33根通用I/O脚,包括26根多功能I/O脚和5或7根专用I/O脚;PTA、PTC和PTD的输入口有可选择的上拉电阻;PTC0~PTC4有25mA吸流和放流能力,其他口有15mA吸流和放流能力〔总体驱动电流应小于150mA〕;所有口有最高5mA输入电流保护功能。
(5) 增强型串行通信口SCI;串行外围接口SPI;两个16位双通道定时器接口模 块〔TIM1和TIM2〕,每个通道可选择为输入捕捉、输出比拟和PWM,其时钟可分别选为内部时钟的1、2、4、8、16、32和64的分频值;带时钟预分频的定时基模块有8种周期性实时中断(1、4、16、256、512、1024、2048和4096Hz),可在STOP方式时使用外部32KHz晶振周期性唤醒 CPU;8位键盘唤醒口。
(6)系统保护特性:计算机工作正常(COP)复位;低电压检测复位,可选为3V或5V操作;非法指令码检测复位;非法地址检测复位。
(7)具有PDIP40、SDIP42和QFP44封装形式。
(8)优化用于控制应用;优化支持C语言。
2.2.2 内部结构简图与引脚功能
1. 内部结构简图〔44引脚〕
单片机(以下简称GP32单片机)的三种封装形式只是引脚数量和形式有所区别,其它方面是一致的。图中I/O口是按 44引脚的GP32给出的,对于42引脚的GP32单片机那么没有PTC5、PTC6两个引脚,对于40引脚的GP32单片机那么没有PTC5、PTC6及 PTD6/T2CH0、PTD7/T2CH1四个引脚。
从内部结构简图可以看出,GP32内部有以下主要局部:CPU08、存储器、定时器接口模块、定时基模块、看门狗模块、通用I/O接口、串行通信接口 SCI、串行外设接口SPI、断点模块、A/D转换模块、键盘中断模块、时钟发生模块及锁相环电路、低电压禁止模块、复位与中断模块、监控模块MON和系统设置模块。
2. GP32单片机的引脚功能
40引脚的MC908GP32单片机的引脚图,引脚功能分类简介如下:
(1) 电源类引脚
VDD、VSS(20脚、19脚):电源供给端。
VDDAD /VREFH、VSSAD /VREFL(31脚、32脚):内部A/D转换器的电源供给及参考电压输入端。
VDDA、VSSA(1脚、2脚):时钟发生器模块(CGM)的电源供给端。
(2) 控制类引脚
(6脚):外部低有效复位输入或输出脚,有内部上拉电阻。
(14脚):外部中断输入脚,有内部上拉电阻。
(3) I/O类引脚
PTA7/KBD7~PTA0/KBD0(40~33脚):8位通用双向I/O口,每个可编程为键盘输入脚。
PTB7/AD7~PTB0/AD0(30~23脚):8位通用双向I/O口,也可作为8路8位A/D转换输入脚。
PTC4~PTC0(11~7脚):5位通用双向I/O口。
PTD5/T1CH1~PTD0/ (22、21、18~15脚):6种特殊功能、双向I/O口,其中T1CH1、T1CH0用于定时器模块(TIM1)。SPSCK、MOSI、MISO、 用于串行外围接口(SPI)。
PTE0/TxD、PTE1/RxD(12脚、13脚):2位双向I/O口或串行通讯口。
(4) 其它
CGMXFC(3脚):CGM的外部滤波电容连接脚。
OSC1、OSC2(5脚~4脚):片内振荡器引脚。
2.2.3 GP32最小系统
最小系统图是能够保证单片机正常工作的最小模块,它使用了最少的器件,芯片,并组合了温度测量的一些必备组件,如蜂鸣器,电阻,二极管,电容等。各部件相互配合,共同完成了温度测量系统全部工作。
GP32最小系统
1.电源供给与滤波
GP32芯片的20、19脚〔VDD、VSS〕为芯片的电源输入端,1、2脚〔VDDA、VSSA〕为内部PLL模块的电源供给。接在电源与地之间的0.1µF电容为滤波电容。PLL电路目的在于由频率小的外部晶振产生较大频率的内部总线时钟,提高芯片的抗干扰性。由于这局部内容涉及的编程内容很少,但原理较难理解,所以放入第14章介绍。这里只要知道GP32内有PLL电路就可以了,而且GP32内的PLL电路模块需要外接电源。在MCU的第3脚,接有内部PLL模块的外部滤波电路。滤波电路的作用主要是增强电路工作稳定性。
2.晶振电路
接MCU第4、5脚〔OSC2、OSC1〕之间的电路为晶振电路,这里选用的晶振频率为f=32.768KHz。通过内部PLL电路模块,可获得小于等于8MHz的内部总线频率。电路及其元件参数是由GP32参考手册确定的。实际开发中,嵌入式应用工程师往往根据参考手册提供的电路及参数,通过自己的实践,构筑MCU的外围支撑电路,而不深究其工作原理。
3.复位电路
接在MCU第6脚( )的电路为芯片硬件复位电路。正常工作时该脚通过10K电阻接到电源正极〔这里设为5V电源供电〕,所以应为高电平。假设按下复位按钮RST,那么第6脚通过51Ω接地,为低电平,芯片复位。
2.3 传感器模块
温度传感器采用的是NS公司生产的LM35,它具有很高的工作精度和较宽的线性工作范围,该器件输出电压与摄氏温度线性成比例。LM35与用开尔文标准的线性温度传感器相比更有优越之处,LM35无需外部校准或微调,可以提供±1/4℃的常用的室温精度。
•工作电压:直流4~30V;
•工作电流:小于133μA
•输出电压:+6V~-1.0V
•输出阻抗:1mA负载时0.1Ω;
•精度:0.5℃精度〔在+25℃时〕;
•漏泄电流:小于60μA;
•比例因数:线性+10.0mV/℃;
•非线性值:±1/4℃;
•校准方式:直接用摄氏温度校准;
•使用温度范围:-55~+150℃额定范围。
基于LM35开发的温控系统,工作稳定可靠,具有体积小、灵敏度高、响应时间短、抗干扰能力强等特点。LM35的输出电压与摄氏温度的线形关系可用下面公式表示,0℃时输出为0 V,每升高1℃,输出电压增加10 mV。其电源供给模式有单电源与正负双电源两种。正负双电源的供电模式可提供负温度的测量,单电源模式在25℃下电流约为50 mA,非常省电。
2.4 信号放大模块
由于温度传感器LM35输出的电压范围为0~0.99 V,虽然该电压范围在A/D转换器的输入允许电压范围内,但该电压信号较弱,如果不进行放大直接进行A/D转换那么会导致转换成的数字量太小、精度低。系统中选用通用型放大器μA741对LM35输出的电压信号进行幅度放大,还可对其进行阻抗匹配、波形变换、噪声抑制等处理。系统采取同相输入,电压放大倍数为5倍,电路图如以下列图:
信号放大电路图
2.5 A/D转换模块
2.5.1 进行A/D转换的根本问题
A/D转换模块〔Analog To Digital Convert Module〕,即模/数转换模块,是将电压信号转换为对应的数字信号。这个电压量是由压力传感器把压力转换过来,传到MCU处理。
〔1〕采样精度:是指数字量变化一个最小量时模拟信号的变化量,即通常所说的采样位数。
〔2〕采样速率:是指完成一次A/D采样所要花费的时间。
〔3〕滤波:为了使采样的数据更准确,对采样的数据进行筛选去掉误差较大的毛刺。通常采用中值滤波和均值滤波来提高采样精度。中值滤波是取3次采