基于AVR单片机实现智能型充电器电源的设计与研究
2014-03-05陆继岩
马 岩,陈 颖,陆继岩,刘 鹏
(黑龙江交通职业技术学院,黑龙江齐齐哈尔,161000)
1 前言
电池技术的持续进步也要求更复杂的充电算法来实现快速、安全地充电。因此,需要对充电过程进行更精确地监控(例如对充、放电电流、充电电压、温度等的监控),以缩短充电时间,达到最大的电池容量,并防止电池损坏。因此,智能型充电电路通常包括了恒流/恒压控制环路、电池电压监测电路、电池温度检测电路、外部显示电路(LED或LCD显示)等基本单元。其框图如图1所示:
图1 智能充电器基本框图
2 系统的硬件设计
2.1 液晶显示模块接口电路的选择
单片机与液晶显示模块之间的连接方式分为直接访问方式和为间接控制方式两种。如图2所示是间接控制方式。其中,左为单片机,右为液晶显示模块。
图2 间接控制方式电路图
间接控制方式是单片机通过自身的或系统中的并行接口与液晶显示模块连接。单片机通过对这些接口的操作,以达到对液晶显示模块的控制。这种方式的特点就是电路简单,控制时序由软件实现,可以实现高速单片机与液晶显示模块的接口。电路图如图2-2所示。在图中以P1口作为数据口,P3.4 为 CSA,P3.3 为 CSB,P3.2 为使能端,P3.1为R/W和P3.0为D/I信号。电位器用于显示对比度的调节。
通过比较再结合本次设计的实际条件,由于Atmega16L芯片[1]没有 WR、RD 管脚,而且为了使电路简单且方便软件实现,所以最终决定采用间接控制的方式来设计LCD显示电路。
2.2 硬件电路主要芯片
2.2.1 ATmega16L 主要引脚说明
以下是ATmega16L的引脚配置:
图3 ATmega16L芯片引脚
2.2.2 Atmega16L 的存储器
AVR结构有两个主要的存储空间:数据存储器空间和程序存储器空间。此外,Atmega16L还有一个EEPROM存储器以保存数据。这三个存储器都为线性的平面结构。
2.2.3 Atmega16L 的时钟电路
单片机的时钟用于产生工作所需要的时序,其连接电路如下图4所示:
XTAL1与XTAL2分别为用作片内振荡器的反向放大器的输入和输出。考虑到其最大频率不超过8MHz,这里选用的晶振为7.3728MHz。
图4 晶体振荡器连接图
2.3 LCD 液晶显示
在本模块中,每个汉字的大小是16×16点阵,而每个字符的大小是8×16点阵,即字符的宽度为汉字的1/2。它们都是以二维数组的格式存放在ROM中。向液晶模块显示一个汉字的过程就是:由液晶屏显示区的指定字符行的指定列开始,连续输出该字符对应的字符库中的16个列数据,如果是显示字符,则输出8个列数据即可。
2.4 电源电路设计
在本次的设计中,要供电给mega16和LCD显示模块两部分,而一个LM7805[2]的输出电流不足,所以打算将mega16和显示模块分别供电,所以实际电路中用到了两片7805。下面就一个电源电路给出设计方案,另一个同样原理。
图5 5V的电源电路设计原理图
2.5 硬件电路总体设计
经过对以上对 ATmega16L 芯片[4-7]的端口、存储器、时钟电路和LCD液晶显示等原理的介绍后,现在就可以完成对这部分硬件电路的设计了,再结合前面的分析,采用间接访问方式实现单片机与液晶显示模块之间的连接。LCD模块的8位数据线接在了Atmega16L芯片B口的8位数据线上,这里用了一个74LS24作为锁存器使它们间接连接在一起。LCD 的 EN、D/I、CS1、CS2、R/W 分别连接到PA3~PA7上,其详细连接见下图6所示:
3 系统的软件设计
为了方便程序的设计,使自己在设计过程中做到思路清晰,设计起来游刃有余,这里首先画出了程序流程图,如图7。主要内容是在充电器的充电过程中,采集参数,进行电压、电流、温度的实时显示。
图6 硬件接线图
图7 主程序流程图
这次设计采用的液晶显示模块[3]本是由北京精电公司所造的图形式的MGLS-12864芯片,其用一片KS0107B或兼容驱动器(HD61203)作为行驱动器和三片KS0108B或兼容驱动器(HD61203)作为列驱动器组成的。液晶显示界面如图8所示:
图8 LCD界面显示
液晶显示的第一行为“智能型充电器”[8],由左起第四列开始显示,这样正好左右平均分配。第二行左起顶格显示“电池”,表示对充电电池的选择,可进行“锂电、镍镉、镍氢、铅酸”四种电池的选取,第三行显示电池的节数,第四行显示状态,可以在“快充、涓充、充满、放电”四个选项间进行选取,第二行到第四行左起分别显示电压、电流和温度数值。由此可见,左边的两选项在充放电的过程中是不变的,而右边的三个参数在充电过程中随时发生变化。
4 结论
本设计对充电器电源软硬件设计给出合理化方案,快速充电算法和片内EEPROM可用于存储电池信息,实现了充电参数易修改。虽然满足了设计的任务和要求,但要做得十分完美,还要对电路进行进一步的改进和提高。
[1] 金春林、邱慧芳编著.AVR系列单片机C语言编程与应用实例.清华大学出版社,2003
[2] 夏路易、石宗义编著.电路原理图与电路板设计教程.北京希望电子出版社,2002
[3] 图形液晶显示模块使用手册(第二版).北京精电蓬远显示技术有限公司.
[4] 郭永贞主编.数字电子技术.西安电子科技大学出版社,2000.
[5] 吴国经主编.单片机应用技术.中国电力出版社,2004.
[6] 徐泳龙主编.单片机原理及应用,机械工业出版社,2004.
[7] 陆坤、奚大顺等编著.电子设计技术.1997.
[8] 卢胜利主编.智能仪器设计与实现.重庆大学出版社,2003.