一种智能锂电池监测系统设计

发布者:chinapxf最新更新时间:2014-02-27 来源: elecfans关键字:锂电池监测系统  DS2762  51单片机 手机看文章 扫描二维码
随时随地手机看文章

  一、引言

  本文实现的锂电池监测系统由DS2762 锂电池监测芯片、51 单片机、液晶显示模块组成。其中的核心功能由DS2762 芯片完成的。本文介绍了系统的硬件实现和软件设计, 以及DS2762 芯片的特性和相关控制软件程序。本系统功能强大、结构简单, 可用于数码相机、智能电话及其它便携式仪器的智能锂电池模块中。

  二、系统硬件结构及工作原理

  1、系统硬件结构。本系统的硬件设计力求简洁,以便使单片机能够完成更多其他功能。硬件实现如图1 所示:

图1 硬件结构图

图1 硬件结构图

  整个系统由DS2762 锂电池监测芯片、51 单片机和液晶显示模块组成。DS2762 芯片是MAXIM公司推出的新一代智能锂电池监测芯片, 集数据采集、信息储存、安全保护于一身,具有功能强大、硬件接线简单等特点。它完成对电池当前状态的监测, 包括当前电池的充/ 放电状态、电压、电流、温度和剩余电量等参数的监测。DS2762 芯片能自动采集这些数据, 并将其放在存储器中。

  DS2762 的引脚功能如下图2 所示:

图2 引脚功能

图2 引脚功能

  PIO: 可编程的I/O 端。根据需要控制用户定义的外围电路。

  VDD: 电池正极输入。

  Vin: 感应电压输入。

  51 单片机按照用户需要对电池的相应参数读取和处理, 然后送往液晶显示模块显示。由于存放这些参数的EEPROM具有非易失性, 所以本系统具有掉电保护功能。由图1 可见, 单片机是整个系统的控制处理中心, 由于大量的工作由单片机完成, 明显地降低了系统硬件复杂度, 极大地提高了系统的智能化。[page]

  液晶显示模块显示用户需要了解的电池当前状态信息, 用户根据这些信息以作出相应的处理。它仅仅接受单片机的控制和访问。

  工作原理:系统上电后, 先确定电池的工作方式: 单片机每88ms 监测一次电压, 将DS2762的IS1 和IS2 两端的压差( Vis=Vis1- Vis2) 转换成电流后存入电流寄存器。若Vis 为正值, 说明电池正在充电; 若Vis 为负值, 说明电池正在放电, 也就是仪器正由锂电池直流电源供电。接着单片机对DS2762 发出采集电压、温度的控制命令。由于DS2762 内部有A/D 转换器和数字温度传感器, 可自动将电压、温度测量值存入DS2762 相对应的寄存器, 因此, 单片机只要等待其采样完毕后, 读取寄存器的内容, 最后送液晶显示模块显示。

  电池的剩余电量可用电流累加寄存器的值求得。电流累加寄存器的值是由DS2762 实时自动测量电池电流后更改的, 无须对其进行控制。电池充电时该值增加, 放电时该值减少。单片机读取此值后即可获得剩余电量。

  场效应管FET1、FET2 等构成DS2762的充放电保护回路。过压保护:如果电池电压Vin 超出过压门限电压Vov, 延时Tovd后,DS2762 将关闭充电场效应管FET1.欠压保护: 如果电池电压Vin 低于欠压门限电压Vuv, 延时Tuvd 后,DS2762 将关闭充电和放电场效应管FET1、FET2, 进入睡眠方式, 等待充电指令。充电过流保护:如果Vis(Vis=Vis1- Vis2)超出过流门限Voc, 延时Tocd 后, DS2762 将关闭场效应管FET1、FET2.放电过流保护:如果Vis 低于- Voc, 延时Tocd 后, DS2762 将关闭放电场效应管FET2.短路保护:如果SNS 脚的电压超过短路门限电压, 延时Tscd 后, DS2762 将关闭放电场效应管FET2.

