583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计

上传人:痛*** 文档编号:69750544 上传时间:2022-04-06 格式:DOC 页数:44 大小:1.12MB
收藏 版权申诉 举报 下载
583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计_第1页
第1页 / 共44页
583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计_第2页
第2页 / 共44页
583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计_第3页
第3页 / 共44页
资源描述:

《583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计》由会员分享,可在线阅读,更多相关《583742395毕业设计论文基于AT89C51单片机智能充电器的电源和显示设计(44页珍藏版)》请在装配图网上搜索。

1、 毕业设计(论文) 题目: 基于AT89C51单片机智能充电器的电源和显示设计学 院: 继 续 教 育 学 院 助学单位:辽 宁 石 化 职 业 技 术 学 院 办学形式: 自 学 考 试 专 业: 自 动 化 准考证号: 姓 名: 指导教师: 2011年05月30日毕业设计(论文)任务书学生姓名准考证号自考班级自动化092设计(论文)题目题目 基于AT89C51单片机智能充电器的电源和显示设计设计目的设计一个智能充电器,要认真并准确地理解有关要求,通过AT89C51单片机对充电过程进行智能控制。毕业设计(论文)的主要内容设计基本要求使充电器可以实时采集电池的电压和电流,并对充电过程进行智能控

2、制。它可以自动计算电池的已充电量和剩余的充电时间,也可以改变参数来适应各种不同电池的充电让系统能安全、正常地工作。设计成果及具体要求1.根据题目要求的性能指标,通过查阅有关资料,确定系统设计方案,并设计其硬件电路图。2.画出电路原理图,分析主要模块的功能,完成系统硬件的设计,对系统进行相关的调试。3.完成毕业设计。任务下达时间2011 年 月 日指导教师签 字要求完成日期2011 年 月 日评阅(审)人意 见签字:年 月 日专 业指导委员会意 见负责人签字:年 月 日备 注注:此表一份,与该生毕业设计(论文)一起定装。 基于单片机智能充电器的电源和显示设计摘 要 电子技术的快速发展使得各种各样

3、的电子产品都朝着便携式和小型轻量化的方向发展,也使得更多的电气化产品采用基于电池的供电系统。目前,较多使用的电池有镍镉、镍氢、铅蓄电池和锂电池。它们的各自特点决定了它们将在相当长的时期内共存发展。由于不同类型电池的充电特性不同,通常对不同类型,甚至不同电压、容量等级的电池使用不同的充电器,但这在实际使用中有诸多不便。 本文介绍一种基于AT89C51单片机的智能充电器的设计方法。该充电器可以实时采集电池的电压和电流,并对充电过程进行智能控制。它可以自动计算电池的已充电量和剩余的充电时间,也可以改变参数来适应各种不同电池的充电。系统中的管理电路还具有保护功能,可防止电池的过充和过放对电池造成。 本

4、系统是以单片机的基本语言汇编语言来进行软件设计,指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。使硬件在软件的控制下协调运作。 正文中首先简单描述系统硬件工作原理,且附以系统硬件设计框图,并介绍了单片机微处理器的发展史,论述了本次毕业设计所应用的各硬件接口技术和各个接口模块的功能及工作过程;其次阐述了程序的流程和实现过程。本文撰写的主导思想是软、硬件相结合,以硬件为基础,来进行各功能模块的编写。关键词:单片机 , 智能 , 充电器 AbstractThe rapid development of electronic techno

5、logy makes a wide range of electronic products are moving in the direction of small lightweight portable and development, but also makes more use of electric products, battery-based power supply system. Currently, more use of nickel-cadmium battery, nickel hydride, lead-acid batteries and lithium ba

6、tteries. Determined by the characteristics of their own they will coexist for a long period of development. Due to different characteristics of different types of battery charging, usually of different types, or even different voltage, battery capacity of the different levels of the charger, but ina

7、ctual use a lot of inconvenience. This article describes the AT89C51 microcontroller based smart charger design. The battery charger can be collected in real time voltage and current, and the intelligent control of charging process. It can automatically calculate the amount of the battery is charged

8、 and the remaining charging time, you can also change the parameters to adapt to different battery charging. Management system also has a protection circuit to prevent battery overcharge and over discharge the battery cause. This system is the basic language of the microcontroller assembly language

9、for software design, the execution speed, to save storage space. In order to facilitate expansion and change, the software design is modular in structure, so that the logic of programming is more concise. The hardware under the control of the co-operation with the software. First, a brief descriptio

