1、1基于 S08 的温度检测显示系统的设计2目 录1 绪论 .11.1 设计背景 .11.2 数据采集系统简单介绍 .12 方案论证 .32.1 微控制器的选择 .32.2 显示方案选择 .32.3 温度传感器的选择 .43 温度测量显示系统硬件设计 .53.1 温度采集模块硬件设计 .53.2 MCU 控制器模块设计 .63.3 显示模块电路的设计 .74 温度测量显示系统软件设计 .74.1 微控制器程序的开发环境及语言 .84.2 程序设计 .94.2.1 A/D 转换原理及程序 .94.2.2 热敏电阻阻值和温度的非线性对性模块原理及程序 .114.2.3 温度显示模块程序 .13总结
2、.15参考文献 .16附录 A 温度采集与显示程序 .17附录 B 接线原理图 .2331 绪论1.1 设计背景在人类的生活环境中,温度扮演着极其重要的角色。无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。自18世纪工业革命以来,工业发展对是否能掌握温度有着绝对的联系。在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎80%的工业部门都不得不考虑着温度的因素。温度对于工业如此重要,由此推进了温度传感器的发展。进入21世纪后,温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。在工农业生产中,温度检测
3、及其控制占有举足轻重的地位,随着现代信息技术的飞速发展和传统工业改造的逐步实现 ,能够独立工作的温度检测和显示系统已经应用于诸多领域。要达到较高的测量精度需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差等问题,使温度检测复杂化。模拟信号在长距离传输过程中,抗电磁干扰时令设计者伤脑筋的问题,对于多点温度检测的场合,各被检测点到监测装置之间引线距离往往不同,此外,各敏感元件参数的不一致,这些都是造成误差的原因,并且难以完全清除。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活中也发挥越来越大的
4、作用。采用单片机对温度采集进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控数据的技术指标,从而能够大大提高产品的质量和数量。1.2 数据采集系统简单介绍随着自动控制的发展,数据采集越来越被广泛应用,如医疗、工业等方面,数据采集是指将温度,压力,流量,位移等模拟量通过各种传感元件做适当转换后,再经信号调理、采样、量化、编码、传输等步骤采集,转换成数字量后,传给PC 机进行存储,处理,显示或打印的过程,相应的系统称为数据采集系统,可分为以下几种:41.基于通用微型计算机的数据采集系统将采集来的信号通过外部的采样和A/D转换后的数字信号通过接口电路送入微机内进行处理,然后
5、再显示处理结果或经过D/A 转换输出,主要有以下几个特点 :(1) 系统较强的软、硬件支持。通用微型计算机系统所有的软硬件资源都可以用来支持系统进行工作。(2) 具有自开发能力。(3) 系统的软硬件的应用配置比较小,系统的成本较高,但二次开发时,软硬件扩展能力较好。(4) 在工业环境中运行的可靠性差,对安放的环境要求较高;程序在RAM 中运行,易受外界干扰破坏。2.基于单片机的数据采集系统它是由单片机及其些外围芯片构成的数据采集系统,是近年来微机技术快速发展的结果,它具有如下特点:(1) 系统不具有自主开发能力,因此,系统的软硬件开发必须借助开发工具。(2) 系统的软硬件设计与配置规模都是以满
6、足数据采集系统功能要求为原则,因此系统的软硬件应用配置具有最佳的性价比。系统的软件一般都有应用程序。(3) 系统的可靠性好、使用方便。应用程序在ROM 中运行不会因外界的干扰而破坏,而且上电后系统立即进入用户状态。3.基于DSP数字信号微处理器的数据采集系统DSP数字信号微处理器从理论上而言就是一种单片机的形式,常用的数字信号处理芯片有两种类型,一种是专用DSP芯片,一种是通用DSP芯片。基于DSP 数字信号微处理器的数据采集系统的特点如下:精度高、灵活性好、可靠性好、容易集成、分时复用等,但其价格不菲。2 方案论证2.1 微控制器的选择微控制器是测量显示装置的核心部分,它要负责数据的处理及控
7、制液晶屏显示。因此,需要一个高集成度、稳定性高和体积小的微控制器,同时还要注重低成本及5实际情况。AT89S52是一种低功耗、高性能8位微控制器,具有 8K系统可编程FLASH存储器和256字节ROM,可实现0Hz33Hz的全静态操作,支持4.0V5.5V电源。使用Atmel公司高密度非易失性存储器技术制造,与MCS-51产品指令和引脚完全兼容。片上Flash 允许程序存储器在系统可编程,亦适于常规编程器。其内部没有A/D 转换模块,需要外部扩展模数转换芯片。S08AW60 拥有 62KB 片上在线可编程 FLASH 存储器和 2KB 片上 RAM,具有模块保护与安全选项功能,支持 2.75.
8、5V 电源。片内总线时钟最高可达 20MHz,可选择宽范围的时钟频率。其内部集成了高性能模/ 数转换器(ADC)和串行通信模块,具有很宽的工作温度范围(-40+125),可适应各类恶劣环境。该芯片还可以通过 BDM 在计算机与微控制器进行在线编程及后台调试,避免频繁的插拔单片机,编译软件调试功能强大。对比之后,根据实际的应用需求,本设计选择了飞思卡尔公司生产的增强型8位微控制器MC9S08AW60(44引脚、LQFP封装)。其拥有足够大的FLASH存储器和ROM,并带有高性能模/ 数转换器。另外, 体积小,稳定性高,调试方便。2.2 显示方案选择方案一:LED数码管显示器可分为两种显示方式:静
9、态显示和动态显示。LED数码管静态显示,多片七段译码器驱动显示,这不仅增加了成本,还需要占用单片机多个I/O口,也给电路的焊接带来一定的困难,因此不选用这种方案作为显示模块,所以排除此方案。方案二:LED数码管显示器动态显示方式下,将所有位的段选线并联在起,由位选线控制哪位接收字段码。采用动态扫描显示,也就是在显示过中,轮流向各位送出字形码和相应的字位选择,同一时刻只有一位显示,其他各位熄灭。但是此显示方案稳定性较差,并且还需要焊接外围电路,所以不采用此方案。方案三:LCD液晶显示,由单片机驱动.它主要用来显示大量数据、文字、图形,能够显示的位数多,显示得清晰多样、美观,同时液晶显示器的编写程
10、序简单,价格便宜,6故采用此种方案。LCD类型繁多,价格不等。根据本设计需要显示的信息量小的特点,选用价格便宜的LCD1602液晶屏。其特点如下:(1) 液晶显示屏是以16列2行=32个510或57点阵块组成的显示字符群,每个点阵为一个字符,字符间距和行距都为一个点的宽度。(2) 具有字符发生器 ROM,可以显示192种字符。(3) 具有64字节的自定义字符RAM,可自定义8个57或4个510点阵字符。(4) 具有80字节的 RAM。(5) 结构紧凑、轻巧、装配容易。(6) 单+5V电源供电,低功耗,长寿命,高可靠性。2.3 温度传感器的选择测量温度的关键是温度传感器,因此需要灵敏度高、测温范
11、围宽、稳定性好,同时还要考虑成本和实际情况。DS18B20 数字式温度传感器,使用集成芯片,采用单总线技术,其能够有效的减小外界的干扰,提高测量的精度,同时,它可以直接将被测温度转化成串行数字信号供微机处理,接口简单,使数据传输和处理简单化。部分功能电路的集成,使总体硬件设计更简洁,能有效地降低成本, 搭建电路和焊接电路时更快,调试也更方便简单化 。热敏电阻的主要特点是:灵敏度较高,其电阻温度系数要比金属大10 100 倍以上,能检测出 10-6的温度变化; 工作温度范围宽,常温器件适用于-55 315,高温器件适用温度高于 315(目前最高可达到 2000) ,低温器件适用于-273 55
12、; 体积小,能够测量其他温度计无法测量的空隙、腔体及生物体内血管的温度;使用方便,电阻值可在 0.1100k 间任意选择;易加工成复杂的形状,可大批量生产; 稳定性好、过载能力强对比之后,根据实际的应用需求,本设计采用热敏电阻。热敏电阻包括正温度系数(PTC)和负温度系数(NTC)热敏电阻,以及临界温度热敏电阻(CTR ) 本设计采用 NTC 热敏电阻。NTC(Negative Temperature Coeff1Cient)是指随温度上升电阻呈指数关系减小、具有负温度系数的热敏电阻现象和材料该材料是利用锰、铜、硅、鈷、7铁、镍、锌等两种或两种以上的金属氧化物进行充分混合、成型、烧结等工艺而成
13、的半导体陶瓷,可制成具有负温度系数(NTC)的热敏电阻其电阻率和材料常数随材料成分比例、烧结气氛、烧结温度和结构状态不同而变化。它的测量范围一般为-10+300,也可做到 -200+10 ,甚至可用于 +300+1200环境中作测温用。3 温度测量显示系统硬件设计温度采集系统的硬件部分是由温度采集模块、MCU 控制器模块、温度显示模块组成。具体框图如下图 3.1 所示:温度采集模拟量输入MCULCD显示输出图 3.1 系统硬件框图3.1 温度采集模块硬件设计该模块是根据热敏电阻阻值随温度变化而变化的特性,利用串联分压的特点,将热敏电阻所分的电压送到 MC9S08AW60 的模拟量输入端。具体电
14、路原理如图3.2 所示:1 2 3 4 5 6ABCD654321DCBATitleNumb er R ev isio nSizeBDate: 1 2-Jan -2 0 11 Sheet of File: E:creat_ p retelMy Design 召 召 召 .d dbDrawn B y :VC CR 32 0kR 4R ES4PTB 0图 3.2 温度采集模块电路原理图该电路中 R4 为热敏电阻,其电压传输到 MC9S08AW60 单片机的模拟量输入端,即 B0 口。83.2 MCU 控制器模块设计MC9S08AW60的外部工作电路如图3.3所示。V ddad和V ssad是MCU
15、内部模拟电路的电源,给模数转换器(ADC)模块供电,V REFH和V REFL是模数转换的参考电压。Vdd和V ss是S08MCU主要的电源引脚,工作电压范围是2.7V5.5V,在该电路中提供的是5V电压。在V dd和V ss之间接10F钽电容器和 0.1F的陶瓷旁路电容器,10F钽电容器来为系统提供大容量的电荷存储,同时应在离MCU电源管脚尽可能近的地方安装一个0.1F 的陶瓷旁路电容器来抑制高频噪音。1 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 12-Jan-2011 Sheet of File: E:creat_prete
16、lMyDesign 召召召.ddbDrawnBy:PTB0PTB1PTB2PTB3PTD0PTD1VssadVddadPTD2PTD3PTG3VrefhVreflBKGDPTG5PTG6VssPTC0PTC1PTC2PTC3PTC5PTC4IRQRESETPTF0PTF1PTF4PTF5PTE0PTE1PTE2PTE3PTE4PTE5PTE6PTE7Vss VddPTG0PTG1PTG2PTA0PTA1MC9S08AW6044-Pin LQFP4MR11MC127pF C227pFC30.1uFR24.7kS1C40.1uFVCCC510uFVCC图3.3 MC9S08AW60外部工作电路原理
17、图该电路为MCU控制器电路,其中,G0、G1、G2口分别与LCD1602的RS、 R/W、E引脚连接;C0C3口与LCD1602的DB0DB3引脚连接;D0D3口与LCD1602的DB4DB7引脚连接。.B0口是模拟量输入端,用于输入热敏电阻的电压。93.3 显示模块电路的设计该模块是利用 LCD1602 液晶屏显示,显示的清晰度是关键,其 Vee 引脚作用是对比调整,原理是该引脚输入电压不同,调整度不同,所以采用电位器分压作为它的电压输入。Vss 及 K 引脚分别是电源地、LCD 背光电源负极,直接接地。Vcc及 A 引脚分别是电源、LCD 背光电源正极,采用 +5V 电源供电。其电路原理图
18、如图 3.4 所示:1 2 3 4 5 6ABCD654321DCBATitleNumber RevisionSizeBDate: 12-Jan-2011 Sheet of File: E:creat_pretelMyDesign 召召召.ddbDrawnBy:VssVcVeRSR/WEDB0DB1DB2DB3DB4DB5DB6DB7AKLCD1602R510kVCCVCCPTG0PTG1PTG2PTC0PTC1PTC2PTC3PTD0PTD1PTD2PTD3图 3.4 显示模块电路原理图该电路中,LCD1602 的 RS、R/W、E 引脚分别与 MC9S08AW60 的G0、G1、G2 口连
19、接;DB0DB3 引脚分别与 MC9S08AW60 的 C0C3 口连接;DB4DB7 引脚与 MC9S08AW60 的 D0D3 口连接。4 温度测量显示系统软件设计4.1 微控制器程序的开发环境及语言在前面,本设计已经选择了MC9S08AW60微控制器,飞思卡尔的微控制器有其专用的开发环境软件CodeWarrior IDE。同时,CodeWarrior IDE可以在不同的操作系统(包括Windows, Macintosh和Linux)下使用,而且在这些操作系统下的界面10完全相同。本设计使用CodeWarrior6.3版,其界面如图4.1所示,只要在右边打开main.c窗口就可以进行程序编
20、写。图 4.1 CodeWarrior6.3 程序开发界面在对微控制器进行编程时,可以用汇编语言或者C语言,甚至可以二者混合编程。CodeWarrior IDE支持汇编语言,C、C+和Java高级语言。C语言功能丰富、表达能力强、使用灵活方便、目标程序效率高、可移植性好,既具有高级语言的优点,又具有低级语言的许多特点,是国内外广泛使用的一种计算机语言。本设计使用C语言对微控制器进行编程,其能直接操作微控制器的硬件和接口,生成的机器代码也是高水平的。4.2 程序设计本设计程序主要包括 A/D 转换模块程序、热敏电阻阻值和温度的非线性对性模块程序、温度显示模块程序,其总程序流程图如图 4.2 所示: