基于MSP430单片机温度测量系统设计毕业论文.doc_第1页
基于MSP430单片机温度测量系统设计毕业论文.doc_第2页
基于MSP430单片机温度测量系统设计毕业论文.doc_第3页
基于MSP430单片机温度测量系统设计毕业论文.doc_第4页
基于MSP430单片机温度测量系统设计毕业论文.doc_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于MSP430单片机的温度测量系统设计基于MSP430单片机温度测量系统设计毕业论文目 录摘 要IAbstractII第1章 绪论11.1 MSP430单片机概述11.2 MSP430的特点21.3课题研究的主要内容41.3.1研究内容41.3.2论文安排4第2章 系统总体方案设计52.1控制系统的原理图52.2温度测量原理52.3 MSP430F149单片机62.3.1 MSP430F149的组成62.3.2 MSP430F149的特点72.3.3 MSP430F149的定时器及转换模块72.4 单线数字温度传感器DS18B2082.4.1 DS18B20的技术性能:92.4.2 DS18B20的应用范围92.4.3 DS18B20产品型号与规格102.4.4 温度传感器DS18B20特点:102.4.5 DS18B20使用中注意事项102.4.6温度传感器DS18B20内部结构112.5数据采集系统13第3章 硬件部分153.1 硬件电路图153.2 电源及复位模块163.3 键盘输入模块183.4报警模块193.4.1 功率放大器LM386193.4.2 LM386内部原理213.5 显示模块233.5.1 LCD1602 基本参数及引脚功能233.5.1.1 1602LCD主要技术参数243.5.1.2引脚功能说明24第4章 软件部分294.1 最小系统设计294.2采集模块304.3键盘输入模块314.4显示模块344.5报警模块37总结38致谢39参考文献40附 录41 II第1章 绪论本章简要介绍单片机技术在工业上的主要应用,MSP430单片机的概述及特点,以及课题研究的主要内容及论文安排。1.1 MSP430单片机概述MSP430系列单片机是美国德州仪器(TI)1996年开始推向市场的一种16位超低功耗的混合信号处理器(Mixed Signal Processor)。称之为混合信号处理器,主要是其针对实际应用需求,把许多模拟电路,数字电路和微处理器集成在一个芯片上。德州仪器1996年到2000年初,先后推出了31X、32X、33X等几个系列,这些系列具有LCD驱动模块,对提高系统的集成度较有利。每一系列有ROM型(C)、OTP型(P)、和 EPROM型(E)等芯片。EPROM 型的价格昂贵,运行环境温度范围窄,主要用于样机开发。这也表明了这几个系列的开发模式,即:用户可以用 EPROM 型开发样机;用OTP型进行小批量生产;而ROM型适应大批量生产的产品。2000年推出了11X/11X1系列。这个系列采用20脚封装,内存容量、片上功能和I/O引脚数比较少,但是价格比较低廉。这个时期的MSP430已经显露出了它的特低功耗等的一系列技术特点,但也有不尽如人意之处。它的许多重要特性如:片内串行通信接口、硬件乘法器、足够的I/O引脚等,只有33x系列才具备。33x系列价格较高,比较适合于较为复杂的应用系统。当用户设计需要更多考虑成本时,33x并不一定是最适合的。而片内高精度A/D转换器又只有32x系列才有。2000年7月推出了F13x/F14x系列,在2001年7月到2002年又相继推出F41x、F43x、F44x。这些全部是 Flash 型单片机。F41x系列单片机有48个I/O口,96段LCD驱动。F43x、F44x系列是在13x、14x的基础上,增加了液晶驱动器,将驱动LCD的段数由3xx系列的最多120段增加到160段。并且相应地调整了显示存储器在存储区内的地址,为以后的发展拓展了空间。MSP430系列的部分产品具有Flash存储器,在系统设计、开发调试及实际应用上都表现出较明显的优点。TI公司推出具有Flash 型存储器及JTAG边界扫描技术的廉价开发工具MSP-FET430X110,将国际上先进的JTAG技术和Flash在线编程技术引入MSP430。这种以Flash 技术与FET开发工具组合的开发方式,具有方便、廉价、实用等优点,给用户提供了一个较为理想的样机开发方式。2001年TI公司又公布了BOOTSTRAP LOADER技术,利用它可在烧断熔丝以后只要几根线就可更改并运行内部的程序。这为系统软件的升级提供了又一方便的手段。BOOTSTRAP具有很高的保密性,口令可达到32个字节的长度。TI公司在2002年底和2003年期间又陆续推出了F15x和F16x系列的产品。在这一新的系列中,有了两个方面的发展。一是从存储器方面来说,将 RAM 容量大大增加,如F1611的RAM容量增加到了10KB。二是从外围模块来说,增加了I2C、DMA、DAC12 和SVS等模块13。1.2 MSP430的特点11、处理能力强MSP430系列单片机是一个16位的单片机,采用了精简指令集(RISC)结构,具有丰富的寻址方式(7种源操作数寻址,4种目的操作数寻址),简介的27条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可以参加多种运算;还有高效的查表处理命令。这些特点保证了可以编制出高效的源程序 。2、运算速度快MSP430系列单片机能在25MHz晶体的驱动下,实现40ns的指令周期16位的数据宽度、40ns的指令周期以及多功能的硬件乘法器(能实现乘加运算)相配合,能实现数字信号处理的某些算法(如 FFT 等)。3、超低功耗MSP430单片机之所以有超低的功耗,是因为其在降低芯片的电源电压和灵活而可控的运行时钟方面都有其独到之处。首先,MSP430 系列单片机的电源电压采用的是1.8-3.6V电压。因而可使其在1MHz的时钟条件下运行时,芯片的电流最低会在165A左右,RAM保持模式下的最低功耗只有0.1A。其次,独特的时钟系统设计。在MSP430系列中有两个不同的时钟系统:基本时钟系统、锁频环(FLL和FLL+)时钟系统和DCO数字振荡器时钟系统。可以只使用一个晶体振荡器(32768Hz),也可以使用两个晶体振荡器。由系统时钟系统产生CPU和各功能所需的时钟。并且这些时钟可以在指令的控制下,打开和关闭,从而实现对总体功耗的控制。由于系统运行时开启的功能模块不同,即采用不同的工作模式,芯片的功耗有着显著的不同。在系统中共有一种活动模式(AM)和五种低功耗模式(LPM0LPM4)。在实时时钟模式下,可达2.5A,在RAM保持模式下,最低可达0.1A。4、片内资源丰富MSP430系列单片机的各系列都集成了较丰富的片内外设。它们分别是看门狗(WDT)、模拟比较器A、定时器A0(Timer_A0)、定时器A1(Timer_A1)、定时器B0(Timer_B0)、UART、SPI、I2C、硬件乘法器、液晶驱动器、10位/12位ADC、16位- ADC、DMA、I/O端口、基本定时器(Basic Timer)、实时时钟(RTC)和USB控制器等若干外围模块的不同组合。其中,看门狗可以使程序失控时迅速复位;模拟比较器进行模拟电压的比较,配合定时器,可设计出 A/D 转换器;16 位定时器(Timer_A和Timer_B)具有捕获/比较功能,大量的捕获/比较寄存器,可用于事件计数、时序发生、PWM等;有的器件更具有可实现异步、同步及多址访问串行通信接口可方便的实现多机通信等应用;具有较多的I/O 端口,P0、P1、P2端口能够接收外部上升沿或下降沿的中断输入;10/12位硬件A/D转换器有较高的转换速率,最高可达200kbps,能够满足大多数数据采集应用;能直接驱动液晶多达160段;实现两路的12位D/A转换;硬件I2C串行总线接口实现存储器串行扩展;以及为了增加数据传输速度,而采用的DMA模块。MSP430系列单片机的这些片内外设为系统的单片解决方案提供了极大的方便。5、方便高效的开发环境MSP430系列有OPT型、FLASH型和ROM型三种类型的器件,这些器件的开发手段不同。对于OPT型和ROM型的器件是使用仿真器开发成功之后烧写或掩膜芯片;对于FLASH型则有十分方便的开发调试环境,因为器件片内有JTAG调试接口,还有可电擦写的、FLASH存储器,因此采用先下载程序到FLASH内,再在器件内通过软件控制程序的运行,由JTAG接口读取片内信息供设计者调试使用的方法进行开发。这种方式只需要一台PC机和一个JTAG调试器,而不需要仿真器和编程器。开发语言有汇编语言和C语言。1.3课题研究的主要内容1.3.1研究内容本设计以实现基于MSP430单片机的温度测量为主要目标,主要内容有:1、MSP430的结构及工作原理;2、温度测量的控制方法;3、控制系统所需的控制电路,设计控制系统;控制电路主要由MSP430F149单片机、DS18B20温度传感器,LCD1602.4、系统原理图、方框图和线路图等。1.3.2论文安排(1) 原理部分:第1章主要介绍了MSP430单片机的特点,结构和工作原理。(2) 硬件电路部分:第3章详细介绍了系统的硬件电路图,MSP430的结构图及外围电路。(3)软件部分:介绍了系统的软件流程图。 第2章 系统总体方案设计本章主要介绍系统的原理图以及测量原理,然后介绍本设计的核心部件MSP430F149单片机和单线数字温度传感器DS18B20。2.1控制系统的原理图本设计的控制系统主要包括五部分:采集模块,键盘输入模块,电源及复位模块,报警模块,显示模块,具体结构如图2-1所示。图2-1 控制系统原理图2.2温度测量原理本设计的原理是:温度采集系统主要通过单线数字温度传感器DS18B20采集得到温度数据,MSP430F149作为CPU从温度传感器读取数据,将得到的数据进行判断然后做相应处理,比如显示或报警。温度传感器通过某种关系的换算,就可以得到温度传感器的输出电压,这样单片机通过模拟口采集得到传感器的输出电压1。由于MSP430F149片内集成了A/D转换通道,这样可以直接将单片机的A/D输入通道与传感器的模拟电压输出通道相连接另外系统通过键盘输入来完成对报警温度上下限的设置,通过显示电路将得到的数据显示出来,当温度超过上限和下限的时候,系统进行报警,报警是通过驱动一个蜂鸣器来实现的。下面一部分将具体介绍系统的构成。该系统主要有传感器采集模块、键盘输入模块、电源及复位模块、报警模块及显示模块,分别有P2.6、P1.0-P1.7、RESET、P2.5、P2.2-P2.4和P4.0-P4.7控制。系统框图如图2-1所示。由图2-1可以看出,整个系统具有结构简单等特点。传感器模块与单片机的A/D通道进行连接,这样可以简化模拟采集的设计,从而减小设计的复杂性,增加系统的可靠性。键盘输入模块是通过单片机的Pl口来实现的,由于Pl口中断功能,所以实现起来非常容易,并且也非常适合软件编程。电源及复位模块主要是为整个系统提供可靠的电源,另外考虑到系统工作需要有复位功能,因此也为系统提供复位信号。2.3 MSP430F149单片机本设计采用MSP430F149单片机作为核心部件。2.3.1 MSP430F149的组成l 基础时钟模块,包括一个数控振荡器(DCO)、一个高速晶体振荡器(最高8MHz)和一个低速晶体振荡器(32768Hz)。l 看门狗定时器Watch Timer,可用作通用定时器。l 带有3个捕获/比较寄存器的16位定时器Timer_A3。l 带有7个捕获/比较寄存器的16位定时器Timer_B7。l 两个具有中断功能的8位并行端口;P1与P2。l 四个8位并行端口;P3、P4、P5与P6。l 模拟比较器compator_A。l 2位200kbps的A/D转换器ADC12,自带采样保持。l 两通道串行通信接口可用于异步或同步(USART0、USA1T1)。l 一个硬件乘法器。22.3.2 MSP430F149的特点l 低电压(电压范围是1.8v-3.6v,超低功耗(2.2v 1MHz 280uA ) 。l 超低功耗。在休眠条件下上作电流只有0.8uA;就是在(2.2v、1MHz)条件下电流只有280uA。l 使用中断请求将CPU从低功耗模式下唤醒时间:6usl 快速的指令执行时间。MSP430F149为16位RISC结构,指令周期为150ns。l 片内有12位A/D转换器,片内提供参考电压。A/D转换器具有采样保持和自动扫描特点。l 具有灵活的时钟设计。l 方便的调试功能。l 单片机是FLASH型的,可以实现写入和擦除,再加上次单片机提供JTAG口,能实现能很好的在线调试仿真功能。通过集成的IDE开发环境,使用户很容易调试程序。l 片内提供模拟信号比较器、较多的储存器。l 串口通信模块,USART0 USART1。l 提供Pl.0-P6.0六个数据端口,能为用户提供更多的处理功能。l 安全熔丝的程序代码保护。2.3.3 MSP430F149的定时器及转换模块在MSP430F149中有一个16位定时器和一个12位转换模块ADC12。 16位定时器可以用作看门狗定时器,实现在秒数量级上的定时。其中有2个中断向量,便于处理各种定时中断。另外,定时器还具有捕获模式,我们可以通过定时器的捕获功能实现各种测量,比如脉冲宽度测量。12位A/D转换用到2个参考电平,即Vr+和Vr-,作为转换范围的上下限和读数的量程值和0值。转换数值在输入信号大于等于Vr+时为满量程,小于等于Vr-时为0。ADC12有4种工作模式。可以在单通道上实现单次转换或多次转换,也可以在序列通道上实现单次转换或重复转换。对于序列通道转换,采样顺序完全由用户定义。转换的结果保存在16个转换寄存器中,这样ADC12可以进行多次转换而不需要软件干顶,这一点提高了系统性能,也减少了软件开销2。MSP430F149单片机管脚如图2-2所示:图2-2MSP430F149单片机管脚2.4 单线数字温度传感器DS18B20美国DALLS公司生产的单线数字温度传感器DS18B20,它是一种智能温度传感器,可把温度信号直接转换成数字信号供微机处理。由于每片DS18B20含有唯一的硅串行数,从DS18B20读出的信息或写入DS18B20的信息,仅需要一根口线4。读出及温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外的电源。DS18B20提供九位温度读数,构成多点温度检测系统而无需任何外围硬件。2.4.1 DS18B20的技术性能:l 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 l 测温范围 55+125,固有测温分辨率0.5。 l 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定,实现多点测温。 l 工作电源: 3-5V/DC。l 在使用中不需要任何外围元件。 l 测量结果以9-12位数字量方式串行传送。 l 不锈钢保护管直径 6。 l 适用于DN15-25, DN40-DN250各种介质工业管道和狭小空间设备测温。 l 标准安装螺纹 M10X1, M12X1.5, G1/2任选。 l PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。l 适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数 据线供电。2.4.2 DS18B20的应用范围 l 该产品适用于冷冻库,粮仓,储罐,电讯机房,电力机房,电缆线槽等测温和控制领域 。l 轴瓦,缸体,纺机,空调,等狭小空间工业设备测温和控制。 l 汽车空调、冰箱、冷柜、以及中低温干燥箱等。 l 供热/制冷管道热量计量,中央空调分户热能计量和工业领域测温和控制。2.4.3 DS18B20产品型号与规格 温度传感器DS18B20共有三种型号,分别为TS-18B20,TS-18B20A,TS-18B20B,各种型号的具体性能及参数如表2-1所示。表2-1 DS18B20产品型号与规格型号测温范围安装螺纹电缆长度适用管道TS-18B20-55125无1.5 m-TS-18B20A-55125M10X11.5mDN15-25TS-18B20B-551251/2G接线盒DN40-602.4.4 温度传感器DS18B20特点l 单线接口,仅需一根口线与CPU连接可以实现双向通信l 无需外围元件l 由总线提供电源,电压范围3.0V5.5Vl 调温范围为-55125,固有测温分辨率为0.5l 通过编程可以实现九位数字温度读数l 负压特性,电源极性接反时,温度计不会因发热而烧坏,但不能正常工作2.4.5 DS18B20使用中注意事项DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:1、较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此 ,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对 DS18B20操作部分最好采用汇编语言实现。 2、在DS18B20的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时 要加以注意。2.4.6温度传感器DS18B20内部结构温度传感器DS18B20内部结构:DS18B20采用三脚PR35封装如图2-2所示,其内部框图如2-3所示5。64位的ROM开始8位是产品类型的编号,接着是每个器件的唯一的序号共计48位,最后8位是前56位的CRC校验码。高速缓存器存储器包含一个高速暂存RAM和一个非易失性的可电擦除的EP2RAM。配置寄存器为高速缓存器中的第五个字节,它的内容用于确定温度值的数字转换分辨率,各位字节的定义如表2-2示:表2-2各位字节的定义TM R1 R0 1 1 1 1 1后五位一直是1,TM是测试模式位,用于设置DS18B20在工作模式还是测试模式,在DS18B20出厂时被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,也就是设置分辨率。图2-3 DS18B20 三脚PR35封装 图2-4 DS18B20内部结构图在温度进行计算时,以12位转换位数为例:对于正的温度,只要将测到的数值整数部分取出,转换为十进制,再将小数部分乘以0.0625就可以将得到的十进制的小数位的温度值了。而对于负的温度,则需要将采集到的数值取反加1,即可以得到实际温度的十六进制表示。在按照正温度的计算方法就可以得出十进制的负的温度了6。如表2-3及表2-4所示。表2-3 DS18B20温度寄存器格式Bit7Bit6Bit5Bit4Bit3Bit2Bit1bit0LS Byte232221202-12-22-32-4Bit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8LS ByteSSSSS262524表2-4部分温度值温度/二进制表示16进制表示+12500000111 1101000007D0H+25.062500000001 100100010191H+0.500000000 000010000008H000000000 000000000000H-0.511111111 11111000FFF8H-25.062511111110 01101111FE6FH-5511111100 10010000FC90H2.5数据采集系统该系统采用美国DALLAS公司生产的单线数字温度传感器DS18B20来采集温度数据,作为单片机MSP430149的温度传感器,该芯片有很多优点,可把温度信号直接转换成串行数字信号供微机处理。由于每片DS18B20含有唯一的硅串行数,从DS18B20读出的信息或写入DS18B20的信息,仅需要一根口线(单线接口)。由于该系统采用DS18B20作为温度采集传感器,这部分电路就比较简单了,图2-5为温度采集电路。 图 2-5温度采集电路通过图2-5可以看出该集成电路具有简单,实用等特点。I/O口可以与MSP430F149的P2.6口直接相连,来完成数据的传送。第3章 硬件部分本章主要介绍硬件部分的各个模块,这些模块包括电源模块及复位模块,键盘输入模块,报警模块,显示模块。电源模块采用TI公司的TPS76033芯片,保证MSP430F149单片机的工作电压。复位模块采用MAX809芯片。键盘输入模块主要是用来输入数据,从而实现人机交互。报警模块采用LM386芯片,实现报警控制。显示模块采用LCD1602显示温度。3.1 硬件电路图单片机的最小系统如图3-1所示:图3-1 单片机最小系统电路单片机电路作为整个系统的核心控制部分,主要完成与其他电路的接口,从而获得数据进行处理,将处理的结果采用某种方式表现出来,比如显示或报警。从单片机最小系统电路可以看出,单片机接口电路非常简单,分别采用单片机的一般I/O口实现与其他电路的连口,在单片机的时钟设计上与其他单片机有一定的区别,MSP430F149单片机采用两个时钟的输入,一个32kHz的时钟信号,一个8MHz的时钟信号。该系统的时钟部分是采用晶体振荡器实现的7。考虑到电源的输入纹波对单片机的影响,在电源的管理脚增加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。另外单片机还有模拟电源的输入端,因此在这里需要考虑干扰问题,在该系统中的干扰比较小,因此模拟地和数字地共地,模拟电源输入端增加一个滤波电容以减少干扰。3.2 电源及复位模块本模块采用TPS76033(低功耗 50mA 低压降 (LDO) 稳压器 )芯片实现,如图3-2所示:图3-2TPS76033实物图电压电路:由于MSP430F149单片机的工作电压一般是1.8v3.6v,并且功率极低。为了方便起见,本系统采用电池(如2节普通5号电池)供电,因此输出电压为3V。而整个系统采用3.3V供电。考虑到硬件系统对电源要求具有稳压功能和纹波小等特点,另外也考虑到硬件系统的低功耗特点,因此该硬件系统的电源部分采用TI公司的TPS76033芯片实现,该芯片能很好的满足该硬件的系统的要求,另外该芯片具有很小的封装,因此能有效的节约PCB板的面积8。为了使输出电源的纹波小,在输出部分用了一个2.2uF和0.1uF的电容,另外在芯片的输入端也放置一个0.1uF的滤波电容,减少输入端受到的干扰。电源电路具体如图3-3所示。图3-3 电源电路复位电路:在单片机系统里,单片机需要复位电路,复位电路可以采用RC复位电路,也可以采用复位芯片实现的复位电路,RC复位电路具有经济性,但可靠性不高,用复位芯片实现的复位电路具有很高的可靠性,因此为了保证复位电路的可靠性,该系统采用复位芯片实现的复位电路,该系统采用MAX809芯片1。为了减小电源的干扰,还需要在复位芯片的电源的输入端加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。复位电路如图3-4所示:图3-4 复位电路3.3 键盘输入模块键盘输入电路主要是用来输入数据,从而实现人机交互。该系统的键盘设计是采用扫描方式实现的矩阵键盘。该系统的键盘电路图如图3-5所示。图3-5 键盘输入电路该矩阵扫描键盘由行线和列线组成,P1.0、P1.1、P1.2、P1.3构成键盘的行线,P1.4、Pl.5、Pl.6和Pl.7构成键盘的列线。键盘的行线作为键盘的控制输出端,键盘的列线作为键盘的输入端。在设计时为了程序设计的方便性,键盘的列线采用的是Pl.4、Pl.5、P1.6 、Pl.7,这样可以利用该管脚的中断功能。这样在没有按键按下的情况下,该四个管脚的电平为高电平,如果有按键按下时,则相应的列线管脚为低电平,这时通过设置Pl.4、Pl.5、P1.6、P1.7为低电平触发中断方式,低电平就触发中断而进入中断服务程序,从而获得输入的数据。键盘的工作原理具体如下:首先将P1.0、P1.1、P1.2、P1.3.设置为输出,将P1.4、P1.5、P1.6、P1.7设置为输入,并将P1.4、P1.5、P1.6、P1.7设置为低电平触发中断方式;将P1.3设置为低电平,如果该行上有按键按下的话,则P1.4、P1.5、P1.6或者P1.7上为低电平10,就会触发中断,进入中断服务程序,获得输入的数据。如果没有按键按下的话,则Pl.4、Pl.5、P1.6和P1.7上为高电平,不会进入中断服务程序。依次将P1.0、P1.1、P1.2、P1.3设置为低电平来判断该行是否有输入,如果没有输入的话,P1.4、P1.5、P1.6、P1.7均为高电平,如果有输入的话,P1.4、P1.5、P1.6、P1.7上为低电平,就会触发中断,进入中断服务程序,获得输入数据。键盘的扫描时间很短,仅仅几微秒的时间,然而按键的时间一次至少需要几十毫秒,所以只要有按键按下的话是都可以被扫描到的。另外还要考虑键盘的抖动处理。3.4报警模块该部分电路主要是驱动一个蜂鸣器,这样只需要将蜂鸣器的一端接地,另一端以单片机进行相接就可以了。而驱动该蜂鸣器需要LM386功率放大器。3.4.1 功率放大器LM386LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点的功率放大器,广泛应用于录音机和收音机之中。LM386具有以下特性,LM386如图3-6所示:(1)静态功耗低,约为4mA,可用于电池供电。(2)工作电压范围宽,4-12v或5-18v。(3)外围元件少。(4)电压增益可调,20-200。(5)低失真度。图3-6LM386LM386内部电路原理图如图3-7所示。与通用型集成运放相类似,它是一个三级放大电路。图3-7LM386内部原理图3.4.2 LM386内部原理1、第一级为差分放大电路T1和T3、T2和T4分别构成复合管,作为差分放大电路的放大管;T5和T6组成镜像电流源作为T1和T2的有源负载;T3和T4信号从管的基极输入,从T2管的集电极输出,为双端输入单端输出差分电路。使用镜像电流源作为差分放大电路有源负载,可使单端输出电路的增益近似等于双端输出电容的增益。 2、第二级为共射放大电路T7为放大管,恒流源作有源负载,以增大放大倍数。第三级中的T8和T9管复合成PNP型管,与NPN型管T10构成准互补输出级。二极管D1和D2为输出级提供合适的偏置电压,可以消除交越失真。 引脚2为反相输入端,引脚3为同相输入端。电路由单电源供电,故为OTL电路。输出端(引脚5)应外接输出电容后再接负载。 电阻R7从输出端连接到T2的发射极,形成反馈通路,并与R5和R6构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。如图3-7所示,引脚2为反相输入端,3为同相输入端;引脚5为输出端;引脚6和4分别为电源和地;引脚1和8为电压增益设定端;使用时在引脚7和地之间接旁路电容,通常取10F。 查LM386的datasheet,电源电压4-12V或5-18V(LM386N-4);静态消耗电流为4mA;电压增益为20-200dB;在1、8脚开路时,带宽为300KHz;输入阻抗为50K;音频功率0.5W。 尽管LM386的应用非常简单,但稍不注意,特别是器件上电、断电瞬间,甚至工作稳定后,一些操作(如插拔音频插头、旋音量调节钮)都会带来的瞬态冲击,在输出喇叭上会产生非常讨厌的噪声。下面介绍改进措施:(1)通过接在1脚、8脚间的电容(1脚接电容+极)来改变增益,断开时增益为20dB。因此用不到大的增益,电容就不要接了,不光省了成本,还会带来好处-噪音减少 (2)PCB设计时,所有外围元件尽可能靠近LM386;地线尽可能粗一些;输入音频信号通路尽可能平行走线,输出亦如此。(3)选好调节音量的电位器。质量太差的不要,否则受害的是耳朵;阻值不要太大,10K最合适,太大也会影响音质!(4)电源的处理,也很关键。如果系统中有多组电源,由于电压不同、负载不同以及并联的去耦电容不同,每组电源的上升、下降时间必有差异。非常可行的方法:将上电、掉电时间短的电源放到+12V处,选择上升相对较慢的电源作为LM386的Vs,但不要低于4V。(5)尽可能采用双音频输入/输出。好处是:“”、“”输出端可以很好地抵消共模信号,故能有效抑制共模噪声。(6)第7脚(BYPASS)的旁路电容不可少!实际应用时,BYPASS端必须外接一个电解电容到地,起滤除噪声的作用。工作稳定后,该管脚 电压值约等于电源电压的一半。增大这个电容的容值,减缓直流基准电压的上升、下降速度,有效抑制噪声。(7)在器件上电、掉电时的噪声就是由该偏置电压的瞬间跳变所致。(8)减少输出耦合电容。此电容的作用有二:隔直+耦合。隔断直流电压,直流电压过大有可能会损坏喇叭线圈;耦合音频的交流信号。它与扬声器负载构成了一阶高通滤波器。减小该电容值,可使噪声能量冲击的幅度变小、宽度变窄;太低还会使截止频率提高。分别测试,发现10uF/4.7uF最为合适。图3-8为放大增益为20接线图。 图3-8放大器增益=20图3-9报警电路由图3-9可知LM386的IN+(3)口与MSP430F149的P2.5端口通过一个100欧姆的电阻相连接,来完成相应的控制。3.5 显示模块系统的显示电路采用LCD液晶显示器显示,这样的方式能满足该系统的要求,也可很容易的完成。本设计采用的是LCD1602,他有很多优点:(1)显示质量高(2)数字式接口(3)体积小、重量轻(4)功耗低3.5.1 LCD1602 基本参数及引脚功能1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光厚,是否带背光在应用中并无差别,两者尺寸差别如图3-10所示:图3-10LCD1602尺寸图1、1602LCD主要技术参数l 显示容量:162个字符l 芯片工作电压:4.55.5Vl 工作电流:2.0mA(5.0V)l 模块最佳工作电压:5.0Vl 字符尺寸:2.954.35(WH)mm2、引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表3-1所示:(1)第1脚VSS为地电源。(2)第2脚VDD接5V正电源。(3)第3脚VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。(4)第4脚RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。(5)第5脚R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。(6)第6脚E端为使能端,E端由高电平跳变成低电平时,执行命令。(7)第714脚D0D7为8位双向数据线。(8)第15脚是背光源正极。(9)第16脚是背光源负极。表3-1引脚口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令原则12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的,表3-2为LCD1602的控制命令,表中给出了11条指令,这些指令包括清显示,光标返回,置输入模式,显示开/控制等等,其中1为高电平,0为低电平。表3-2控制命令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生贮存期地址0001字符发生存储器地址8置数据存储器地址001显示数据存储器地址9读忙标志或地址01BF计数器地址10写数据到CGRAM或DDRAM10要写的数据内容11从CGRAM读数 11读出的数据内容下面介绍LCD1602的11条指令:(1)指令1:清显示,指令码01H,光标复位到地址00H位置。(2)指令2:光标复位,光标返回到地址00H。(3)指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。(4)指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。(5)指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。(6)指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。(7)指令7:字符发生器RAM地址设置。(8)指令8:DDRAM地址设置。(9)指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。(10)指令10:写数据。(11)指令11:读数据。图3-11为显示电路.通过图3-11看出,该显示电路直接与单片机的数据I/O口进行连接,VSS为电源地,VDD为电源正极,接5V电源,RS为数据命令选择,RW为读写命令选择,D0-D7用来接收数据,由于MSP430F149具有丰富的I/O口资源,这样采用并行的接口方式非常容易,减小系统设计的复杂度,也可以增加系统的可靠性。P4.0-4.7是用来显示数据,分别与对应LCD1602的D0D7相连接,P2 .2、P2.3和P2.4是用来控制数码管的选通状态。P2.2与LCD1602的RS端相连接,用来控制数据命令,P2.3与RW相连接,用来控制读/写操作,P2.4与使能端E相连接。图3-11显示电路第4章 软件部分本章介绍系统的软件设计,主要包括采集模块、键盘输入模块、显示模块、报警模块和主处理模块。下面具体介绍各个模块的软件设计1。4.1 最小系统设计主处理模块主要是将各个模块进行协调处理和实现数据交互。主处理模块首先完成初始化上作,初始化后进入循环处理,在循环过程中主处理获得采集模块的数据,井将数据进行处理,根据处理后的结果来进行显示或者报警。由于报警的上限和下限需要设置,另外考虑到对数据的保存,因此主程序先检查门限是否在FLASH里面有,如果没有则进行等待设置数据,设置完成后才进入下一步处埋,也就是程序必须在有设置数据的情况下才能正常运行。下面而给出主处理的流程图,如图4-1所示。图4-1主处理器流程图考虑到需要对设置数据进行读写,这样需要对FLASH进行操作,下面给出FLASH操作的函数。该函数的功能是将一个WOED类型的数据写入到FILASH里面。void FLASH_ww(int *pData int nValue)PCTL3=0xA500;/LOCK=0;PCTL1=0xA540;/WRT=1;*pData=nValue;该函数的功能是将一个BYTE类型的数据写入到FLASH里面。void FLASH_wb(char *pData char nValue)PCTL3=0xA500;/LOCK=0;PCTL1=0xA540;/WRT=1;*pData=nValue;该函数的功能是将FLASH里而的内容擦除掉。void FLASH_cir(int *pData)PCTL1=0xA502;/ERASE=1;PCTL3=0Xa500;/LCOK=0;*pData=0;根据上而流程图给出简单的程序,下面的程序是简单化的处理,只是将得到的结果除以100获得整数部分,该程序忽略小数部分的处理,该程序也是假定上下限在0-100之间。以下为具体的程序。见附录2。4.2采集模块采集模块重要是通过DS18B20温度传感器获得数据,并对采集来的数据进行处理后送给MSP430F149。CPU对DS18B20的访问流程是:先对DS18B20初始化,再进行RoI1操作命令,最后才能对存储器操作、数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作图4-2为该模块的程序流程图。图4-2采集模块程序流程图4.3键盘输入模块键盘输入电路主要是用来输入数据,从而实现人机交互。该系统的键盘设计是采用扫描方式实现的矩阵键盘。该矩阵扫描键盘由行线和列线组成,P1.0、P1.1、P1.2、P1.3构成键盘的行线,P1.4、P1.5、P1.6、P1.7构成键盘的列线。键盘的行线作为键盘的控制输出端,键盘的列线作为键盘的输入端。在设计时为了程序设计的方便性,键盘的列线采用的是P1.4、P1.5、P1.6、P1.7,这样可以利用该管脚的中断功能。这样在没有按键按下的情况下,该四个管脚的电平为高电平,如果有按键按下时,则相应的列线管脚为低电平,这时通过设置P1.4、P1.5、P1.6、P1.7为低电平触发中断方式,低电平就触发中断而进入中断服务程序,从而获得输入的数据。键盘的工作原理具体如下:首先将P1.0、P1.1、P1.2、P1.3设置为输出,将P1.4、P1.5、P1.6、P1.7设置为输入,并将P1.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论