DS2438中文数据手册详解.docx

上传人:夺命阿水 文档编号:608447 上传时间:2023-09-09 格式:DOCX 页数:25 大小:332.40KB
返回 下载 相关 举报
DS2438中文数据手册详解.docx_第1页
第1页 / 共25页
DS2438中文数据手册详解.docx_第2页
第2页 / 共25页
DS2438中文数据手册详解.docx_第3页
第3页 / 共25页
DS2438中文数据手册详解.docx_第4页
第4页 / 共25页
DS2438中文数据手册详解.docx_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《DS2438中文数据手册详解.docx》由会员分享,可在线阅读,更多相关《DS2438中文数据手册详解.docx(25页珍藏版)》请在课桌文档上搜索。

1、Xof29序言达拉斯半导体DS2438智能电池监视器其主要的特点有:(1)独特的I-Wirc接口仅需一个端口引脚即可进行通信(2)为电池组提供唯一的64位序列号(3)片上电池温度检测省去热敏电阻(4)片上A/D转换器监视电池电压,作为终止充电和终止放电的判据(5)片上集成的电流累积器提供电量计量(6)二进制历时记录器(7)40字节非易失用户存储器存储电池相关数据(8)工作温度范围-40C至+85C(9)应用于蜂窝电话、数码相机、数字摄像机、掌上电脑、手持终端(包括条形码)、笔输入掌上电脑、PDA和数字助理、智能电池组/充电器。管脚分配DS2438管脚功能描述:1 GND接地2 VSENS+电池

2、测量电流输入(+)3 VSENS-电池测量电流输入(一)4 vAD通用电压A/D采样输入端5 VCC供电电压(2.4IOV)6 ,7NC悬空不接8DQ数据输入输出,单总线概述DS2438智能电池监视器为电池组提供了若干很有价值的功能:可用于标识电池组的唯一序列号;直接数字化的温度传感器省掉了电池组内的热敏电阻;可测量电池电压和电流的A/D转换器;集成电流累积器用于记录进入和流出电池的电流总量;一个经历时间纪录器;以及40字节的非易失EEPROM存储器,可用于存储重要的电池参数例如化学类型、电池容量、充电方式和组装日期等。DS2438使用ITire接口发送和接收信息,所以中央微控制器和DS243

3、8之间仅需1条连线(还有地线)。这就意味着电池组仅需要三个输出接头:电池电源、地和ITire接口。由于每片DS2438具有一个唯一的硅序列号,多片DS2438可以共存于同一条ITVire总线。这就允许多个电池组可同时充电或在系统中使用。这款智能电池监视器可用于便携计算机、便携/蜂窝电话以及手持式仪器等,这些应用中需要密切监视电池的实时性能。与主系统微控制器相配合,DS2438提供了一个化学类型无关的完备的智能电池组方案。在定制某种特定化学类型和容量的电池时,只需向微控制器和DS2438EEPROM中输入相应的代码即可,当电池的化学类型改变时,设计者只需要修改软件即可。2of29该处DS2438

4、管脚功能详述表与上重复,故略概述1 .64位的激光ROM2 .温度传感器3 .电池电压A/D转换器4 .电池电流A/D转换器5 .电流累加器6 .历时记录器7 .40位的非易失用户存储器每个DS2438包含一个独特的64位光刻ROM序列码,这样几个电池组能够被同一个主机系统充电和监控。此外,具有同样单总线结构、带64位ROM特点的其他达拉斯产品,能存在于同一根总线上。可参阅达拉斯自动鉴定数据手册得到这些产品的规格。DS2438通过一条总线通信。有了这条单总线端口,存储器和控制函数只有在程序存储器函数协议建立起后才能生效。主机必须首先提供四种程序存储器函数命令的个:1)读ROM,2)匹配RoM,

5、3)搜索ROM,或4)跳过RoM。这些命令可以操作每个设备上的64位光刻ROM部分,并且如果一条总线上有多个设备存在,可以锁定一个特定的设备。还可以向主机指出有多少和什么类型的设备存在。在一个程序存储器函数序列被成功执行后,存储器和控制函数获得权限,并且主机可以提供六种存储器和控制函数命令中的任意一种。发布控制函数命令去指示DS2438执行温度测量或电池电压A/D转换。这些测量的结果将被存放在DS2438的存储器映射中,通过发送存储器函数命令能读取温度测量值和电压寄存器。此外,电池的充电/放电电流测量无需用户干预,而且最终结果将会存储于DS2438的存储器空间中。DS2438用这些当前的电流测

