智能型充电器设计毕业设计

更新时间:2023-03-08 19:17:20 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、原始依据

充电器在日常生活中非常普遍。无论是手机、MP4都需要电源供电。这里设计一款智能型充电器,一方面将所学专业知识应用于实际;另一方面,为我们的生活带来便利。

二、参考文献

1. 张迎辉,贡雪梅,赵润林,栾良龙. 单片机实训教程. 北京大学出版社,2005年9月

2.陈明莹等. 8051单片机课程实际实训教材. 清华大学出版社,2004年 3.罗晓沛. 计算机综合应用知识第二版. 清华大学出版社,2002年

4.金春林、邱慧芳、张皆喜编著 AVR系列单片机C语言编程与应用实例 清华大学出版社 2003

5.武锋、陈新建编著 PIC单片机C语言开发入门 北京航空航天大学出版社 2005

6.陆坤、奚大顺等编著 电子设计技术 1997

7.卢胜利主编 智能仪器设计与实现 重庆大学出版社 2003 8.王兆安、黄俊主编 电力电子技术(第四版) 机械工业出版社 2002

摘 要

□□×××××××××(内容采用小四号宋体)

LCD液晶显示已经是人机界面的关键技术。本文对基于单片机的LCD液晶显示器控制系统进行了研究。

首先在绪论中介绍了本课题的课题背景、研究意义及完成的功能。 本系统是以单片机的基本语言汇编语言来进行软件设计,指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了。使硬件在软件的控制下协调运作。

正文中首先简单描述系统硬件工作原理,且附以系统硬件设计框图,并介绍了单片机微处理器的发展史,论述了本次毕业设计所应用的各硬件接口技术和各个接口模块的功能及工作过程, 并具体描述了8052、8279及SED1520外接电路接口的软、硬件调试。其次阐述了程序的流程和实现过程。本文撰写的主导思想是软、硬件相结合,以硬件为基础,来进行各功能模块的编写。

最后对我所开发的用单片机实现LCD液晶显示器控制原理的设计思想和软、硬件调试作了详细的论述。

关键词:×××××;×××××;×××××;×××××;

×××××

采用小四号、宋体、接排

小四号、黑体、顶格

关键词:单片机;微处理器;LCD; 8279

目 录

(三号、黑体、居中、目录两字空两格、与正文空一行)

□□第一章(空两格)☆☆☆(小三号、宋体)??????×

□□□1.1☆☆☆☆(四号宋体)??????????????× □□□1.2☆☆☆☆????????????????????× □□□1.3☆☆☆☆????????????????????× ??????

□□第四章(空两格)☆☆☆(小三号、宋体)??????×

□□□4.1☆☆☆☆????????????????????× □□□4.2☆☆☆☆????????????????????× ??????

□□参考文献(小三号、宋体)?????????????× □□附录(小三号、宋体)???????????????× □□外文资料(小三号、宋体)?????????????× □□中文译文(小三号、宋体)?????????????× □□致谢(小三号、宋体)???????????????×

目 录

第一章 概论 ???????????????????1

1.1课题背景 ?????????????????????1 1.2常见充电电池特性 ?????????????????2 1.3主要芯片选择 ???????????????????6

1.4显示模块的选择 ?????????????????6 第二章 硬件电路设计 ????????????????7 2.1显示模块访问方式的选择 ?????????????7 2.2硬件电路主要芯片 ????????????????9

2.3液晶显示 ????????????????????12 2.4硬件电路的设计 ?????????????????16

第三章 软件设计 ??????????????????19 3.1C语言开发单片机的优势 ??????????????20

3.2显示字符或汉字的原理???????????????20 3.3模块指令的说明??????????????????21 3.4显示界面及流程图?????????????????24

第四章 系统调试 ?????????????????26 4.1调试软件?????????????????????26

4.2调试过程?????????????????????28

第五章 毕业设计总结 ???????????????30

5.1主要成果与参考文献????????????????31 5.2致谢???????????????????????39

第一章 概述

第一章□□☆☆☆☆☆(居中、小三号、黑体)

1.1☆☆☆(四号、黑体、顶格) 1.1课题背景

□□☆☆☆☆☆☆☆☆☆正文(小四号、宋体,固定值22磅)

如今,随着越来越多的手持式电器的出现,对高性能、小尺寸、重量轻的电池充电器的需求也越来越大。电池技术的持续进步也要求更复杂的充电算法以实现快速、安全的充电。因此需要对充电过程进行更精确的监控,以缩短充电时间、达到最大的电池容量,并防止电池损坏。与此同时,对充电电池的性能和工作寿命的要求也不断地提高。从20世纪60年代的商用镍镉和密封铅酸电池到近几年的镍氢和锂离子技术,可充电电池容量和性能得到了飞速的发展。目前各种电器使用的充电电池主要有镍镉电池(NiCd)、镍氢电池(NiMH)、锂电池(Li-Ion)和密封铅酸电池(SLA)四种类型。

