1、西安航空职业技术学院 毕业设计论文西安航空职业技术学院毕 业 设 计(论 文)论文题目: 基于单片机的电压表设计 所属学院: 电子工程学院指导老师: 余平生 职 称: 副教授学生姓名: 李潇 班级、学号: 11201310专 业:应用电子技术西安航空职业技术学院制2014年 1 月 12 日西安航空职业技术学院 毕业设计(论文)任务书题目: 基于单片机的电压表设计任务与要求:任务:设计一款便携式数字电压表要求:测量范围0400V直流电压,有量程切换和超量程报警功能,能够显示电池电量.时间: 2013 年 11月18 日至 2014 年 1 月12 日 共 8 周所属学院: 电子工程学院学生姓名
2、: 李潇 学 号:11201310专业: 应用电子技术指导单位或教研室: 电子工程学院指导教师:余平生 职 称: 副教授西安航空职业技术学院制2014年 1 月 12 日毕业设计(论文)进度计划表日 期工 作 内 容执 行 情 况指导教师签 字2013.11.02查找资料,了解相关知识完成2013.11.03方案选择完成2013。11。04基础LCD驱动程序编写完成2013。11。06硬件电路焊接调试完成2013.11.08整体程序编写完成2013.11。10软硬件连调完成2013.11.13整机性能测试完成教师对进度计划实施情况总评 签名 年 月 日 本表作评定学生平时成绩的依据之一。基于单
3、片机的电压表设计【摘要】论文主要阐述了基于STC12LE5A60S2低压单片机便携式电压表的设计,系统以STC12LE5A60S2低压单片机为主控芯片,以16位AD芯片AD7705为AD转换芯片,以DS18B20为温度传感器对温度进行测量,以1.8寸TFT彩屏为显示模块。该系统能实时测量输入电压和当前温度,并能对供电电池的电压进行测量,并在屏幕上显示出当前电量。系统测量电压范围为0400V直流电压,分为7个档位,当输入电压超量程时通过蜂鸣器报警。系统设计了相关的硬件电路和相关应用程序.硬件电路主要包括STC12LE5A60S2单片机最小系统、AD7705驱动电路、测温电路、1。8寸TFT液晶显
4、示电路以及按键处理模块电路等.系统程序主要包括主程序、读AD7705子程序、读出温度子程序、计算温度子程序、按键处理程序、LCD显示程序等。关键词:STC12LE5A60S2单片机;AD7705;TL431;DS18B20Abstract: This thesis mainly expounds the STC12LE5A60S2 low voltage microcomputer portable voltmeter based design, the system with STC12LE5A60S2 lowpressure single-chip microcomputer as mai
5、n control chip, AD chip with a 16 bit AD7705 to AD conversion chip, DS18B20 as temperature sensor for temperature measurement, display module for 1。8 inch TFT color screen。 The system can realtime measurement of the input voltage, the current temperature is measured, and the power supply to measure
6、the voltage of battery, and on the screen shows the current electricity。 System to measure the voltage range of 0400 v dc voltage, is divided into seven gear, when the input voltage in excess of the range by a buzzer alarm。 System design the related hardware circuit and relevant applications。 Hardwa
7、re circuit mainly includes STC12LE5A60S2 SCM smallest system, AD7705 driver circuit, temperature measurement circuit, 1.8 inch TFT LCD display circuit and the key processing module circuit, etc。 System program mainly includes the main program, read the AD7705 subroutine, read temperature subroutine,
8、 calculation temperature handler subroutine, buttons and LCD display program, etc.Keywords: STC12LE5A60S2;AD7705;TL431;DS18B20目 录1设计方案11。1主控芯片选择11。2 电源部分11.3 AD转换芯片选择21。4温度测量21.5显示模块21。6总体方案32硬件电路设计42.1 STC12LE5A60S2单片机及最小系统42.1。1 STC12LE5A60S2单片机特点42。1.2 STC12LE5A60S2单片机最小系统62。2电源模块62。3 AD7705转换芯片及
9、硬件电路72。3。1 AD7705结构及工作原理72。3。2 AD7705各引脚及功能72。3.3 AD7705的寄存器82。3。4 AD7705的基准源92.3.5 AD7705的电压采集电路102。4 DS18B20的介绍及温度采集模块电路102。4.1 DS18B20的性能介绍102.4。2 温度采集模块电路112。5 1.8寸TFT液晶显示模块122。5。1 TFT液晶模块的结构及性能介绍122。5.2 TFT液晶模块和几种常用液晶模块的对比122.5。3 TFT液晶模块引脚功能与结构132。6 电源电压监控133 系统软件设计153.1 AD7705电压采集子程序153.2 计算温度
10、子程序163。3 按键子程序17结 束 语18参考文献19附录一 系统总体电路图和作品实物图201设计方案在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器.数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流或交流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、灵敏度高和分辨率高、测量速度快等特点而倍受青睐.本设计从各个角度分析了由单片机组成的数字电压表的设计过
11、程及各部分电路的组成及其原理,并且分析了程序如何驱动单片机进而使系统运行起来的原理及方法.本设计主要分为两部分:硬件电路及软件程序。而硬件电路又大体可分为A/D转换电路、液晶显示电路,各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用C语言编程,详细的设计算法将会在程序设计部分详细介绍。1。1主控芯片选择方案一:传统的AT89C51有一个8位的CPU,128个字节的数据存储器和4KB的程序存储器,5个中断源,两个定时器32个通用IO,一个全双工串行I/O口UART(通用异步接收、发送器)。采用单一的+5V电源供电,一个机器周期包括12个时钟周期。方案二:采用STC公司新推出S
12、TC12LE5A60S2系列1T单片机,该系列单片机一个时钟周期就是一个机器周期,相比传统8051单片机运行速度是原来的812倍,供电电压为3.6V-2.1V,内部有1280字节数据存储器和60KB程序存储器,1KB的EEPROM,36个通用IO,4个定时器,2个全双工串口,8通道10位ADC,2路PWM波输出.因为该设计中采用4。2V的手机电池供电采用1.8寸TFT彩色液晶屏作为显示模块,在液晶显示部分的程序较为复杂,且函数众多所以所需的程序存储空间大,要完成采集电压到显示在液晶屏上对单片机的运行速度要求很高,综合各方面考虑选择STC公司的STC12LE5A60S2单片机为主控芯片.1。2
13、电源部分由于该系统采用的单片机为低压单片机供电范围为3.6V2。1V,彩屏的供电电压为3。3V,AD芯片的供电电压为3。3V,且功率都不大,采用4。2V的手机锂离子电池为最佳选择。1。3 AD转换芯片选择方案一:采用单片机内部AD.STC12LE5A60S2单片机内部8通道10位ADC,作为一般设计无需外围电路,8个通道可分时测量,对测量较低的电压精确度足够。方案二:采用AD7705芯片作为AD转换芯片。该器件可以接受直接来自传感器的低电平的输入信号,然后产生串行的数字输出.利用转换技术实现了16位无丢失代码性能。选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。片内数字滤波器处理调
14、制器的输出信号.通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字滤波器的第一个陷波进行编程.AD7705只需3。3V5。25V单电源。当电源电压为5V、基准电压为2.5V时,可将输入信号范围从0+20mV到0+2。5V的信号进行处理.还可处理20mV2。5V的双极性输入信号,对于AD7705是以AIN()输入端为参考点AD7705是用于智能系统、微控制器系统和基于DSP系统的理想产品.其串行接口可配置为三线接口.增益值、信号极性以及更新速率的选择可用串行输入口由软件来配置。该器件还包括自校准和系统校准选项,以消除器件本身或系统的增益和偏移误差.CMOS结构确保器件具有极低功耗,
15、掉电模式减少等待时的功耗至20W.由于该系统中只需一个测量端,所需测量范围广,有时对前端电压衰减有时又需要对信号进行放大,单片机内部无法完成信号的放大,而AD7705内部自带8种增益方式,可通过程序控制器增益倍数。而且AD7705比单片机内部精度更高,综合考虑后选择AD7705为AD转换芯片.1.4温度测量采用一线制数字温度传感器DS18B20来作为本课题的温度传感器。传感器输出信号进4。7K的上拉电阻直接接到单片机的引脚上。DS18B20温度传感器是美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯
16、片上.应用广泛,所以将测温作为本系统的一个附加功能。1。5显示模块本系统显示模块采用1。8寸TFT彩色液晶屏,彩色液晶屏相比起传统的数码管、1602液晶屏和12864液晶屏有很多优点.数码管只能显示数字和简单的字符,1602液晶屏能显示所有的数字和字符,而不能显示汉字.12864液晶屏满屏能显示32个汉字,或是64个字符,且显示位置不能根据用户要求而随意改变,只能显示简单的单色图片。而现在较为流行的TFT彩色液晶屏不仅能显示数字、字符、汉字、还可以显示彩色图片。本系统使用的1。8寸TFT彩色液晶屏共有128160个像素点,能够显示的信息量很大,但相比12864和1602液晶屏操控起来也相对复杂
17、很多。1。6总体方案根据各模块方案的选择,该系统CPU选择为STC12LE5A60S2单片机,选择4。2V手机锂离子电池为系统供电电源,AD转换芯片为AD7705芯片,温度测量采用DS18B20温度传感器,显示模块为1.8寸TFT彩色液晶屏。2硬件电路设计硬件电路的设计主要包括单片机系统、AD转换模块、LCD显示电路、温度采集电路、按键控制和报警电路三部分。单片机采用STC12LE5A60S2单片机,采用11.0592MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差;温度采集利用温度传感器DS18B20,利用单总线占用单片机的IO口少,便于控制与调试;显示电路采用1。8寸TFT彩色液晶屏
18、,采用SPI串行传输,占用的单片机IO端口少;按键采用独立式按键,可以减少程序的编写,并且可以减少干扰,更好地控制;报警电路与传统的一样,可以更好地实现人机互动。总体结构图如图2。1所示。 STC12LE5A60S2单片机控制器温度采集模块 按键模块 显示模块 报警模块 电源模块AD转换模块 图2。1 总体结构图2。1 STC12LE5A60S2单片机及最小系统2.1。1 STC12LE5A60S2单片机特点STC12LE5A60S2系列单片机是宏晶科技科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快812倍。
19、内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。1. 增强型8051 CPU,1T 单时钟/机器周期,指令代码完全兼容传统80512. 工作电压:STC12LE5A60S2 系列单片机: 3.6V2.2V(3V单片机)3. 工作频率范围:035MHz,相当于普通8051的0-420MHz4. 用户应用程序空间60KB字节5. 片上集成1280字节RAM6. 通用I/O口(36个),复位后为:准双向/若上拉(普通8051传统I/O口) 可设置成四种模式:准双向/若上拉,强推挽/强上拉,仅为输入/高阻,开 漏每个I/
20、O口驱动能力均可达到20mA,但整个芯片最大电流不要超过120mA7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿 真器可通过串口(P3。0/P3。1)直接下载用户程序,数秒即可完成一片8. 内部看门狗9. 内部集成MAX810专用复位电路(外部晶振12M以下时,复位脚可直接接1K 电阻到地)10. 时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为5%到10%以 内)用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/ 时钟常温下内部R/C振荡器频率为:8MHz12MHz 精度要求不高时可选择使 用内部时钟11. 共4个16位定时器,两个与传统
21、8051兼容的定时器/计数器,16位定时 器T0和T1,没有定时器2,但有独立波特率发生器做串口通讯的波特率发 生器,再加上2路PCA模块可再实现2个16位定时器12. 3个时钟输出口,可由T0的溢出在P3。4/T0输出时钟,可由T1的溢出在 P3。5/T1输出时钟,独立波特率发生器可在P1.0口输出时钟13. 外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持 上升沿中断的PCA模块,power Down模式可由外部中断唤醒, INT0/P3。2,INT1/P3。3,T0/P3。4,T1/P3。5,CCP0/P1。3(也可通过 寄存器设置到P4.2),CCP1/P1.4(也可
22、通过寄存器设置到P4。3)14. PWM(2路)/PCA(可编程计数器阵列2路)也可用来当2路D/A使用,也可 用来在实现2个定时器,也可用来再实现2个外部中断(上升沿中断/下降 沿中断均可分别或同时支持)15. A/D转换,10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次)16. 通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用 定时器或PCA软件实现多串口17. STC12LE5A60S2系列有双串口,RxD2/P1.2(可通过寄存器设置到P4。2), TxD2/P1。3(可通过寄存器设置到P4.3)18. 工作温度范围:4085(工业级)/0
23、75(商业级)19. 封装:LQFP-48,LQFP44,PDIP-40,PICC44,QFN40。I/O口不够时, 可用2到3根普通I/O口外接74HC164/165/595(均可级联)来扩展I/O口, 还可以用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了 串口。2。1。2 STC12LE5A60S2单片机最小系统51单片机的最小系统包括:时钟振荡电路、复位电路、电源电路。时钟振荡电路必须在X1和X2之间跨接晶体振荡器和微调电容,晶体振荡器常用11。0592M,电容用22pF;复位电路采用按键复位,采用40引脚双列直插封装(DIP)形式。单片机最小系统电路图如图2。2所示。
24、图2。2 单片机最小系统2.2电源模块电源模块选用手机锂离子电池作为系统电源,手机锂离子电池体积小、容量大、供电电压在3。7V4。2V之间,电压相对较稳定,还可以充电多次利用.本系统设计的电压表要求使用便捷,采用手机电池为电源非常合适。由于单片机、液晶屏、AD转换芯片的工作电压都为3。3V而手机电池充满电时电压为4。2V,放点过后电压为3。7V直接供给芯片电压稍微过高.1N4007二极管的导通压降为0.5V-0。6V,设计时在电池输出加上一个二极管则输出电压为3.2V-3。6V,基本满足各芯片稳定工作要求.2。3 AD7705转换芯片及硬件电路2。3。1 AD7705结构及工作原理AD7705
25、是AD公司新推出的16位-A/D转换器.器件包括由缓冲器和增益可编程放大器(PGA)组成的前段模拟调节电路,调制器,可编程数字滤波器等部件。能够直接将传感器测量到的多路微小信号进行A/D转换。这种器件还具有很高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合仪表测量、工业控制等领域的应用。它采用三线串行接口,有两个全差分输入通道,能达到0。003%非线性的16位无误码数据输出,其增益和数据输出更新率均可编程设定,还可选择输入模拟缓冲器,以及自校准和系统校准方式.工作电压3V或5V.3V电压时,最大功耗为1mW,等待模式下电源电流仅为8uA。2。3。2 AD7705各
26、引脚及功能AD7705引脚图如图2。3所示. 图2。3 AD7705引脚图AD7705各引脚功能如表2。1所示。 表2.1 AD7705各引脚功能编号名称功能1SCLK串行时钟,施密特逻辑输入。将一个外部的串行时钟加于这一输入端口,以访问AD7705的串行数据.该串行时钟可以是连续时钟以连续的脉冲串传送所有数据。反之,它也可以是非连续时钟,将信息以小批型数据发送给AD77052MCLK IN为转换器提供主时钟信号。能以晶体/谐振器或外部时钟的形式提供。晶体/谐振器可以接在MCLKIN和MCLKOUT二引脚之间.此外,MCLKIN也可用 CMOS 兼容的时钟驱动,而 MCLKOUT 不连接。时钟
27、频率的范围为500kHz5MHz 3 3MCLK OUTMCLK OUT当主时钟为晶体/谐振器时,晶体/谐振器被接在MCLKIN和MCLKOUT之间。如果在MCLKIN引脚处接上一个外部时钟,MCLKOUT将提供一个反相时钟信号.这个时钟可以用来为外部电路提供时钟源,且可以驱动一个CMOS负载.如果用户不需要,MCLKOUT可以通过时钟寄存器中的CLKDIS位关掉.这样,器件不会在MCLKOUT脚上驱动电容负载而消耗不必要的功率4CS片选,低电平有效的逻辑输入,选择AD7705。将该引脚接为低电平,AD7705能以三线接口模式运行(以SCLK、DIN和DOUT与器件接口)。在串行总线上带有多个
28、器件的系统中,可由CS对这些器件作出选择,或在与AD7705通信时,CS可用作帧同步信号5RESET复位输入。低电平有效的输入,将器件的控制逻辑、接口逻辑、校准系数、数字滤波器和模拟调制器复位至上电状态6AIN2(+)差分模拟输入通道2的正输入端7AIN1(+)差分模拟输入通道1的正输入端8AIN1(-)差分模拟输入通道1的负输入端9 REF IN(+)基准输入端。AD7705差分基准输入的正输入端.基准输入是差分的,并规定REFIN(+)必须大于REFIN(-)。REFIN(+)可以取VDD和GND之 间的任何值 10REF IN(-)基准输入端.AD7705差分基准输入的负输入端.REFI
29、N(-)可以取VDD和GND之间的任何值,且满足REFIN(+)大于REFIN(-) 11AIN2()差分模拟输入通道2的负输入端12DRDY逻辑输出。这个输出端上的逻辑低电平表示可从AD7705的数据寄存器获取新的输出字。完成对一个完全的输出字的读操作后,DRDY引脚立即回到高电平.如果在两次输出更新之间,不发生数据读出,DRDY将在下一次输出更新前500tCLKIN时间返回高电平。当DRDY处于高电平时,不能进行读操作,以免数据寄存器中的数据正在被更新时进行读操作。当数据被更新后,DRDY又将返回低电平。DRDY也用来指示何时AD7705/7706已经完成片内的校准序列 13DOUT串行数
30、据输出端。从片内的输出移位寄存器读出的串行数据由此端输出。根据通讯寄存器中的寄存器选择位,移位寄存器可容纳来自通讯寄存器、时钟寄存器或数据寄存器的信息 14DIN串行数据输入端。向片内的输入移位寄存器写入的串行数据由此输入。根据通讯寄存器中的寄存器选择位,输入移位寄存器中的数据被传送到设置寄存器、时钟寄存器或通讯寄存器 15VDD电源电压,+2.7V+5.25V16GND内部电路的地电位基准点 2.3.3 AD7705的寄存器AD7705片内包括8个寄存器,这些寄存器通过器件的串行口访问。第一个是通信寄存器,它管理通道选择,决定下一个操作是读操作还是写操作,以及下一次读或写哪一个寄存器.所有与
31、器件的通信必须从写入通信寄存器开始。上电或复位后,器件等待在通信寄存器上进行一次写操作.这一写到通信寄存器的数据决定下一次操作是读还是写,同时决定这次读操作或写操作在哪个寄存器上发生。所以,写任何其它寄存器首先要写通信寄存器,然后才能写选定的寄存器。所有的寄存器(包括通信寄存器本身和输出数据寄存器)进行读操作之前,必须先写通信寄存器,然后才能读选定的寄存器.此外,通信寄存器还控制等待模式和通道选择,此外DRDY状态也可以从通信寄存器上读出。2.3.4 AD7705的基准源大家都知道在电池使用过程中随着电池电量的降低,电池的输出电压也随之降低这对整个系统有一定影响,特别是对电压进行测量时影响就更
32、大了。要想精确地测量某个电压,在整个系统电压变化时必须有一个电压保持不变,我们将这个不变的电压叫做基准电压。TL431是一个有良好的热稳定性能的三端可调分流基准电压源。它的输出电压用两个电阻就可以任意地设置到从VREF(2.5V)到36V范围内的任何值。该器件的典型动态阻抗为0。2,在很多应用中可以用它代替齐纳二极管,例如,数字电压表,运放电路、可调压电源,开关电源等等。特点:可编程输出电压为36V电压参考误差:0.4 ,典型值25(TL431B)低动态输出阻抗,典型0.22负载电流能力1。0mA to 100mA等效全范围温度系数50 ppm/典型温度补偿操作全额定工作温度范围低输出噪声电压
33、当输入电压在3V到30V之间变化时输出基准始终是2。5V。如图2。4为proteus仿真图. 图2。4 当输入电压从3V30V变化时TL431的输出电压由此可见选用TL431作为该系统的基准源是最为理想的器件。2。3。5 AD7705的电压采集电路AD7705使用SPI串行总线与CPU进行通信,只需四条线与CPU连接,分别是SCLK、DIN、DOUT、DRDY。系统选用2MHz外接晶振为转换器提供主时钟信号,因为系统设计时能测得最高电压为直流400V所以要对输入的高压进行衰减,选用397。5K电阻和2。5K电阻进行分压,当测量低电压时可以用AD7705内部程控增益对电压进行放大已获得较高的精确
34、度。电源选用10uF和0。01uF电容为电源滤波,选用TL431为基准源。AD7705模块的整体电路图如图2。5所示。图2。5 AD7705电压采集电路2.4 DS18B20的介绍及温度采集模块电路2。4。1 DS18B20的性能介绍采用一线制数字温度传感器DS18B20来作为本课题的温度传感器.传感器输出信号进4。7K的上拉电阻直接接到单片机的引脚上.DS18B20温度传感器是美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。DS18B20的特点包括(1)系统的特性:测温范围为55+125 ,
35、测温精度为士0.5;温度转换精度912位可变,能够直接将温度转换值以16位二进制数码的方式串行输出;12位精度转换的最大时间为750ms;可以通过数据线供电,具有超低功耗工作方式.(2)系统成本:由于计算机技术和微电子技术的发展,新型大规模集成电路功能越来越强大,体积越来越小,而价格也越来越低.(3)系统复杂度:由于DS18B20是单总线器件,微处理器与其接口时仅需占用1个I/O端口且一条总线上可以挂接几十个DS18B20,测温时无需任何外部元件,因此,与模拟传感器相比,可以大大减少接线的数量,降低系统的复杂度,减少工程的施工量。(4)系统的调试和维护:由于引线的减少,使得系统接口大为简化,给
36、系统的调试带来方便。同时因为DS18B20是全数字元器件,故障率很低,抗干扰性强,因此,减少了系统的日常维护工作。如图2。6为DS18B20的外观图和封装图.图2。6 DS18B20的外观图和封装图2.4.2 温度采集模块电路DS18B20温度传感器只有三根外引线:单线数据传输总线端口DQ,外供电源线VDD,共用地线GND。DS18B20有两种供电方式:一种为数据线供电方式,此时VDD接地,它是通过内部电容在空闲时从数据线获取能量,来完成温度转换,相应的完成温度转换的时间较长。这种情况下,用单片机的一个I/O口来完成对DS18B20总线的上拉。另一种是外部供电方式(VDD接+5V),相应的完成
37、温度测量的时间较短.在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路图如图2。7所示。图2。7 温度采集模块电路2。5 1。8寸TFT液晶显示模块2。5.1 TFT液晶模块的结构及性能介绍TFT屏(Thin Film Transistor)是薄膜晶体管型液晶显示屏,他的每一个像素点都是由集成在其后的薄膜晶体管来驱动的,这样不仅提高了显示屏的响应速度,同事可以精确的控制显示色阶,所以TFT液晶的色彩更逼真.TFT屏主要的构成包括:背光源、导光板、偏光板、滤光板、玻璃基板 、配向膜、液晶材料、薄膜晶体管等。TFT显示屏和驱动IC(控制器)集成在一起,就成了TFT显示模块
38、。我们一般使用的是TFT模块,但大家在称呼的时候,可能仍然成为TFT屏。TFT模块的尺寸是指屏幕的对角线长度。常用的有:1。8、2.2、2。8、3。2、3。6、4。3、5.7、8.4英寸等。分辨率:值水平像素和垂直像素的数量,1。8寸TFT模块的像素点为160128。2。5.2 TFT液晶模块和几种常用液晶模块的对比字符式液晶模块(常用型号lcd1602):只能显示数字,英文字符(也有少量型号可以显示中文字符的),只能显示单色。 短时液晶屏:只能显示数字(也可显示少量英文字符)和预设的图标,只能显示单色。图形液晶模块(常用型号lcd12864):可以显示数字、中英文字符和图案,只能显示单色,且
39、分辨率低.TFT液晶模块:可以显示数字、中英文字符和图案,彩色,图案分辨率高。由于TFT显示器成本日渐降低,并且人们越来越渴望拥有用户友好程度更好的图形界面,因此有越来越多的工程师把TFT显示器设计到他们的产品中去。Lcd1602液晶屏、段式液晶屏、lcd12864液晶屏和TFT彩色液晶屏的外形如图2。8所示.TFT模块图2。8 几种常用液晶模块对比图2.5.3 TFT液晶模块引脚功能与结构常用的TFT液晶模块分为两种接口,SPI串口和并行口,并行口的操作速度快但所需的接线多,SPI串行口操作速度相对较慢,但所需的IO口少。本设计不需要很快的刷屏显示,所以选用的是SPI串行口的液晶屏。液晶屏上
40、一共有8条连接线除去电源和地线外与单片机链接的共有6条线,其中BL是模块的背光源,如果需要背光常亮可直接连接电源VCC。1脚RST:液晶复位脚2脚CS:液晶片选信号3脚-D/C:命令与数据操作选择端4脚-DIN:液晶数据信号5脚CLK:液晶时钟信号6脚VCC:液晶模块电源7脚-BL:液晶模块背光8脚-GND:液晶模块地图2.9 TFT1.8寸液晶屏原理图图2。9为1。8寸TFT液晶屏模块原理图。2.6 电源电压监控大家都知道当电池电量消耗时对外的表现形式就是电池电压的降低,如何知道电池电量是否消耗完了呢,现在一般的智能家电上都会有电源电量指示的,如我们经常用的MP3、MP4、以及手机、笔记本电
41、脑等。通常情况下我们都是电源电压固定来测量一个外来电压。但是本体统使用的是手机电池,本身电源电压就不固定,没有一个准确的基准源那么测出来的电压值肯定也不准确。一般情况下用AD测量电压的计算公式为:U=(data/2n)V其中:U为待测电压 data为从AD芯片读出的数值 n为AD的位数(例如ADC0809是8位AD) V为电源电压本系统设计的电源电压监控系统利用高精度的TL431为AD的基准源同时也用来作为电源电压监控系统的基准源。其原理与一般情况下的AD测量正好相反,一般情况下是知道电源电压来测量一个不确定的电压,而该系统是知道一个确定的电压来测量电源电压。计算公式为:V=U2n/data其
42、中:V为电源电压 U为TL431输出固定2.5V电压 n为AD的位数(例如ADC0809是8位AD) data为从AD芯片读出的数值电源电压监控部分采用单片机内部10位ADC选用P17为ADC输入端。具体硬件图如图2。10所示.图2。10 电源电压监控电路3 系统软件设计系统的软件语言主要是采用C语言,对单片机进行编程以实现各项功能。主程序对模块进行初始化,而后调用AD转换子程序、读温度、处理温度、显示、键盘等模块.用的是循环查询方式,来显示和控制温度,主程序的主要功能是负责电压的实时显示以及温度的实时显示、读出并处理DS18B20的测量的当前温度值并负责调用各子程序,其程序流程如图3.1所示
43、。图3.1系统程序流程图3。1 AD7705电压采集子程序AD7705上电或复位后,器件等待在通信寄存器上进行一次写操作。这一写到通信寄存器的数据决定下一次操作是读还是写,同时决定这次读操作或写操作在那个寄存器上发生.所以,写任何其他寄存器首先要写通信寄存器,然后才能写选定的寄存器.所有的寄存器(包括通信寄存器本身和输出数据寄存器)进行读操作之前,必须先写通信寄存器,然后才能读选定的寄存器。此外,通信寄存器还控制等待模式和通道选择,DRDY状态也可以从通信寄存器上读出。如图3.2所示。图3。2 AD7705软件流程图3.2 计算温度子程序计算温度子程序包括初始化,判断DS18B20是否存在,若
44、存在则进行一系列的读操作,若不存在则返回.其程序流程图如图3。3所示。图3。3 DS18B20流程图3。3 按键子程序按键子程序主要负责电压测量时量程的调整,主程序每循环一次都要对按键进行扫描,判断是否有输入键按下,如果有按键按下则修改AD7705内部增益设置同时修改显示屏上测量电压的量程.如图3。4所示。开 始判断是否有按键按下退 出修改AD内部增益和显示屏显示信息图3.4 按键判断流程图结 束 语完成情况:此次电路设计基本达到设计要求,可以实现电压的测量以及可以实测当时温度,且做出了实物.所得收获:通过几周的努力,基于单片机的电压表的毕业设计终于在老师的精心指导下和我的努力下完成了。设计能
45、够成功的完成是与余老师细心的指导和帮助分不开的,在此表示忠心的感谢。在这次毕业设计过程中.通过资料的查阅,制定方案等一系列过程,极大的丰富了我的专业知识,使我的理论与实际动手能力又有了一个很大的提高,特别是在单片机编程方面又学到了不少新的东西。毕业设计使我有机会把自己平时理论学习能够运用到实际中去,理论与实践相结合使我对自己的毕业设更加得心应手,在设计过程中同样也发现自己在各方面还存在不少问题,但经过自己细心修复后一切正常。经过这次也使我真正的认识单片机管脚的重要性,也从此得到了一个教训,做事一定有条理,不能急躁的去干,否则造成大返工,吃亏终就是自己。 毕业设计对我来说,是三年来所学的所有知识
46、的一个非常全面的综合性应用,涉及的理论知识面也很广,需要了解各方面的知识,是理论与实践相结合的最好体现,也是对我们大学三年生活的一种肯定,所以我们大家都是用心去把它做到最好,毕业论文的编写经过了很长的时间,也发现了很多问题,但是在发现问题并解决问题的同时,不仅巩固了自己的知识,更加锻炼了自己的动手能力.参考文献1李群芳,张士军,黄建。单片微型计算机与接口技术。 北京:电子工业出版社,20082李群芳。单片机原理接口与应用。北京:清华大学出版社,20053张迎新。单片微型计算机原理、应用及接口技术。北京:国防工业出版社,19994高峰。单片微机应用系统设计及使用技术.北京:机械工业出版社,20075彭伟。单片机c语音程序设计实例基于proteus仿真.北京:电子工业出版社,2007附录一 系统总体电路图和作品实物图12西安航空职业技术学院毕