diff --git a/main/include/mcpwm.h b/main/include/mcpwm.h index 75162ab..ac1bac5 100755 --- a/main/include/mcpwm.h +++ b/main/include/mcpwm.h @@ -18,6 +18,7 @@ typedef enum { OUT_U, OUT_V, OUT_W, + OUT_UVW, COMBI_COUNT }OutCombis; diff --git a/main/mcpwm.c b/main/mcpwm.c index 7294e0d..74dac02 100755 --- a/main/mcpwm.c +++ b/main/mcpwm.c @@ -363,6 +363,10 @@ void configure_mcpwm_output(OutCombis out_combi) { phase_configurations[1].state = OFF; phase_configurations[2].state = Highside; break; + case OUT_UVW: + phase_configurations[0].state = Highside; + phase_configurations[1].state = Highside; + phase_configurations[2].state = Highside; default: break; } diff --git a/main/menu.c b/main/menu.c index 216b8c0..0c10b4c 100644 --- a/main/menu.c +++ b/main/menu.c @@ -112,16 +112,17 @@ const char *mode_names[] = { }; const char *OutCombi_names[]= { - "+U -V", - "+U -W", - "+V -W", - "+V -U", - "+W -U", - "+W -V", - " +U ", - " +V ", - " +W ", - "ERROR" + "+U -V ", + "+U -W ", + "+V -W ", + "+V -U ", + "+W -U ", + "+W -V ", + " +U ", + " +V ", + " +W ", + "+U+V+W", + "ERROR " }; typedef enum { @@ -132,10 +133,10 @@ typedef enum { } BridgeState; const char *state_names[] = { - "Active ", - "Deaktive ", - "UV ", - "RFE set(OC)" + "Active ", + "Deaktive ", + "UV ", + "RFE (OC) " }; @@ -180,7 +181,11 @@ static void check_button_pressed(){ enc_in_counter=0; break; case 4: - current_out_combi =(current_out_combi+1)%6; + if (current_mode==DC_BRUSHED_MODE){ + current_out_combi =(current_out_combi+1)%10; + }else{ + current_out_combi =(current_out_combi+1)%6; + } stop_mcpwm_output(); configure_mcpwm_output(current_out_combi); ShouldState = false;