三、系统软件实现及流程图

  为了满足监测的实时性, 单片机采用定时中断的方式访问DS2762, 进行电池参数采集。首先设置单片机的计数器为定时方式, 开启定时器, 定时长度可随需要灵活设定; 然后单片机运行其他程序, 等待定时中断的到来, 定时中断发生之后进行中断服务程序, 对数据进行采集、处理和显示; 最后重新初始化定时中断, 返回。图3 是系统总体流程图, 图4 是中断服务流程图。

  图3 系统总体流程图

图3 系统总体流程图

图4 中断服务程序流程图

图4 中断服务程序流程图

  DS2762 与单片机进行数据通讯时仅用一根数据线( DQ) , 因此必须严格按照芯片的读写时序要求来编写程序, 这样才能保证数据的正确读写。图5、图6 是DS2762 芯片对电池的工作方式和剩余电量进行监测的程序流程图:[page]

图5 电池工作方式监测流程图

图5 电池工作方式监测流程图

图6 剩余电量监测流程图

图6 剩余电量监测流程图

  说明: 1> 单片机对DS2762 进行任意存储命令操作时, 在发出每个命令之前都必须按照DS2762的复位时序要求。先发出复位信号且等待DS2762的应答( 以示DS2762 准备接受或发送数据) , 然后再发出一个ROM 命令用以选择总线上要访问的DS2762.在本文的程序流程图中此过程用"DS2762的初始化"来代替。2> 在读取寄存器的值时, 为防止读取错误, 先要检查DS2762 是否正在修改寄存器的内容。这可通过判断EEPROM寄存器的EEC 位即可。

  四、结束语

  本文介绍的基于DS2762 芯片的锂电池监测系统是一种便携式仪器的一部分。系统硬件设计简洁,且同单片机配合使用, 不仅极大地提高了智能化, 而且功能强大、操作方便, 能够与其他功能协同工作。

关键字:锂电池监测系统  DS2762  51单片机 引用地址:一种智能锂电池监测系统设计

上一篇:基于AD9851的信号发生器设计
下一篇:语音播报记事器的设计

推荐阅读最新更新时间:2024-03-16 13:36

