主题中讨论的其他器件:、 MCF8315A、MCF8316C-Q1
我使用由 Arduino 通过 I2C 接口控制的 MCF8316AEVM。 在我实现闭环旋转之后、我需要每10ms 甚至更频繁地动态改变电机转速。 我曾尝试使用 algo_CTRL1寄存器中的 DIGITAL_SPEED_CTRL、也尝试禁用速度环路并使用 algo_CTRL2寄存器中的 FORCE_VQ_CURRENT_LOOP_DIS。 借助这两种方法、我能够成功发送一些速度控制命令并实现所需的速度改变。 但是、尝试成功次数不超过10次(通常为2次或3次)后、我将无法再更改速度、此时无法与 MCF8316A 进行任何 I2C 通信、并且读取任何寄存器都会返回 FFFFFFFF。
如果我不尝试改变电机转速、则可以在电机旋转时不受任何限制地读取任何寄存器。
我在这块板上看到了一些类似的查询。 在电机旋转时、MCF8316A 是否无法通过 I2C 接收常规转速更改命令? 或者我们遗漏了一些东西、并且我们的应用有某种权变措施-我们需要通过 I2C 进行常规速度控制(每10ms 或甚至更频繁地进行一次)? 或者、我们需要按照其他主题中的建议使用 MCF8315?
此致
尤金