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.

[参考译文] DRV8301-69M-KIT:关闭 PWM 并将开关拉至低侧

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1042538/drv8301-69m-kit-turn-off-pwm-and-pull-switches-to-low-side

器件型号:DRV8301-69M-KIT

在上一个问题中、我询问了如何尝试下拉三相开关以用于固定电机、例如停车制动器。 我收到了该代码并将其添加到 proj 主文件中。

静态内联 void HAL_enableBreakPwm (HAL_Handle handle)

HAL_Obj * obj =(HAL_Obj *)句柄;

//强制高侧关闭,低侧打开
PWM_setActionQualContSWForce_PwmA (obj->pwmHandle[PWM_Number_1]、PWM_ActionQualContSWForce_Clear);
PWM_setActionQualContSWForce_PwmB (obj->pwmHandle[PWM_Number_1]、PWM_ActionQualContSWForce_Set);

PWM_setActionQualContSWForce_PwmA (obj->pwmHandle[PWM_Number_2]、PWM_ActionQualContSWForce_Clear);
PWM_setActionQualContSWForce_PwmB (obj->pwmHandle[PWM_Number_2]、PWM_ActionQualContSWForce_Set);

PWM_setActionQualContSWForce_PwmA (obj->pwmHandle[PWM_Number_3]、PWM_ActionQualContSWForce_Clear);
PWM_setActionQualContSWForce_PwmB (obj->pwmHandle[PWM_Number_3]、PWM_ActionQualContSWForce_Set);

返回;
}// HAL_enableBreakPwm()函数结束

我在项目顶部添加了如下所示的原型:

void HAL_enableBreakPwm (HAL_Handle handle);

当我查看调试器中的代码时、它会显示黄色警告和状态  

#174-D 外部/内部链接与之前的声明冲突

尽管如此、代码仍会编译并看起来运行良好。 当我停止电机并调用 enableBreakPwm 函数时、它提供了一个可接受的制动操作、但即使电机未加载且未转动、它也会产生很大的噪声。 当我在示波器上查看相位时、我可以看到随机出现的占空比极低尖峰、这些尖峰从接地基线变为完整的电压电源值。 这些尖峰是它看起来的噪声源。 我是否忽略了某些内容? 为什么我会收到有关先前声明的警告。 我在项目中的任何 HAL 代码或其他代码中找不到名为此的函数。 BTW 此项目的基础项目是 lab5b。  

噪音几乎听起来像是盖革计数器-它只是一个噼啪声、但振幅相当高。 是否有某种方法可以真正地拉低开关而不会出现这种毛刺脉冲运行?

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

    您是否在"hal.h"中添加了"static inline void HAL_enableBreakPwm (HAL_Handle handle)"? 如果是、则无需在任何位置添加"void HAL_enableBreakPwm (HAL_Handle handle)"声明。 如果否、请在"hal.h"文件中添加"static inline void HAL_enableBreakPwm (HAL_Handle handle)"。

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

    这对于警告来说是正常的。 我还发现了噪音问题、解决了。 我的末尾有一个编码错误 感谢你的帮助。