10、n of the body of the working principle of the system hardware, and attached to the system block diagram of hardware design, and describes the history of the development of single chip microprocessor, discusses the application of this graduation design technology and the various hardware interface fu

11、nctions of each interface module and work Process; second section describes the process flow and implementation process. The main idea of this writing is the software and hardware combination with hardware-based, for the preparation of the functional modules. Keywords: microcontroller、 smart、 charge

12、r目 录摘 要IIAbstractIII第一章绪论11.1课题背景11.2 常见充电电池特性及其充电方式21.3主要芯片的选择31.4 液晶显示模块的选择5第二章 硬件电路设计62.1液晶显示模块两种访问方式接口电路的选择62.2.硬件电路主要芯片82.3 LCD液晶显示102.3.1 LCD的显示原理102.3.2 液晶显示控制驱动器122.3.3 液晶显示模块的特点122.4 硬件电路设计152.4.1 充电电路的设计162.4.2 控制电路的设计172.4.3智能充电器的信息显示18第三章 PROTEL99的应用简介20第四章 软件设计224.1.用C语言开发单片机的优势224.2液晶显

13、示汉字或字符的原理234.3 LCD模块的指令说明244.4 液晶显示界面264.5 系统程序流程图274.6 智能充电器的软件设计30第五章 毕业设计总结325.1主要成果325.2 经验总结和感谢32参考文献34附录一35附录二36第一章绪论1.1课题背景如今,随着越来越多的手持式电器的出现,对高性能、小尺寸、重量轻的电池充电器的需求也越来越大。电池技术的持续进步也要求更复杂的充电算法以实现快速、安全的充电。因此需要对充电过程进行更精确的监控,以缩短充电时间、达到最大的电池容量,并防止电池损坏。与此同时,对充电电池的性能和工作寿命的要求也不断地提高。从20世纪60年代的商用镍镉和密封铅酸电

14、池到近几年的镍氢和锂离子技术,可充电电池容量和性能得到了飞速的发展。目前各种电器使用的充电电池主要有镍镉电池(NiCd)、镍氢电池(NiMH)、锂电池(Li-Ion)和密封铅酸电池(SLA)四种类型。电池充电是通过逆向化学反应将能量存储到化学系统里实现的。由于使用的化学物质的不同,电池有自己的特性。设计充电器时要仔细了解这些特性以防止过度充电而损坏电。目前,市场上卖得最多的是旅行充电器,但是严格从充电电路上分析,只有很少部分充电器才能真正意义上被称为智能充电器,随着越来越多的手持式电器的出现,对高性能、小尺寸、轻重量的电池充电器的需求也越来越大。电池技术的持续进步也要求更复杂的充电算法以实现快

15、速、安全地充电,因此,需要对充电过程进行更精确地监控(例如对充、放电电流、充电电压、温度等的监控),以缩短充电时间,达到最大的电池容量,并防止电池损坏。因此,智能型充电电路通常包括了恒流恒压控制环路、电池电压监测电路、电池温度检测电路、外部显示电路(LED或LCD显示)等基本单元。其框图如下:图1-1 智能充电器基本框图1.2 常见充电电池特性及其充电方式电池充电是通过逆向化学反应将能量存储到化学系统里实现的,由于使用的化学物质的不同,电池的特性也不同,其充电的方式也不大一样。(1)电池的安全充电 现代的快速充电器( 即电池可以在小于3 个小时的时间里充满电,通常是一个小时) 需要能够对单元电

16、压、充电电流和电池温度进行精确地测量,在充满电的同时避免由于过充电造成的损坏。(2)充电方法 SLA 电池和锂电池的充电方法为恒定电压法要限流; NiCd 电池和NiMH 电池的充电方法为恒定电流法,且具有几个不同的停止充电的判断方法。(3)最大充电电流 最大充电电流与电池容量(C) 有关。最大充电电流往往以电池容量的数值来表示。例如,电池的容量为750 mAh,充电电流为750 mA,则充电电流为1C (1 倍的电池容量)。若涓流充电时电流为C/40,则充电电流即为电池容量除以40。(4)过热 电池充电是将电能传输到电池的过程。能量以化学反应的方式保存了下来。但不是所有的电能都转化为了电池中

