ZHCAD89A August   2020  – October 2023 BQ79600-Q1

 

  1.   1
  2.   BQ79600-Q1 软件设计参考
  3.   商标
  4. 1命令帧
    1. 1.1 结构
      1. 1.1.1 初始化字节
      2. 1.1.2 器件 ID 地址
      3. 1.1.3 寄存器地址
      4. 1.1.4 数据
      5. 1.1.5 CRC
    2. 1.2 命令帧模板表
    3. 1.3 读取寄存器和写入寄存器函数
      1. 1.3.1 ReadReg/SpiReadReg
      2. 1.3.2 WriteReg/SPIWriteReg
      3. 1.3.3 示例代码中可用的数据包类型
  5. 2快速入门指南
    1. 2.1 唤醒序列
    2. 2.2 自动寻址
      1. 2.2.1 步骤
      2. 2.2.2 由 3 个器件组成的栈的示例命令
    3. 2.3 读取电芯电压
      1. 2.3.1 步骤
      2. 2.3.2 由 3 个器件组成的栈的示例命令
      3. 2.3.3 转换为电压
    4. 2.4 反向寻址
      1. 2.4.1 步骤
      2. 2.4.2 由三个器件组成的栈的示例命令
  6. 3修订历史记录

WriteReg/SPIWriteReg

WriteRegSpiWriteReg 函数的基本结构如下:

UART sample code:
#_of_Sent_Bytes = WriteReg(Device_Address, Register_Address, Data, #_Data_Bytes, Packet_Type)
SPI sample code:
#_of_Sent_Bytes = SpiWriteReg(Device_Address, Register_Address, Data, #_Data_Bytes, Packet_Type)

Device_Address#_Data_BytesPacket_Type 是整数,而 Register_AddressData 是十六进制值(带前缀“0x”)。Device_Address 在广播和栈写操作中会被忽略。

例如:

UART sample code:
nSent = WriteReg(nDev_ID, 0x0306, 0x01, 1, FRMWRT_SGL_NR);
SPI sample code:
nSent = SpiWriteReg(nDev_ID, 0x0306, 0x01, 1, FRMWRT_SGL_NR);

此行会将 1 字节数据写入器件 nDev_ID 的寄存器 0x0306。发送的数据为 0x01。数据包的类型为单器件写。