电池充电是通过逆向化学反应将能量存储到化学系统里实现的。由于使用的化学物质的不同,电池有自己的特性。设计充电器时要仔细了解这些特性以防止过度充电而损坏电。

目前,市场上卖得最多的是旅行充电器,但是严格从充电电路上分析,只有很少部分充电器才能真正意义上被称为智能充电器,随着越来越多的手持式电器的出现,对高性能、小尺寸、轻重量的电池充电器的需求也越来越大。电池技术的持续进步也要求更复杂的充电算法以实现快速、安全地充电,因此,需要对充电过程进行更精确地监控(例如对充、放电电流、充电电压、温度等的监控),以缩短充电时间,达到最大的电池容量,并防止电池损坏。因此,智能型充电电路通常包括了恒流/恒压控制环路、电池电压监测电路、电池温度检测电路、外部显示电路(LED或LCD显示)等基本单元。其框图如下:

正文开始标注页码: 位置:页面底端(页脚); 对齐方式:居中 正文开始标注页码

1

第二章 硬件电路设计

经过前面对充电器原理、液晶模块、ATmega16L等的总体了解和掌握以及对各种元器件和电路图的分析和比较后,现在就可以开始进入硬件电路的设计了。在本章里,首先将介绍一下液晶模块访问方式的两种接口电路,然后对LCD显示电路原理图作一个详细的介绍,接着介绍充电电路中所用到的各种芯片和元器件的原理和一些功能,最后对PROTEL99的使用和PCB板的绘制以及焊接做一简单

介绍,然后再将自己的设计思想和同组人所设计的两部分结合,达成统一。

2.1显示模块访问方式的选择

单片机与液晶显示模块之间的连接方式分为直接访问方式和为间接控制方式两种。如图所示,其中左为单片机,右为液晶显示模块。

(一) 直接访问方式

数据总线

PD0 PD1 PD2 PD3 PD4 PD5 PD6 PD7 RD WE 10K

P2.3 P2.2 P2.1 P2.0 DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 GND VCC V0 E /CSA /CSB R/W D/I 图2-1 直接访问方式电路图

7

LCM接口直接访问方式就是将液晶显示模块的接口作为存储器或I/O设备直

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

2.2硬件电路主要芯片

以下是ATmega16L的引脚配置:

图2-2 ATmega16L芯片引脚

引脚说明:

VCC 数字电路的电源 GND 地

端口A(PA7~PA0) 端口A 作为A/D 转换器的模拟输入端。

端口A 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口A 处于高阻状态。

8

端口B(PB7~PB0) 端口B 为8 位双向I/O 口,具有可编程的内部上拉电阻。其

输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口B 处于高阻状态。

端口C(PC7~PC0) 端口C 为8 位双向I/O 口,具有可编程的内部上拉电阻。其

输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口C 处于高阻状态。如果JTAG接口使能,即使复位出现引脚PC5(TDI)、PC3(TMS)与PC2(TCK)的上拉电阻被激活。