6、量值更新三个电流累加器。第一个存储流进和流出电池电流的净累加总和,第二个存储电池累积充电电流总和,第三个存储电池累积放电电流总和。历时记录器中的数据,可以用于计算电池自放电或者与时间有关的充电停止限制,也可以存储在DS2438的存储器映射中,被存储器函数命令读取。DS2438的非易失性用户存储器包括40个字节的EEPROMo这些存储单元可以用来存储用户想要存储的任意数据,以及用存储器函数命令写入数据。所有的数据和命令从最低有效位开始读取和写入。框图(图1)表示了DS2438的内部结构操作一一测量温度DS2438通过片上温度测量技术测量温度。能读取13位二进制补码格式的温度数据,分辨率为O.03

7、125oC。表1描述了温度测量输出数据的确切关系。数据在单总线接口上串行传输。DS2438可以测量温度的范围从-55C至J+125C,以0.03125C的增量。对于华氏温度表示法,必须使用查找表或转换因子。注意,在DS2438中最低有效位表示0.03125C,如下13位格式。温度寄存器的3个最低有效位始终为0.剩下的13位用。C的二进制补码形式表示的温度,最高有效位保持符号位。查看“存储器映射”找到温度寄存器地址。4of29操作测量电池电压片上的模数转换器(ADC)有10位的分辨率,当DS2438收到指示它转换电压的命令时,执行转换。这个测量的结果放在2字节电压寄存器中。DS2438的模数转换

8、范围是OV到IOVo这个范围对于六节银镉电池或银氢电池组或两节锂电池组来说是合适的。模数转换的满量程值是10.23V,分辨率为IOmV。虽然模数转换最低量程可达0V,但是有一点需要注意,那就是待测电池电压也是DS2438的供电电压。这样,电池电压低于2.4V时,电压模数转换的准确性下降,执行转换的能力受到DS2438的操作电压范围的限制。在这个寄存器中表示的二进制格式的电压范围如表2中列出的一样。注意,尽管编码在电压值低于2.4V下存在,但是电压模数转换的准确性和DS2438供电电压的限制使得这些值实际上不可使用。查看“存储器映射”找到电压寄存器地址。对于应用程序需要一个通用的电压模数转换器,

9、DS2438可以被配置,以致电压转换指令的结果能够想表2描述的一样将VAD的输入(而不是VDD的输入)存入电压寄存器中。根据状态/配置寄存器的声明,VDD或VAD(两者之一)将在接受到电压转换命令后存储在电压寄存器中。参阅寄存器映射中关于状态/配置寄存器的详细描述。如果VAD输入作为电压输入,模数转换器在1.5VVAD2VDD范围内事准确的,其中VDD2.4VVDD5.OV.这个特性使得在电压输入范围1.5VVADROFFSET MSBRESERVEDDISCONNECTBYTEODISCONNECTBYTE 1DISCONNECTBYTE 2DISCONNECTBYTE 3END OF CH

10、ARGEBYTEOEND OF CHARGEBYTE 1END OF CHARGEBYTE 2END OF CHARGEBYTE 3RMNVPAGEBYTECONTENTSR.,WYES0USER BYTERNO1USERBYIERRNONO334RNO5RNO6YES7R.R.RR.-RRRUSER BYTE USERBYIE USERBYTE USERBYTE USERBYTEUbbKBI Ik USERBYTE USERBYTE USER BYTE I;SERBYTE USERBYlE USER BYTE USER BYTEUSER BYTEUSER BYTEUSERBYTEUSERBY

11、TEUSERBYTEJCCA LSBUSERBYTECCA MSBUSER BYTEDCA LSBUSERBYTEDCAMSBR/WYESR/WYESRWYESR/WYESR/WYESR/WYESR/WYESR/WYESR,wR/WRAVRVSsssssssYEYEYEYEYESYEYEYESssEEEYYYS SYEYEY Y17of29单总线系统单总线是一种仅有一个主机及一个或多个从机的系统。DS2438是一个从机。这种总线结构可被分成三个主题讨论:硬件配置,事务序列和单总线信号(信号类型和时间)。硬件配置单总线只有一条线被定义。在合适的时间,总线上的每个设备都能驱动这条总线,是很重要的。

12、为此,总线上的每个设备必须开漏或3态输出。DS2438的单总线端口是开漏的(DQpin),等效的内部电路如图8所示。多点的总线由单总线上接入多个从机构成。单总线需要一个大约5kQ的上拉电阻。HARDWARECONFIGURATIONFigure8单总线的空闲状态是高电平。由于某种原因一个事务被暂停,如果该事务要恢复,总线必须离开空闲状态。在恢复期间只要单总线处于不活动(高电平)状态,就可以触发无限的恢复时间。如果这没发生,并且总线一直处于低电平,总线上的所有器件将会复位。参阅单总线复位脉冲时序(图9)o事务序列通过单总线端口访问DS2438的协议如下所示:初始化ROM函数命令寄存器函数命令事务

