TI中文支持网
TI专业的中文技术问题搜集分享网站

采用28027F的无感lab10a异常停止问题?

我采用TI的hvkit_rev1p1的平台,控制器是28027F

程序中在 mainISR(void)中有如下闪灯程序  

HAL_toggleLed(halHandle,(GPIO_Number_e)HAL_Gpio_LED2);

该中断应该是PWM触发ADC采集,ADC采集后触犯该中断,正常时该灯应闪烁。

出现如下两个问题:

A、在跑高功率时突然出现电机自动停止,而且该灯停止闪烁,重新上电后又正常。

B、如果特意不加母线电压(其它低压部分上电,高压不上电)情况时,该灯也是闪烁一会就会自动停止。

自己判断:

1、应该是程序判断到异常(比如B中母线电压不正常),关闭了PWM,进而导致ADC停止采集,也就没有继续触发 mainISR(void)中断,也就没有运行电机。

2、经过在程序中添加灯检测等手段,没有发现任何故障状态,主程序一直正常在跑。

现问问各位,TI程序中判断此类异常的代码在什么地方?是怎么个判断方法,谢谢大家!

Eric Ma:

"

程序中在 mainISR(void)中有如下闪灯程序  

HAL_toggleLed(halHandle,(GPIO_Number_e)HAL_Gpio_LED2);

该中断应该是PWM触发ADC采集,ADC采集后触犯该中断,正常时该灯应闪烁。

出现如下两个问题:

A、在跑高功率时突然出现电机自动停止,而且该灯停止闪烁,重新上电后又正常。

B、如果特意不加母线电压(其它低压部分上电,高压不上电)情况时,该灯也是闪烁一会就会自动停止。"

ERIC:

如你所说,LED闪烁是在主中断里面去做的。灯停止,那就是中断没有执行。

有可能是跑到非法中断去了。不知是否是你加了什么代码的缘故。

另外,你的可以带仿真器跑,当灯停止的时候,你暂停仿真器看看跑在哪里。

我采用TI的hvkit_rev1p1的平台,控制器是28027F

程序中在 mainISR(void)中有如下闪灯程序  

HAL_toggleLed(halHandle,(GPIO_Number_e)HAL_Gpio_LED2);

该中断应该是PWM触发ADC采集,ADC采集后触犯该中断,正常时该灯应闪烁。

出现如下两个问题:

A、在跑高功率时突然出现电机自动停止,而且该灯停止闪烁,重新上电后又正常。

B、如果特意不加母线电压(其它低压部分上电,高压不上电)情况时,该灯也是闪烁一会就会自动停止。

自己判断:

1、应该是程序判断到异常(比如B中母线电压不正常),关闭了PWM,进而导致ADC停止采集,也就没有继续触发 mainISR(void)中断,也就没有运行电机。

2、经过在程序中添加灯检测等手段,没有发现任何故障状态,主程序一直正常在跑。

现问问各位,TI程序中判断此类异常的代码在什么地方?是怎么个判断方法,谢谢大家!

user1440843:

回复 Eric Ma:

非常感谢ERIC的回复,按照你的思路,我完全采用motorware的原始程序来实验,实验结果如下:
1、采用motorware_1_01_00_16的hvkit_rev1p1的lab10程序,当不提供母线电压时,灯过一会就会停止闪烁。
2、采用motorware_1_01_00_18的hvkit_rev1p1的lab10程序,即使不提供母线电压,灯仍然会一直闪烁。
此实验我持续实验了不下10次,确实有如下现象,不太明白16和18版本有什么区别?

赞(0)
未经允许不得转载:TI中文支持网 » 采用28027F的无感lab10a异常停止问题?
分享到: 更多 (0)