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.

[参考译文] TMS320F28054M:TMS320F28054M

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1060988/tms320f28054m-tms320f28054m

器件型号:TMS320F28054M

我有一个驱动器在 instaspin 技术中用于无传感器控制。 我正在使用触发区输入(TZ3)通过以下代码来触发驱动器

在 hal.c 文件中的 void HAL_setupPwms()函数中。

PWM_enableTripZoneSrc (obj->pwmHandle[cnT]、PWM_TripZoneSrc_OneShot_TZ3_not);

当 TZ3引脚变为低电平时、驱动会按预期跳闸、但是、当我使用以下结构轮询寄存器 TZFLG 时、

如果(halHandle->pwmHandle[0]->TZFLG == 4)要查看跳闸原因、

即使引脚不是低电平、也只需比较 IF 环路中的寄存器即可跳闸驱动器。

我是否遗漏了什么?

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

    如果  之前有一个跳闸区域输入、则应该通过调用 PWM_clearTripZ()来清除每次指定的跳闸区域(TZ)标志。

     运行上述代码时、您可以检查 TZFLG 中是否设置了指定位。