This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BQ76942:i'm 使用 BQ769x2 系列的 BQ7694202

Guru**** 2576195 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1570387/bq76942-i-m-using-the-bq7694202-of-the-bq769x2-family

器件型号:BQ76942


工具/软件:

由于默认情况下为 BQ7694202 启用了 CRC 模式、因此现在请参阅示例代码

//BQ769x2 通用程序头文件
#define CRC_Mode 1 // 0 表示禁用、1 表示启用
定义 R 0     //读取
#define W 1.     //写入
#define W2    //用两个字节写入数据


I 设置CRC_Mode为 1、但我的 MCU 收到的数据不正确。 如何在程序中将器件切换至 I²C μ s 而无需 CRC?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    为了切换通信模式、您必须更改 Settings:Configuration:Comm Type 配置寄存器。 您可以在 CONFIG_UPDATE 模式下更改该寄存器设置、或者 主机可以写入 0x29e7 SWAP_TO_I2C () 子命令(例如)、以立即将通信接口更改为 I2C 快速模式 (Settings:Configuration:Comm Type = 8)、而无需进入 CONFIG_UPDATE 模式。

    我随附了  以下技术参考手册中的代码片段:

    您可能已经看到了这本书、但我 也将随附《软件开发指南》。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经尝试过、但看不到我的代码。

    此代码来自 bq769x2_control_i2c 示例代码


    内部 main (void)
      /*在使用任何板 API 之前执行所需的任何初始化*/
      SYSCFG_DL_init ();

      /*设置 LED 以指示传输开始*/
      DL_GPIO_setPins (GPIO_LEDS_PORT、GPIO_LEDS_USER_LED_1_PIN);
      
      NVIC_EnableIRQ (I2C_0_INST_INT_IRQN);
      NVIC_EnableIRQ (GPIO_GRP_0_INT_IRQN);
      DL_SYSCTL_disableSleepOnExit ();

      CommandSubcommands (SWAP_TO_I2C);
      delayUS(1000)
      BQ769x2_Init (); //在仿真模式下配置所有 BQ769x2 寄存器设置。
      delayUS(10000)

      

      while (1){
          
          BQ769x2_SleepDisable ();
          BQ769x2_ReadFETStatus()
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Christopher、

    为了澄清一下、您希望在没有 CRC 的情况下执行 I2C、对吗? 您要通过示例代码将器件配置为 I2C 而不使用 CRC 吗?

    您正在通过发送 SWAP_TO_I2C () 命令来选择 Comm Type、但您没有将器件转换为通信模式。 您需要发送 SWAP_COMM_MODE () 子命令才能执行此操作。

    此致、

    Rohin Nair