微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于DS2438芯片的智能电池监测系统

基于DS2438芯片的智能电池监测系统

时间:02-08 来源:互联网 点击:

一、引言

目前设计便携式设备,为了满足移动性和轻便性的要求,通常采用电池供电。在使用电池供电时,电池的当前状态是用户所关心的,如MP3播放器、手机、笔记本电脑等都实时显示电池的当前状态。为此在设计本文所涉及的仪器时,智能电池监测系统被充分考虑。本文实现的电池监测系统由DS2438智能电池监测芯片、51单片机、液晶显示模块组成,其中核心功能是由DS2438智能电池监测芯片完成的。本文介绍了本系统的硬件实现和软件设计,以及DS2438芯片特性和相关控制软件程序。

二、系统硬件实现

本系统的硬件设计力求简洁,目的是尽量减少对单片机指令周期的占用,以便使单片机能够完成更多其他功能。系统的硬件实现框图见图1。

  本系统由DS2438智能电池监测芯片、51单片机、液晶显示模块组成。

  DS2438芯片完成对电池当前各种状态的监测,包括当前电池的充/放电状态、电压、电流、温度、剩余电量、消逝时间等参数的监测。DS2438芯片能够自动采集这些参数,并将其放在SRAM/EEPROM中。51单片机根据需要发出命令读取这些参数,然后处理这些参数,显示电池状态。由于存放这些参数的EEPROM具有非易失性,所以本系统具有掉电保护的功能。

  51单片机按照用户需要对电池状态的相应参数读取和处理,然后送往液晶显示模块显示。由图1可见,单片机是整个系统的控制、处理中心。由于大量工作由单片机的软件完成,明显地降低了系统硬件复杂度。

  液晶显示模块显示用户需要了解的电池当前状态信息,仅仅接受单片机的控制和访问。

  由此可见,本系统的主要功能是由DS2438芯片和51单片机的软件程序完成的,其中51单片机、液晶显示模块的用法与其在其他系统中的用法相同,所以以下主要介绍DS2438芯片的功能特性和单片机软件编程。

三、DS2438芯片介绍

DS2438芯片是DALLAS公司推出的新一代智能电池监测芯片,具有功能强大、体积小、硬件接线简单等优点。

  1.特性
  (1)仅有一根双向数据线,故单片机仅需一个端口与之连接。
  (2)内含数字温度传感器(免去在电池块内设装热敏电阻)。
  (3)片内模数转换器可进行电池电压监测,从而可判定充电和放电的结束。
  (4)片内的积分电流累加器可实时记录电池流入、流出电流的总量,便于统计电量。
  (5)内含二进制格式的消逝时间表。
  (6)内含40字节可用于存放电池特殊参数的掉电保护的用户访问存储器。

  2.芯片硬件接线(见图2)

  3.存储空间

DS2438的存储空间有8页,每页8个字节,共64个字节,每一页都有对应的高速暂存页,因此存储器包括RAM高速暂存器和SRAM/EEPROM (掉电保护)两部分,这两部分是镜像关系。高速暂存器可确保在用一线通讯时数据能够保持一致性(数据写入DS2438时先写入高速暂存器,仅当数据被确认后,才能用暂存器复制命令将暂存页的数据写入相应的掉电保护空间中),单片机对DS2438进行数据读/写时只能对高速暂存器进行操作。存储空间内包括一些特殊功能寄存器和用户可使用的存储单元。下面仅对存储空间中与我们设计的实际系统有关的特殊寄存器做一下说明。

  (1)状态/标志寄存器
  状态/标志寄存器决定了DS2438的工作状态,单片机通过对特殊功能寄存器进行读/写操作,可实现DS2438的各种功能,因此在对其进行操作之前,必须对这一寄存器进行初始化,即对相应的控制位进行写操作。

  (2)电流寄存器
  DS2438内含一个可有效测量流入、流出电池块电流的模数转换器,电流的测量是通过测量外部传感电阻两端的电压来实现的。测量的结果存放于电流寄存器中。

  实际上电流寄存器存的是电压值,要得到流入、流出电池的电流可用公式(1)行计算。
  I=电流寄存器的值/(4096×RSENS) (1)

  (3)电流积分累加寄存器
  DS2438对电池剩余电量的测量是借助其内部的电流积分累加器(ICA)实现的。ICA存放的是流入、流出电池总电流的净累加值,因此,存储在这个寄存器内的值可用于计算电池的剩余电量。

  (4)电压寄存器
  存放采集的电压值。

  (5)温度寄存器
  存放采集的电池温度值。

  (6)消逝时间记录寄存器
  消逝时间记录寄存器记录相对于内部基准时间的电池充电完毕、其脱离系统的精确时刻,便于用户了解电池的使用情况,正确地使用和维护电池。

  4.DS2438的操作命令

DS2438的操作命令有两类,一类是存储功能命令,有读/写暂存页、复制暂存页、读SRAM/EEPROM页、温度转换、电压转换等命令,此类命令的主要作用是进行数据采集和存储。另一类是ROM功能命令,包括对DS2438的RAM序列号进行读、比较、跳过、寻找等四

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top