17、的化学能。一些电能转化成了热能,对电池起了加热的作用。当电池充满后,若继续充电,则所有的电能都将转化为电池的热能。在快速充电时这将使电池快速升温,若不及时停止充电就会造成电池的损坏。因此,在设计电池充电器时,对温度进行监控并及时停止充电是非常重要的。现代消费类电器主要使用如下四种电池: 密封铅酸电池 (SLA) 镍镉电池 (NiCd) 镍氢电池(NiMH) 锂电池(Li-Ion)在正确选择电池和充电算法时需要了解这些电池的背景知识。密封铅酸电池(SLA) 密封铅酸电池主要用于成本比空间和重量更重要的场合,如UPS和报警系统的备份电池。SLA 电池以恒定电压进行充电,辅以电流限制以避免在充电过程

18、的初期电池过热。只要电池单元电压不超过生产商的规定( 典型值为2.2V), SLA 电池可以无限制地充电。镍镉电池(NiCd) NiCd 电池目前使用得很普遍。它的优点是相对便宜,易于使用;缺点是自放电率比较高。典型的NiCd 电池可以充电1000 次。失效机理主要是极性反转。在电池包里第一个被完全放电的单元会发生反转。为了防止损坏电池包,需要不间断地监控电压。一旦单元电压下降到1.0V 就必须停机。NiCd 电池以恒定电流的方式进行充电。镍氢电池(NiMH) 在轻重量的手持设备中如手机、手持摄象机,等等镍氢电池是使用最广的。这种电池的容量比NiCd 的大。由于过充电会造成NiMH 电池的失效

19、,在充电过程中进行精确地测量以在合适的时间停止是非常重要的。和NiCd 电池一样,极性反转时电池也会损坏。NiMH 电池的自放电率大概为20%/ 月。和NiCd 电池一样,NiMH 电池也为恒定电流充电。锂电池 (Li-Ion) 和本文中所述的其他电池相比,锂电池具有最高的能量/ 重量比和能量/ 体积比。锂电池以恒定电压进行充电,同时要有电流限制以避免在充电过程的初期电池过热。当充电电流下降到生产商设定的最小电流时就要停止充电。过充电将造成电池损坏,甚至爆炸。1.3主要芯片的选择 硬件电路的核心器件选用ATMEL公司的AT89C51芯片,AT89C51是一种带4K字节闪烁可编程可擦除只读存储器

