0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

以BQ27426为例,对GMFS文件进行解读

德州仪器 来源:德州仪器 作者:德州仪器 2022-02-15 13:36 次阅读

在电量计的量产文件中,我们的BQSTUDIO上位机软件提供了多种格式的文件,包括SREC, SENC, BQFS, DFFS, GMFS, OTFS, DFI 等格式,对于不同的电量计,支持的格式均有所不同。接下来就选取代表性的BQ27426为例,来对GMFS文件做一个简单的介绍。

1.1 GMFS文件格式

下图是GMFS文件格式的一个范例:

W: 表明该行是写入一个或多个字节的指令

X: 表明该行是等待给定的ms时长的指令

C: 表明该行是读取并且比较一个或多个字节的指令

poYBAGILEGmAQBVTAACKaRT7xc0318.png

图1.1 GMFS文件范例

以Line 70-Line 75为例:

Line 70: W: AA 3E 52 00

W的格式为:I2CAddr RegAddr Byte0 Byte1 Byte2 …

AA表示device的I2C地址为0xAA, 3E表示对应的寄存器地址是0x3E, 对应的是DataBlockClass()指令,52 00表示这里写入的数据,这里两个byte是按照MSB LSB排列。也就是说,52数据写入0x3E, 00数据写入0x3F寄存器。0x3F对应的是DataBlock()寄存器。

我们规定如果要更新Data Memory里的值,需要先向0x3E寄存器写入对应寄存器的地址,之后再向其中写入具体的数据。这里寄存器地址为52 00,表明写入的是State寄存器。这一段代码的含义就是找到52(HEX)=82(DEC)的Subclass: State的地址,方便接下来向其中写入相应的数据。

poYBAGILEGqAaB2AAACfg2tTvaY978.png

图1.2 Data Flash寄存器表格

Line 71: W: AA 40 41 C3 00 00 00 81 00 DA 03 48 0B B8 00 C8 00 32 00 14 03 E8 01 00 63 00 0A FF C9 FF CB 00 02 00

W的格式为:I2CAddr RegAddr Byte0 Byte1 Byte2 …

AA同样表示的是device的I2C地址,0x40寄存器地址表示的是BlockData(), 从0x40到0x5F。相应后面的data就按照顺序依次写入0x40到0x5F地址中。

这里就以data中的81举例,在Line 71中,从0x40后的第一个data起,为offset=0, 0x81所在的位置为0ffset=5, 查阅上表7-2可以得到此位是H1型,表示Load Select/Mode.

这里表明Load Select/Mode为81,具体含义可以查阅BQ27426 TRM以及下表7-7。这里不再赘述。

pYYBAGILEGyAFPp3AAAsWqMyXVI867.png

图1.3 Load Select/Mode 参数表格

Line 72: W: AA 60 97

0x60寄存器表示BlockDataCheckSum(), 这一行的意思就是写入新的checksum值。

Line 73: X: 10

这一行表示等待10ms.

Line 74: W: AA 3E 52 00

这一行代码的含义是找到52(HEX)=82(DEC)的Subclass: State的地址,方便接下来对其中的校验位进行比较。

Line 75: C: AA 60 97

C的格式为:I2CAddr RegAddr Byte0 Byte1 …

这一行表示比较,AA表示device的I2C地址为0xAA, 60表示对应的寄存器地址是0x60. 表示BlockDataCheckSum(), 97是从0x60位置读出来的校验和,从而可以和gauge计算出来的校验和进行比较。

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电源管理
    +关注

    关注

    112

    文章

    6015

    浏览量

    141111
  • 电量计
    +关注

    关注

    2

    文章

    94

    浏览量

    31637