端口D((PD7~PD0) 端口D 为8 位双向I/O 口,具有可编程的内部上拉电阻。其

输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D处于高阻状态。

RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起

系统复位。

XTAL1 反向振荡放大器与片内时钟操作电路的输入端。 XTAL2 反向振荡放大器的输出端。

AVCC AVCC是端口A与A/D转换器的电源。不使用ADC时,该引脚应

直接与VCC连接。使用ADC时应通过一个低通滤波器与VCC相连。

AREF A/D 的模拟基准输入引脚。

2.3 液晶显示

液晶显示器是一种功耗极低的显示器。随着液晶显示技术的发展,LCD显示器的规格众多,其专用驱动芯片也相互配套,使LCD在控制和仪表系统中广泛应用提供了极大的方便。根据LCD显示原理的不同,常见和常用的LCD可以分为字符型LCD和点阵型LCD两种。不同的显示原理使得这两种LCD的指令系统、接口和功能等是不相同的,各有优缺点,但结合到本次设计的实际要求,经过比较还是选用点阵型LCD。现就点阵型LCD的显示原理、模块特点等做一简要介绍。

9

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

在本模块中,每个汉字的大小是16×16点阵,而每个字符的大小是8×16点阵,即字符的宽度为汉字的1/2。它们都是以二维数组的格式存放在ROM中。向液晶模块显示一个汉字的过程就是:由液晶屏显示区的指定字符行的指定列开始,连续输出该字符对应的字符库中的16个列数据,如果是显示字符,则输出 8个列数据即可。

上面已经介绍到,MGLS-19264液晶模块中液晶屏显示区为192×64点阵,其中,它们的每8个像素行组成一页,整个显示区共分为8页,每64列为一个区,这样,它就有左、中、右3个区,它的显示区示意图如下:

左区 中区 右区

0 1 2 ? 62 63 64 65 ? 127 DB0 ? DB7 128 129 ? 191 ? DB0 ? DB7 图2-3 液晶屏显示区示意图

液晶模块显示字符是从上到下,从左到右进行显示的。假设定义从最左上角开始显示,则先从上到下显示第0页的第一列,依次从左向右开始显示。

MGLS-19264LCM的显示部分为左、中、右3个区,可以由CS片选的取值分别进行控制,其接口的片选定义如下:

10

表2-1MGLS的片选定义表 CS1 0 CS2 0 选中区域 左区 中区 右区 未选 0 1 1 1

0 1 有了上面的知识,就可以编写显示界面这一块程序。由于每个汉字或字符在图中位置是固定的,只要定义了相应的选区及X、Y地址,就可以显示出具体的位置。用lr来表示汉字的区域,当lr=0,表示左区;lr=1,表示中区;lr=2,表示右区。X表示页面,Y表示列地址。则(lr.X.Y)就可以定义出这个字在屏上的实际位置。以第一行的“智”字为例,这个字位于模块的左区,则lr=0;它位于第一页和第二页,则X=0;它位于列地址的48-63字节,Y=48,那么“智”就可以通过(0.0.48)精确地表示出它的位置。这里要注意的是每个汉字占用的行地址是两页,如“智”字占的就是X0和X1,即第二行的汉字其X=2而不是1。因此,第二行的“电”就应该表示为(0.2.0),其它字符依此设计即可。 液晶显示控制驱动器

HD61202及其兼容液晶显示控制器是一种带有驱动输出的图形液晶显示控制器,而在小规模点阵液晶显示模块上使用液晶显示驱动器组成液晶显示驱动控制系统是非常有益的,这将使液晶显示模块的硬件电路简单化,从而降低模块的成本,同时也提高了对软件功能的要求。许多显示功能如光标、字符库、闪烁都需要由软件编制而成。HD61203和HD61202就是这类液晶显示驱动控制器套件。之所以称它们为套件是因为HD61203和HD61202必须配套使用,通常有12864和19264两种规格。其特点如下:

1.内藏64*64=4096位显示RAM,RAM中每位数据对应LCD屏上的一个点的亮、暗状态。

2.HD61202及其兼容控制器是列驱动器,具有64路列驱动输出。

3.HD61202及其兼容控制驱动器读、写时序与68系列微处理妻相符,因此它可直接与68系列微处理器借口相联。 液晶显示模块的特点

MGLS-12864图形液晶显示模块的驱动和控制系统是由一片KS0107B或兼

11

容驱动器( HD61203 )作为行驱动器和两片KS0108B或兼容驱动器(HD61203) 作为列驱动器组成的。

它的主要技术参数及其供电特点如下:

1) 电源:DC+5V,模块内自带用于LCD驱动的负压电路。 2) 显示内容:128?64全屏幕点阵。 3) 指令形式:七种指令。

4) 接口形式:与控制器采用8位数据总线和8位控制线相连。 5) 工作环境:-10~+50℃。

6) 模块应用有三种电源:逻辑电源、液晶驱动电压、背光电压。

7) 本次选用的模块是双电源供电(VDD/V0),需要提供一个液晶驱动电压,用

以调节对比度,接在液晶模块的V0引脚上,由于液晶的对比度会随着温度的变化而相应变化,所以其液晶显示驱动电压值应随着温度作相应的调整,这里采用了一个电位器,调整电压值。

8) 背光供电为3.8-4.1V的支流电源,选用电源太大不仅增加功耗,更有可能损

坏背光灯和缩短模块的使用寿命。 MGLS-12864的逻辑电路图如下:

VDD VSS V0 /CSA /CSB DB0 DB7 D/I R/W E HD61202 * LCD: VGLS-12864 64 128?64 DOTS 64 HD61202 (1) 64 HD61202 (2) 图2-4 MGLS-12864的逻辑电路图

12

MGLS-12864液晶显示模块一共有20个引脚,它的接口定义如下:

表2-2 MGLS-12864的接口电路