20、(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。(1) 主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0

21、Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 (2) 振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。(3)芯片擦除: 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作

22、中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。1.4 液晶显示模块的选择LCD显示模块是一种被动显示器,具有功耗低,显示信息大,寿命长和抗干扰能力强等优点,在低功耗的单片机系统中得到大量使用。液晶显示模块和键盘输入模块作为便携式仪表的通用器件,在单片机系统的开发过程中也可以作为常用的程序和电路模块进

23、行整体设计。液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就显示黑色,这样即可显示出图形。在单片机系统中使用液晶显示模块作为输出器件有以下优点:(1) 显示质量高液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,因此液晶显示器画质高而且不会闪烁。(2) 数字式接口液晶显示器都是数字式的,和单片机系统的接口更加简单。(3) 体积小,重量轻(4) 功率消耗小液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因此耗电量比其它显示器要小得多。第二章 硬件电路设计经过前面对充电器原理、液晶模块等的总体了解和掌握以及对各种元器件和电路图的分析和比较后,现在就可以开

24、始进入硬件电路的设计了。在本章里,首先将介绍一下液晶模块访问方式的两种接口电路,然后对LCD显示电路原理图作一个详细的介绍,接着介绍充电电路中所用到的各种芯片和元器件的原理和一些功能. 2.1液晶显示模块两种访问方式接口电路的选择单片机与液晶显示模块之间的连接方式分为直接访问方式和为间接控制方式两种。如图2-1和图2-2所示,其中左为单片机,右为液晶显示模块。 (一) 直接访问方式PD0PD1PD2PD3PD4PD5PD6PD7RDWEP2.3P2.2P2.1P2.0DB0DB1DB2DB3DB4DB5DB6DB7GNDVCCV0E/CSA/CSBR/WD/I10K 数据总线 GND +5V电

25、位器 负电源 1 32 74LS00A11A10A9A8MPU 图2-1 直接访问方式电路图 LCM接口直接访问方式就是将液晶显示模块的接口作为存储器或I/O设备直接挂在单片机总线上,单片机以访问存储器或I/O设备的方式操作液晶显示模块的工作。直接访问方式的接口电路如图2-1所示,在图中,单片机通过高位地址A11控制CSA,A10控制CSB,以选通液晶显示屏上各区的控制器;同时用地址A9作为R/W信号控制数据总线的数据流向;用地址A8作为D/I信号控制寄存器的选择,E(使能)信号由RD和WE共同产生,这样就实现了单片机对液晶显示模块的电路边接。电位器用于显示对比度的调节。(二)间接控制方式 P

26、1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P3.4 P3.3 P3.2 P3.1 P3.0DB7DB6DB5DB4DB3DB2DB1DB0/CSA/CSBER/WD/IVCCV0GND电位器+5V10K 负电源 GNDMPU LCM接口图2-2 间接控制方式电路图间接控制方式是单片机通过自身的或系统中的并行接口与液晶显示模块连接。单片机通过对这些接口的操作,以达到对液晶显示模块的控制。这种方式的特点就是电路简单,控制时序由软件实现,可以实现高速单片机与液晶显示模块的接口。电路图如图2-2所示。在图中以 P1口作为数据口,P3.4为CSA,P3.3为CSB,P

27、3.2为使能端,P3.1为R/W和P3.0为D/I信号。电位器用于显示对比度的调节。通过比较再结合本次设计的实际条件,由于AT89C51芯片有WR、RD管脚,为了使电路简单且方便软件实现,所以最终决定采用直接控制的方式来设计LCD显示电路。2.2.硬件电路主要芯片1 AT89C51主要引脚功能:(1).管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P

28、0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输

29、出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部

30、中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想

31、禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电

32、源(VPP)。(2)XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2.3 LCD液晶显示2.3.1 LCD的显示原理液晶显示器是一种功耗极低的显示器。随着液晶显示技术的发展,LCD显示器的规格众多,其专用驱动芯片也相互配套,使LCD在控制和仪表系统中广泛应用提供了极大的方便。根据LCD显示原理的不同,常见和常用的LCD可以分为字符型LCD和点阵型LCD两种。不同的显示原理使得这两种LCD的指令系统、接口和功能等是不相同的,各有优缺点,但结合到本次设计的实际要求,经过比较还是选用点阵型LCD。现就点阵型LCD的显示原理、模块特点等做一简要介绍。要想在

33、液晶模块上显示一个汉字或字符,需要3个最基本的控制操作:分别向3个控制器写指令代码、写显示数据和读显示数据。这里要特别引起注意的是完成这3项操作的前提条件是KS0108B控制器处于准备好的状态,即BUSY=0,由模块的软件特性知道,当BUSY=1时,系统的接口电路处于被封锁的状态,是不能接受除读状态指令外的任何操作的。因此在访问控制器之前,一定要判断控制器的当前状态。具体到软件设计时,则需设计一判忙程序,在判断BUSY=0后,再往下进行操作。在本模块中,每个汉字的大小是1616点阵,而每个字符的大小是816点阵,即字符的宽度为汉字的1/2。它们都是以二维数组的格式存放在ROM中。向液晶模块显示

34、一个汉字的过程就是:由液晶屏显示区的指定字符行的指定列开始,连续输出该字符对应的字符库中的16个列数据,如果是显示字符,则输出8个列数据即可。上面已经介绍到,MGLS-19264液晶模块中液晶屏显示区为19264点阵,其中,它们的每8个像素行组成一页,整个显示区共分为8页,每64列为一个区,这样,它就有左、中、右3个区,它的显示区示意图如下:左区 中区 右区0 1 2 62 63 64 65 127128 129 191DB0DB7DB0DB7 图2-3液晶屏显示区示意图液晶模块显示字符是从上到下,从左到右进行显示的。假设定义从最左上角开始显示,则先从上到下显示第0页的第一列,依次从左向右开始

35、显示。MGLS-19264LCM的显示部分为左、中、右3个区,可以由CS片选的取值分别进行控制,其接口的片选定义如下:表2-1 MGLS的片选定义表CS1CS2选中区域 0 0 左区 0 1 中区 1 0 右区 1 1 未选 有了上面的知识,就可以编写显示界面这一块程序。由于每个汉字或字符在图中位置是固定的,只要定义了相应的选区及X、Y地址,就可以显示出具体的位置。用lr来表示汉字的区域,当lr=0,表示左区;lr=1,表示中区;lr=2,表示右区。X表示页面,Y表示列地址。则(lr.X.Y)就可以定义出这个字在屏上的实际位置。以第一行的“智”字为例,这个字位于模块的左区,则lr=0;它位于第

36、一页和第二页,则X=0;它位于列地址的48-63字节,Y=48,那么“智”就可以通过(0.0.48)精确地表示出它的位置。这里要注意的是每个汉字占用的行地址是两页,如“智”字占的就是X0和X1,即第二行的汉字其X=2而不是1。因此,第二行的“电”就应该表示为(0.2.0),其它字符依此设计即可。2.3.2 液晶显示控制驱动器HD61202及其兼容液晶显示控制器是一种带有驱动输出的图形液晶显示控制器,而在小规模点阵液晶显示模块上使用液晶显示驱动器组成液晶显示驱动控制系统是非常有益的,这将使液晶显示模块的硬件电路简单化,从而降低模块的成本,同时也提高了对软件功能的要求。许多显示功能如光标、字符库、

37、闪烁都需要由软件编制而成。HD61203和HD61202就是这类液晶显示驱动控制器套件。之所以称它们为套件是因为HD61203和HD61202必须配套使用,通常有12864和19264两种规格。其特点如下:1内藏64*64=4096位显示RAM,RAM中每位数据对应LCD屏上的一个点的亮、暗状态。2HD61202及其兼容控制器是列驱动器,具有64路列驱动输出。3HD61202及其兼容控制驱动器读、写时序与68系列微处理妻相符,因此它可直接与68系列微处理器借口相联。4HD61202及其兼容控制器的占空比为1/321/64。2.3.3 液晶显示模块的特点MGLS-12864图形液晶显示模块的驱动

38、和控制系统是由一片KS0107B或兼容驱动器( HD61203 )作为行驱动器和两片KS0108B或兼容驱动器(HD61203) 作为列驱动器组成的。它的主要技术参数及其供电特点如下:(1) 电源:DC+5V,模块内自带用于LCD驱动的负压电路。(2) 显示内容:12864全屏幕点阵。(3) 指令形式:七种指令。(4) 接口形式:与控制器采用8位数据总线和8位控制线相连。(5) 工作环境:10+50。(6) 模块应用有三种电源:逻辑电源、液晶驱动电压、背光电压。(7) 本次选用的模块是双电源供电(VDD/V0),需要提供一个液晶驱动电压,用以调节对比度,接在液晶模块的V0引脚上,由于液晶的对比

39、度会随着温度的变化而相应变化,所以其液晶显示驱动电压值应随着温度作相应的调整,这里采用了一个电位器,调整电压值。(8) 背光供电为3.8-4.1V的支流电源,选用电源太大不仅增加功耗,更有可能损坏背光灯和缩短模块的使用寿命。MGLS-12864的逻辑电路图如下:HD61202 *LCD: VGLS-12864128x64 DOTS64HD61202 (1) HD61202 (2)6464VDDVSSV0/CSA/CSBDB0DB7D/IR/WE图2-4 MGLS-12864的逻辑电路图MGLS-12864液晶显示模块一共有20个引脚,它的接口定义如下:表2-2 MGLS-12864的接口电路序

40、号符号状态功能D7三态数据总线D6三态数据总线D5三态数据总线4D4三态数据总线5D3三态数据总线6D2三态数据总线7D1三态数据总线8D0三态数据总线9E输入R/W=“L”,E的下降沿锁存数据线R/W=“H”,E为“H”时,数据由控制器输出至数据线10R/W输入R/W=“L”,E=“H”数据由控制器输出数据线R/W=“H”,E的下降沿,数据由数据线输入到控制器11D/I输入D/I=“L”,表示DB7DB0为显示数据D/I=“H”,表示DB7DB0为显示指令12V0液晶显示器驱动电压13VCC电源正14GND电源地15CS1输入片选信号16CS2输入片选信号17VOUTLCD负压驱动电压18R

41、ET输入复位信号19LED+显示模块背光电源20LED-显示模块背光电源2.4 硬件电路设计 该电路主要由充电电路、充放电控制电路、显示和接口电路组成,图1所示是其电路组成框图。充放电控制电路充电电路充放电控制电路充放电控制电路充放电控制电路充电电路 图2-5 智能充电器的组成原理图2.4.1 充电电路的设计电池充电有恒压、恒流两种充电方式,事实上,恒压、恒流源电路也是充电电路的主要组成部分。由于各种电池对充电电压和充电电流的要求不同,因此,实现智能充电必须根据各种电池的自身要求来调整充电电压和充电电流的大小。这里选择bq2054集成电路作为恒压、恒流源模块来对电池进行充电。为了保证电池的安全

42、,当电池电压和温度超过设定的极限值时,bq2054将禁止对电池进行充电。而当电池电压小于低电压阀值时,bq2054将用恒流方式进行充电。图2所示是该智能充电器的恒压恒流电路原理图。图2中的GB+、GB-分别连接充电电池的正极和负极,以为充电电池提供充电电流的通道。数字电位器MAX5434通过串行数据总线和控制电路进行通信,以确定电位器的阻值,并改变电池电压分配网络的比值,从而改变bq2054中BAT脚的输入电压,以便bq2054根据BAT脚电压的大小来改变对电池的充电电压,最终达到对电池进行恒流、恒压充电的目的。2.4.2 控制电路的设计 图3所示是该充电器的充放电控制电路。图中,将PWMCT

43、L连接到bq2054的MOD输出脚,便可用MOD输出的脉冲信号控制三极管的导通和关闭,从而改变充电电流的大小。24 V电源是充电电路的外部输入电源,可用来提供充电电流。GB+连接到充电电路的电池正极,其电压就是充电电池的电压,当电池电压没有达到设定电压时,充电电路将以恒流方式对其进行充电。当电池电压达到设定充电电压后,充电电压保持恒定不变,而充电电流逐渐减少,进入相应的恒压充电阶段。 该充电器的主控电路中的CCS,DCS,VS-BAT分别是用于采集电池充电电流,放电电流,充电电压的端口,它们经过滤波放大后和AT89C51的AD转换脚相连接,并经过转换判断电池的充放电状态后,可对电池的充放电作出

44、相应的控制,这些判断和控制都是由软件来完成的。主要是通过采集充电电路中的LED1LED3等三个输出口的电平高低,并根据它们的高低电平状态组合控制电池的充电状态。XTALl、XTAL2是AT89C51和智能电池之间虚拟的异步串行通讯总线的时钟线和数据线,AT89C51的内部定时器2可提供模拟异步串行通讯总线的控制时钟。E-CHG是充电控制使能端口,可在满足充电条件并设定充电方式后置其为高电平,以启动充电电路对电池的充电,反之,当出现过温、过电流、过电压、充电故障或充电满状态时,该端为低电平,以关断充电电路。E-DSG是放电使能控制端口,当检测到镍铬电池没有放电完毕时,AT89C51就把E-DSG

45、置为高电平,启动放电电路对镍铬电池进行放电,直到放电完毕,则把其置为低电平,关闭放电电路并对镍铬电池进行充电。SDA和SCL是AT89C51的异步串行通讯总线的数据线和时钟线,它们和显示电路中AT89C51的SDA和SCL相连接,以使AT89C51作为从机和AT89C51进行通讯,从而把电池的各种信息(结构参数和实时参数)传输到AT89C51上,再由液晶显示器进行显示。两个跳线是AT89C51作为从机和AT89C51进行通讯时的地址选择信号,它们可连接或断开输入到端口的信号,它们的组合状态00,01,10,11分别代表从机的地址00,01,10,11,以便主机和从机通讯时发出地址信号,之后从机

46、通过查询作出回应,并向主机发送信息。2.4.3智能充电器的信息显示以AT89C51为核心构成的信息显示模块可通过I2C总线与4路充电管理部分的AT89C51进行通讯。当系统采集到电池的实时参数和结构参数后,即可通过LCD进行中文模式的信息显示(要显示的汉字和字符字库存储在24C16中,AT89C51通过I2C总线对其进行调用);同时利用AT89C51的TXD、RXD口线提供给RS232接口,从而完成与PC管理计算机的相连,最终完成对电池的集散式管理。第三章 PROTEL99的应用简介经过前面的努力,智能充电器硬件电路的设计在本人及同组人的共同努力下已经完成,接下来便是根据前面的设计用软件画出其

47、原理图并生成板。PROTEL99SE是一个全32位的电路板设计软件,使用该软件可以容易地设计电路原理图、画元件图、设计电路板图、画元件封装图和电路仿真。在这里主要用它来绘制电路原理图和生成印制电路板。原理图的设计步骤如下:(1) 设置原理图设计环境。其中,工作环境设置是使用Design/Options和Tool和Preferences菜单进行的,画原理图环境的设置主要包括图纸大小、捕捉栅格、电气栅格、模板设置等。(2) 放置元件,将电气和电子元件放置在图纸上。(3) 原理图布线。元件一旦放置在原理图上,不需要用导线将元件连接起来,连接时一定要符合电气规则。(4) 编辑和调整。编辑元件的属性。包

48、括元件名、参数、封装图等。调整元件和导线的位置等操作。 本次设计所用的主要元件属性如下:表3-1主要元件表说明编号封装元件名称 单片机U1DIP-40AT89C51LCDJ2DIP-20LCD模块电阻RAXIAL0.3RES2电容CRAD0.1CAP锁存器U5DIP-2074LS245NPN三极管QTO462N2222A晶体XXTAL-1XTAL通用运放U2A,U2BDIP8LM358(5) 检查原理图。使用电气规则功能(ERC)检查原理图的连接是否合理和正确。给出检查报告,若有错误则要根据错误进行改正。(6) 生成网络表。所谓网络表就是元件名、封装、参数及元件之间的连接表,通过该表可以确认各

49、个元件和它们之间的关系。(7) 打印原理图。对电路板的设计主要分为以下几个步骤;(1) 使用原理图编辑器设计原理图,进行电气检查(ERC)并生成原理图的网络表。(2) 进入电路板(PCB)环境,使用电路向导确定电路板的层数、尺寸等电路板参数。(3) 使用Design/Netlist菜单,调入网络表。由于在前面的元件封装不规范,这里面出现了许多错误,通过请教老师及自己的不懈努力,花了数天的时间才全部改了出来。(4) 布置元件,就是将元件合理地分布在电路板上。自动布置元件或人工布置元件,多次布置直到自己满意为止。人工布线是画电路板的基础,但比较耗时和费力,另外由于自身经验的不足,只得先采用自动布线

50、,在此基础上作了适当的修改。(5) 完成修饰等工作,完成整个电路板的设计。接下来是焊接的工作,这部分相对来说并不陌生,在大二时曾进行过电子课程的实习,主要就是完成收音机的焊接。虽然以后接触得比较少,但通过几天的练习,还是基本圆满地完成了任务。焊接通常要求:焊点接触良好,尤其避免虚焊的产生;焊点要有足够的机械强度以保证被焊点不致滑落;焊点表面应美观,有光泽。这块板子面积不算大(约90cm70cm),元器件引脚多,看起来很密集。从焊下来的结果来看,焊点还可以,也算比较美观,最关键的是没有短路的情况发生。焊接完成后,整个硬件电路原理、绘制原理路、焊接等工作已全部完成,下面转到软件部分的设计。第四章

51、软件设计由于本人主要负责设计软件部分,而本人之前对C语言这门课的学习不是非常的精通,因此在着手本章之前本人对C语言以及AT89C51单片机与C语言编程方面的书籍做了认真仔细的回顾、学习和再研究,这样才对下面设计工作的开展打下了基础。在本章里,本人将先介绍C语言开发的优势,然后介绍LCD的显示原理、模块的软件特性等,接下来便是最主要的整个程序的设计。4.1.用C语言开发单片机的优势C语言是一种编译型的结构化程序设计语言,具有简单的语法结构和强大的处理功能,具有运行速度快、编译效率高,移植性好和可读性强等多种优点,可以实现对系统便件的直接操作。用C语言来编写目标系统软件,可以大大缩短开发周期,且明

52、显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统。其优势如下:(1) 可以大幅度加快开发进度,程序量越大,用C语言就越有优势。(2) 无需精通单片机指令集和具体的硬件,也能够编出符合硬件实际专业水平的程序。(3) 可以实现软件的结构化编程,使得软件的逻辑结构变得清晰、有条理、便于开发小组计划任务、分工合作。源程序的可读性和可维护性都很好。(4) 省去了人工分配单片机资源的工作,在汇编语言中要为每一个子程序分配单片机的资源。在使用C语言后,只要在代码中申明一下变量的类型,编译器就会自动分配相关资源,根本不需要人工干预,从而有效地避免了人工分配单片机资源的差错。(5) 汇编

53、语言的可移植性很差,而C语言只要将一些与硬件相关的代码作适当的修改,就可以方便地移植到其它种类的单片机上。(6) C语言提供auto、static、flash等存储类型,针对单片机的程序存储空间、数据存储空间及EEPROM空间自动为变量合理地分配空间,而且C语言提供复杂的数据类型,极大地增强了程序处理能力和灵活性。C编译器能够自动实现中断服务程序的现场保护和恢复,并且提供常用的标准函数库,供用户使用。并且C编译器能自动生成一些硬件的初始化代码。(7) 对于一些复杂系统的开发,可以通过移植(或C编译器提供)的实时操作系统来实现。正由于C语言在系统开发中的优势,这次设计的所有程序设计都将采用C语言

54、编写,且通过ICCAVR编译器操作AVR的硬件资源。4.2液晶显示汉字或字符的原理 LCD本身不发光只是调节光的亮度,目前市面上的LCD显示器都是利用液晶的扭曲一向列效应制成,这是一种电场效应,夹在两片导电玻璃电极间的液晶经过一定处理,它内部的分子呈直角扭曲,当线性偏振光透过其偏振面便会旋转一个直角。当在玻璃电极上加上电压后,在电场作用下,液晶的扭曲结构消失,偏振光便可以直接通过。当去掉电场后液晶分子又恢复取扭曲结构。把这样的液晶置于两个偏振片之间,改变偏振片相对位置就可以得到白底黑子或黑底白字的显示形式。结合以上知识具体显示原理如下:( 1 ) 线段的显示点阵图形式液晶由M*N个显示单元组成

55、,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共16*8=128个点组成,屏上64*16个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的00H00FH的16字节的内容决定,当(000)=FFH时,如屏的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则显示屏的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=FFH,(003H)=00H,(00EH)=FFH,(00FH)=00H时,则在屏的顶部显示一条由8段亮线和8段暗线组成的虚线。这就

56、是LCD显示的基本原理。( 2 ) 字符的显示用LCD显示一个字符时比较复杂,因为一个字符由6*8或8*8点阵组成,既要找到和显示屏上某几个位置对应的显示RAM区的8字节,还要使每字节的不同的位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮,这样一来就组成某个字符。但对于内带字符发生器的控制器 (如HD61202)来说,显示字符就比较简单了,可让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。( 3 ) 汉字的显示汉字的显示一般采用图形方式,事先从微机中提取要显示的汉字的点阵码,每个汉字占32B,分左右

57、两半部,各占16B,左边为1、3、5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找到显示RAM对应的地址,设立光标,送上要显示的汉字的一字节,光标位置加1,送第二字节,按行按列对齐,送第三字节直到32B显示完就可在LCD上得到一个完整的汉字。4.3 LCD模块的指令说明要完成显示程序的设计,必须了解LCD液晶模块的指令系统。这里采用的LCD是北京精电蓬远显示技术公司生产的MGLS系列图形液晶显示模块,其内藏KS0108B/HD61202控制器。KS0108B及其兼容控制驱动器( HD61202 )的指令系统比较简单,一共只有7条指令,从作用上可分为两类。第一条指令和第二条指令为

58、显示状态设置类;其余指令为数据读/写操作指令。下面是各个指令的功能:1. 读状态指令R/W RSDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB01 0BUSY 0 ON/OFF REST 0 0 0 0状态字是计算机了解HD61202及其兼容控制驱动器当前状态,或是HD61202及其兼容控制驱动器向计算机提供其内部状态的唯一的信息渠道。状态字为一字节,其中仅有3位有效位,它们是:BUSY表示当前HD61202接口控制电路运行状态。BUSY=1表示HD61202正在处理计算机发来的指令或数据。此时接口电路被封锁,不能接受除读状态字以外的任何操作。BUSY=0表示HD61202接口电

59、路已处于“准备好”状态,等待计算机的访问。ON/OFF表示当前的显示状态。ON/OFF=1表示关显示状态;ON/OFF=0表示开显示状态。RESET表示当前HD61202的工作状态,即反映RST端的电平状态。当RST为低电平状态时,HD61202处于复位工作状态,RESET=1;当RST为高电平状态时,HD61202为正常工作状态,RESET=0。在指令设置和数据读写时要注意状态字中的BUSY标志。只有在BUSY=0时,计算机对HD61202的操作才能有效,因此计算机在每次对HD61202操作之前,都要读出状态字以判断BUSY是不为“0”。若不为“0”,则计算机需要等待,直至BUSY=0为止。2. 显示开关指令R/

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!