收藏 人收藏

    评论

    相关推荐

    maixcam如何无脑运行运行别人的模型(安全帽模型

    maixcam如何无脑运行运行别人的模型(安全帽模型) 本文章主要讲如何部署上传的模型文件,以及如果你要把你模型按照该流程应该怎么修改,你可以通过该文章得到你想要的应该,该应用
    发表于 04-25 14:51

    功能安全合规型汽车类16/14/12节串联电池监测器、平衡器和集成硬件保护器BQ79616-Q1、BQ79614-Q1、BQ79612-Q1数据表

    电子发烧友网站提供《功能安全合规型汽车类16/14/12节串联电池监测器、平衡器和集成硬件保护器BQ79616-Q1、BQ79614-Q1、BQ79612-Q1数据表.pdf》资料免费下载
    发表于 04-07 09:37 0次下载
    功能安全合规型汽车类16/14/12节串联电池监测器、平衡器和集成硬件保护器<b class='flag-5'>BQ</b>79616-Q1、<b class='flag-5'>BQ</b>79614-Q1、<b class='flag-5'>BQ</b>79612-Q1数据表

    系统侧Impedance Track™电量监测计BQ27426数据表

    电子发烧友网站提供《系统侧Impedance Track™电量监测计BQ27426数据表.pdf》资料免费下载
    发表于 03-22 14:22 0次下载
    系统侧Impedance Track™电量监测计<b class='flag-5'>BQ27426</b>数据表

    GPIO,RTE配置完后会有xmc_gpio.h、xmc1_gpio.h、xmc_gpio.c、xmc1_gpio.c,四个的关系是什么样的?

    GPIO,RTE配置完后,会有xmc_gpio.h、xmc1_gpio.h、xmc_gpio.c、xmc1_gpio.c,四个的关系是什么样的?为什么xmc_gpio.h中有XMC_GPIO_Init的声明,但是xmc_g
    发表于 01-29 06:24

    BQ3568_烧录说明

    BQ3568_烧录说明
    的头像 发表于 01-11 11:51 202次阅读
    <b class='flag-5'>BQ</b>3568_烧录说明

    BQ3568_代码下载

    BQ3568_代码下载
    的头像 发表于 01-11 11:34 147次阅读

    BQ3588C烧录说明

    BQ3588C_烧录说明
    的头像 发表于 01-10 15:44 269次阅读
    <b class='flag-5'>BQ</b>3588C烧录说明

    BQ3588C_代码下载

    BQ3588C_代码下载
    的头像 发表于 01-10 15:09 204次阅读

    【爱芯派 Pro 开发板试用体验】模型部署(mobilenetV2

    格式,如这里就是axmodel 3、在移动端的linux系统安装好推理引擎 4、使用推理引擎运行 下面一步步的细说,并会挑一些觉得有意思的细节说说。一个简单的mobilenetV2. 2、训练模型
    发表于 12-10 16:34

    如何解读修改DSP的LDF文件?

    很多人对ADI SHARC/BLACKFIN DSP的LDF文件很怕怕,LDF文件确实很复杂,但需要我们做的其实也不多,很多ADI的编译器已帮我们设定好了。我们需要做的是理解其结构,并根据其规范做
    发表于 11-29 07:32

    工业设备振动基础的异常现象探测方案

    开发一种解决办法,监测半导体裂谷制造设施内机器人的健康状况,对工业设备进行振动异常探测。 建立参数,以便最低限度的数据潜伏和保护IP敏感生产数据的方式对机器人故障进行有效和实时的远程监测和警报
    发表于 08-03 06:04

    68.68 模型修剪 CART

    故障维
    充八万
    发布于 :2023年07月20日 18:52:49

    bq25792握手协议

    Android项目,在没开机前,充电,bq25792 走默认的5v1.5A充电。 在开机后,主控通过i2c与bq芯片通信后,有中断触发,status状态改变,但D+/D- 没有产生握手。适配器不充电
    发表于 06-11 16:20

    基于libconfig进行配置文件解析

    本文介绍基于libconfig进行配置文件解析
    的头像 发表于 06-08 10:18 854次阅读
    基于libconfig<b class='flag-5'>进行</b>配置<b class='flag-5'>文件</b>解析

    关于bq78350+bq79630相关问题

    工程师你好: 我在测试BQ78350遇到如下问题请帮忙解答下。谢谢 用EV2400 和单片机同时接到SMBC上,EV2400搜到的地址是 0x17,单片机只能搜到0x0b地址读到数据,0x17
    发表于 05-31 13:51