|
@@ -65,9 +65,16 @@ void can_process_factory_message(can_message_t *can_message){
|
|
|
u8 item = decode_u8(can_message->data);
|
|
u8 item = decode_u8(can_message->data);
|
|
|
if (item == 1) { //3相驱动测试
|
|
if (item == 1) { //3相驱动测试
|
|
|
u8 duty = decode_u8((u8 *)can_message->data + 1);
|
|
u8 duty = decode_u8((u8 *)can_message->data + 1);
|
|
|
- pwm_3phase_test();
|
|
|
|
|
- u16 duty_time = (u16)((float)duty * FOC_PWM_Half_Period / 100.0f);
|
|
|
|
|
- pwm_update_duty(duty_time, duty_time, duty_time);
|
|
|
|
|
|
|
+ if (duty != 0) {
|
|
|
|
|
+ pwm_3phase_test();
|
|
|
|
|
+ pwm_start();
|
|
|
|
|
+ u16 duty_time = (u16)((float)duty * FOC_PWM_Half_Period / 100.0f);
|
|
|
|
|
+ pwm_update_duty(duty_time, duty_time, duty_time);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ pwm_stop();
|
|
|
|
|
+ pwm_3phase_init();
|
|
|
|
|
+ }
|
|
|
|
|
+ sys_debug("phase test duty %d\n", duty);
|
|
|
}else if (item == 2) {//获取所有电压的采集值
|
|
}else if (item == 2) {//获取所有电压的采集值
|
|
|
can_response_vols(can_message->src, can_message->key);
|
|
can_response_vols(can_message->src, can_message->key);
|
|
|
return;
|
|
return;
|