13、/数据初始化在单总线上所有的事务以初始化序列开始。初始化时序由主机发送的一个复位脉冲紧随从机发送的应答脉冲组成。应答脉冲能让主机知道DS2438在总线上并且已经做好准备。有关更多细节,请参阅“总线信号”部分。18of29ROM函数命令一旦主机监测到应答脉冲,它就发送四个ROM函数命令之一。所有的ROM函数命令长度为8位。这些命令如下列表所示(参阅流程图5):ReadROM33h这个命令允许主机读取DS2438的8位系列码,唯一的48位序列码和8位的CRCo这个命令仅能用于总线上只有一块DS2438的情形。如果在总线上不只一块2438存在,当所有从机同时尝试发送时,就会有数据冲突。(开漏将产生一

14、个线与的结果)。MatchROM55h匹配ROM命令,随后跟一个64位的ROM序列;允许主机在多点总线上寻址一个特定的DS2438。只有DS2438完全匹配64位ROM序列,DS2438才会响应随后的寄存器函数命令。所有的从机都不匹配64位的ROM序列,DS2438将会等待一个复位脉冲。这个命令能被用在有一个或多个设备的总线上。SkipROMCCh在单点总线系统中这个命令能够节约时间,因为不用提供64位的ROM代码,就可允许主机访问寄存器函数。如果总线上存在不只一个从机,并且跳过ROM命令后还跟着发送了一个读取命令,由于多个从机同时传输,就会发生数据冲突。(开漏下拉将产生一个线与的结果)。Se

15、archROMF0h当一个系统初始化拉高后,主机可能不知道总线上设备的数量或他们的ROM码。搜索ROM命令允许主机用一个排除过程识别总线上的所有从机设备的64位ROM代码。ROM的搜索示例ROM搜索过程是一个简单的三步程序的重复过程:读一位,读这个位的补码,向该位写入期望的值。总线上的主机早ROM的每一位执行这个简单的三步程序。在一个完整的过程后,主机就能知道一个设备中的RoM的内容。用额外的过程剩下的设备的数量和他们的ROM能够被识别出来。下面的ROM搜索过程的例子假设四个不同的设备连接到了同一条单总线上。四个设备的ROM数据如下所示,从最低有效位开始。ROMl=00110101.R0M2=

16、10101010.R0M3=11110101.R0M4=00010001.搜索过程如下:1 .通过发送一个复位脉冲,主机开始初始化序列。从机同时发送应答脉冲响应。2 .主机将在单总线上发送搜索ROM命令(FOh)o19of293 .主机从单总线上读取一个位。每个设备将他们相应ROM数据的第一位的值发送到单总线上。ROMl和R0M4将0发送到单总线上,即将它拉低。R0M2和R0M3将发送1到单总线上,允许总线保持高电平。结果是总线上所有设备的逻辑与。因此主机看到了一个0.主机读取另一个位。由于正在执行搜索ROM数据命令,在单总线上的所有设备将他们相应ROM数据的第一位的补码发送到单总线上,以相应

17、第二次读。ROMl和R0M4将1发送至总线,允许总线保持高电平。R0M2和R0M3将发送0到单总线,这样将把它拉低。主机再次观察到一个0,由ROM数据第一位的补码。主机已经确定在单总线上有一些设备,他们有的第一个位置是0,其他的是1.从三步程序的两次读取得到的数据有如下解释:00-在这个位置上,总线上一直有相互冲突的位。01-所有的设备在该位上都是0.10-所有的设备在该位上都是1.口-没有设备连接在该总线上。4 .主机写Oo剩余的搜索过程不选择R0M2和ROM30只留下ROMl和R0M4连接到单总线上。5 .主机执行两次读,收到一个0,接着一个L这表明所有设备向总线发送了0,由于他们RoM数

18、据的第二位。6 .主机然后对ROMl和R0M4都写一个0.7 .主机执行两次读收到两个0位。这表明连接到总线上的设备中ROM数据的第三位上既存在0又存在1.8 .主机写一个0。这次ROMl取消选中,留下R0M4作为唯一的设备仍然连接总线。9 .主机读取R0M4中ROM的剩余字节,并继续访问需要访问的部分。这就完成了第一遍,唯一识别了单总线上的一个设备。10 .主机通过重复步骤1-7开始一个新的ROM时序。IL主机写一个1。这次断开ROM4,只剩下ROMl连接。12 .主机读取ROMl中ROM的剩余位,如果需要将和底层逻辑进行通信。这就完成了ROM的第二遍搜索,另一个ROM被找到。13 .主机通过重复1-3开始一个新的ROM搜索。14 .主机写一个1位,这次取消选中ROMl和R0M4,放弃剩余的搜索,只留下R0M2和ROM3连接系统。15 .主机执行两次读,得到两个0。20of2916 .主机写一个0位。这次RoM

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号