序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 符号 D7 D6 D5 D4 D3 D2 D1 D0 E R/W D/I V0 VCC GND CS1 CS2 VOUT RET LED+ LED- 状态 三态 三态 三态 三态 三态 三态 三态 三态 输入 输入 输入 — — — 输入 输入 — 输入 — — 功 能 数据总线 数据总线 数据总线 数据总线 数据总线 数据总线 数据总线 数据总线 R/W=“L”,E的下降沿锁存数据线 R/W=“H”,E为“H”时,数据由控制器输出至数据线 R/W=“L”,E=“H”数据由控制器输出数据线 R/W=“H”,E的下降沿,数据由数据线输入到控制器 D/I=“L”,表示DB7~DB0为显示数据 D/I=“H”,表示DB7~DB0为显示指令 液晶显示器驱动电压 电源正 电源地 片选信号 片选信号 LCD负压驱动电压 复位信号 显示模块背光电源 显示模块背光电源 2.4 硬件电路的设计

经过对以上对ATmega16L芯片的端口、存储器、时钟电路、以及复位电路和LCD液晶显示等原理的介绍后,现在就可以完成对这部分硬件电路的设计了。再结合前面的分析采用间接访问的方式实现单片机与液晶显示模块之间的连接。LCD模块的8位数据线接在了Atmega16L芯片B口的8位数据线上,这里用了一个74LS24作为锁存器使它们间接连接在一起。LCD的EN、D/I、CS1、CS2、R/W分别连接到PA3~PA7上,其详细的接法见下图

13

图2-5 硬件接线图

经过前面的努力,智能充电器硬件电路的设计在本人及同组人的共同努力下已经完成,接下来便是根据前面的设计用软件画出其原理图并生成PCB板。PROTEL99SE是一个全32位的电路板设计软件,使用该软件可以容易地设计电路原理图、画元件图、设计电路板图、画元件封装图和电路仿真。

在这里主要用它来绘制电路原理图和生成印制电路板。原理图的设计步骤如下:

(1)

设置原理图设计环境。其中,工作环境设置是使用Design/Options和Tool和Preferences菜单进行的,画原理图环境的设置主要包括图纸大小、捕捉栅格、电气栅格、模板设置等。

(2) (3)

放置元件,将电气和电子元件放置在图纸上。

原理图布线。元件一旦放置在原理图上,不需要用导线将元件连接起来,连接时一定要符合电气规则。

14

(4) 编辑和调整。编辑元件的属性。包括元件名、参数、封装图等。调整元件和导线的位置等操作。

本次设计所用的主要元件属性如下:

表2-3 主要元件表

说明 单片机 LCD 电阻 电容 锁存器 编号 U1 J2 R C U5 封装 DIP-40 DIP-20 AXIAL0.3 RAD0.1 DIP-20 TO46 XTAL-1 元件名称 Atmega16 LCD模块 RES2 CAP 74LS245 2N2222A XTAL LM358 NPN三极管 Q 晶体 通用运放 X U2A,U2B DIP8 (5) 检查原理图。使用电气规则功能(ERC)检查原理图的连接是否合理和正确。给出检查报告,若有错误则要根据错误进行改正。

(6) 生成网络表。所谓网络表就是元件名、封装、参数及元件之间的连接表,通过该表可以确认各个元件和它们之间的关系。

(7) 打印原理图。

对电路板的设计主要分为以下几个步骤; (1)

使用原理图编辑器设计原理图,进行电气检查(ERC)并生成原理图的

网络表。 (2)

进入电路板(PCB)环境,使用电路向导确定电路板的层数、尺寸等电

路板参数。 (3)

使用Design/Netlist菜单,调入网络表。

由于在前面的元件封装不规范,这里面出现了许多错误,通过请教老师及自己的不懈努力,花了数天的时间才全部改了出来。

(4)

布置元件,就是将元件合理地分布在电路板上。自动布置元件或人

工布置元件,多次布置直到自己满意为止。

人工布线是画电路板的基础,但比较耗时和费力,另外由于自身经验的不足,只得先采用自动布线,在此基础上作了适当的修改。

(5)

完成修饰等工作,完成整个电路板的设计。

15

接下来是焊接的工作,这部分相对来说并不陌生,在大二时曾进行过电子课程的实习,主要就是完成收音机的焊接。虽然以后接触得比较少,但通过几天的练习,还是基本圆满地完成了任务。焊接通常要求:①焊点接触良好,尤其避免虚焊的产生;②焊点要有足够的机械强度以保证被焊点不致滑落;③焊点表面应美观,有光泽。这块板子面积不算大(约90cm?70cm),元器件引脚多,看起来很密集。从焊下来的结果来看,焊点还可以,也算比较美观,最关键的是没有短路的情况发生。

焊接完成后,整个硬件电路原理、绘制原理路、焊接等工作已全部完成,下面转到软件部分的设计。

16

本文来源:https://www.bwwdw.com/article/6q37.html

Top