Other Parts Discussed in Thread: MCT8329A, MCF8329HS
器件型号: MCT8329A
主题中讨论的其他器件: MCF8329HS
尊敬的 TI 支持团队:
我在采用 BLDC 电机和微控制器的应用中使用 MCT8329A。
微控制器通过 I2C、DRVOFF 和 WAKE 连接到 MCT8329A。
I2C 通信以 400kHz 的频率运行、并且针对 MCT8329A 的数据读取和写入实施了 100µs 字节间延迟。
微控制器运行线程 (10ms)、发送速度命令(寄存器 0xE8)并读取故障寄存器 (0xE0 和 0xE2) 以及状态寄存器 (0xEA 和 0xEC)。 此外、为了清除故障、微控制器在需要时写入寄存器 0xE6。
通常、通信可以、但在某些情况下、从故障和状态寄存器读取的值会突然冻结、直到我对 MCT8329A 执行下电上电。
当值读取冻结发生时、MCT8329A 仍会响应发送到寄存器 0xE8 的速度命令、并且成功执行 I2C 读取操作。 问题似乎与从电机控制器器件向芯片的 I2C 部分提供数据的机制有关。
我有两个问题:
- 除了执行下电上电以在读取时脱离值冻结之外、还有其他方法吗?
- 这是已知问题吗? 如果是、如何避免读取值冻结? 与 Gemini 的快速聊天表明、我的应用是对故障和状态寄存器进行“过度轮询“。
此致、
Peter Einramhof-Grama.