51单片机矩阵键盘与左右流水灯控制C程序
本程序所用的原理图下载: 点这里 ,单片机芯片使用的stc89c52;找到本程序所使用的相应部分即可.这是一整个单片机开发板的电路图其他的忽略. hex文件及其工程文件下载:http://www.51hei.com/f/jzzyou.rar 以下是测试ok的源代码: /* *功能:使用矩阵按键使得按键按下时数码管上显示各自对应的数字的平方数; * 且使用定时器0中断使得彩色流水灯先以20毫秒的速度左移流动4秒后, * 然后使得彩色流水灯以20毫秒的速度右移流动; *日期:2013-05-02-16:46 *作者:徐冉 *特别说明:本程序代码已经通过调试,仅供学习使用; * */ /***********AT89C52-RC 单
[单片机]
基于51单片机的出租车计价器的设计
引言 在科学技术和经济水平快速发展的21世纪,乘坐出租车和网约车出行已经成为一种非常重要的交通出行方式。行业的转型发展让出租车行业迎来了一场新纪元。但是在出租车行业迅速发展的同时,也出现了很多问题。经营管理不善,司机服务不规范,随意定价收款的现象也是层出不穷。为了根治这种现象,出租车计价器孕育而生。出租车计价器的问世不仅减少了行业的乱象,而且让管理者和经营者更加诚信的服务乘客,在很大程度上改善了行业风气。 但是目前国内广泛使用的出租车计价器功能单一,不能满足人们的需求,人们更致力于一种功能齐全,生产成本低的出租车计价器。伴随着科技水平的提高,出租车计价器也迎来了新的变革,这时第二代出租车计价器问世了。 设计选用宏晶公司生产的STC
[单片机]
51单片机做简易PLC
最近在51hei单片机论坛上下载了一个PMW-HEX的软件,这个软件可以将三菱PLC编程软件编写的梯形图转换成HEX文件,再将这个HEX文件烧录到51 单片机上,这样51单片机就有了梯形图所编程的功能了。我觉得蛮有意思的,虽然该软件并不能兼容PLC的所有功能,甚至说很多功能不能兼容,但基本的一些指令和少量的软元件已经足够做一些简单控制功能了。基于这个我就想着自己动手做一个4入4出的简易PLC来玩玩吧,PMW-HEX的下载地址是:http://www.51hei.com/bbs/dpj-19820-1.html 想了就动手吧,否则以前学的一些电子知识就要荒废了。 因为手上只有AT89S52的单片机,那么就拿这款单片机来
[单片机]
用<font color='red'>51单片机</font>做简易PLC
51单片机 LED流水灯
使用位定义实现LED流水灯 #include reg52.h #define time 20000 sbit LED1=P2^0; sbit LED2=P2^1; sbit LED3=P2^2; sbit LED4=P2^3; sbit LED5=P2^4; sbit LED6=P2^5; sbit LED7=P2^6; sbit LED8=P2^7; void delay(unsigned int i) { while(i--); } void main() { while(1) { LED8=1; LED1=0; delay(time); LED1=1;
[单片机]
51单片机串口发送字符事例
#include reg52.h #define jingzhen 11059200UL /*使用22.1184M晶体*/ #define botelv 9600UL /*波特率定义为9600*/ unsigned char zifuchuan = 您好!n ; //待显示字符。 volatile unsigned char sending; sbit S4=P3^2; void delay(unsigned char i) { unsigned char j,k; for(j=i;j 0;j--) for(k=90;k 0;k--); } void init(v
[单片机]
51单片机两种减法指令的用法介绍
1.带借位减法指令 SUBBA,Rn;(A)(A)-(Rn)-(C),以下类同。 SUBBA,direct SUBBA,@Ri SUBBA,#data 注意:减法之前先清零C,减法指令无不带借位减法指令。 2.减1指令 DECA;(A)(A)-1,以下类同。 DECRn DEC@Ri DECdirect 例、设(R0)=7FH,在内RAM中,(7EH)=00H,(7FH)=40H 执行:DEC@R0 DECR0 DEC@R0 结果为: (R0)= 7EH,(7EH)=0FFH,(7FH)=3FH。
[单片机]
51单片机外部中断触发方式
51单片机的外部中断有两种触发方式可选:电平触发和边沿触发。选择电平触发时,单片机在每个机器周期检查中断源口线,检测到低电平,即置位中断请求标志,向CPU请求中断。选择边沿触发方式时,单片机在上一个机器周期检测到中断源口线为高电平,下一个机器周期检测到低电平,即置位中断标志,请求中断。 这个原理很好理解。但应用时需要特别注意的几点: 1) 电平触发方式时,中断标志寄存器不锁存中断请求信号。也就是说,单片机把每个机器周期的S5P2采样到的外部中断源口线的电平逻辑直接赋值到中断标志寄存器。标志寄存器对于请求信号来说是透明的。这样当中断请求被阻塞而没有得到及时响应时,将被丢失。换句话说,要使电平触发的中断被CPU响应并执行,必须保证外部中
[单片机]
80C51单片机上电复位和复位延时的时序分析
80C51单片机的上电复位POR(Power On Reset)实质上就是上电延时复位,也就是在上电延时期间把单片机锁定在复位状态上。为什么在每次单片机接通电源时,都需要加入一定的延迟时间呢?分析如下。 1 上电复位时序   在单片机及其应用电路每次上电的过程中,由于电源回路中通常存在一些容量大小不等的滤波电容,使得单片机芯片在其电源引脚VCC和VSS之间所感受到的电源电压值VDD,是从低到高逐渐上升的。该过程所持续的时间一般为1~100 ms(记作taddrise)。上电延时taddrise的定义是电源电压从10% VDD上升到90% VDD所需的时间,如图1所示。 图1 上电延时taddrise和起振延时tosc实测结
[工业控制]
80C<font color='red'>51单片机</font>上电复位和复位延时的时序分析
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved