Просмотр исходного кода

MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition

Closes https://github.com/espressif/esp-idf/issues/7321
SalimTerryLi 4 лет назад
Родитель
Сommit
f23acef8eb

+ 5 - 5
components/hal/esp32/include/hal/mcpwm_ll.h

@@ -516,12 +516,12 @@ static inline void mcpwm_ll_set_deadtime_mode(mcpwm_dev_t *mcpwm,
     MCPWM_DT0_A_OUTBYPASS_M | MCPWM_DT0_B_OUTBYPASS_M)
 
     static uint32_t deadtime_mode_settings[MCPWM_DEADTIME_TYPE_MAX] = {
-        [MCPWM_BYPASS_RED] =                    0b010010000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_BYPASS_RED] =                    0b010000000 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_BYPASS_FED] =                    0b100000000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_HIGH_MODE] =              0b000010000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_LOW_MODE] =               0b001110000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_HIGH_COMPLIMENT_MODE] =   0b001010000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_LOW_COMPLIMENT_MODE] =    0b000101000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_HIGH_MODE] =              0b000000000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_LOW_MODE] =               0b001100000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_HIGH_COMPLIMENT_MODE] =   0b001000000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_LOW_COMPLIMENT_MODE] =    0b000100000 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_ACTIVE_RED_FED_FROM_PWMXA] =     0b000000011 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_ACTIVE_RED_FED_FROM_PWMXB] =     0b000001011 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_DEADTIME_BYPASS] =               0b110000000 << MCPWM_DT0_DEB_MODE_S,

+ 5 - 5
components/hal/esp32s3/include/hal/mcpwm_ll.h

@@ -516,12 +516,12 @@ static inline void mcpwm_ll_set_deadtime_mode(mcpwm_dev_t *mcpwm,
     MCPWM_DT0_A_OUTBYPASS_M | MCPWM_DT0_B_OUTBYPASS_M)
 
     static uint32_t deadtime_mode_settings[MCPWM_DEADTIME_TYPE_MAX] = {
-        [MCPWM_BYPASS_RED] =                    0b010010000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_BYPASS_RED] =                    0b010000000 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_BYPASS_FED] =                    0b100000000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_HIGH_MODE] =              0b000010000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_LOW_MODE] =               0b001110000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_HIGH_COMPLIMENT_MODE] =   0b001010000 << MCPWM_DT0_DEB_MODE_S,
-        [MCPWM_ACTIVE_LOW_COMPLIMENT_MODE] =    0b000101000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_HIGH_MODE] =              0b000000000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_LOW_MODE] =               0b001100000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_HIGH_COMPLIMENT_MODE] =   0b001000000 << MCPWM_DT0_DEB_MODE_S,
+        [MCPWM_ACTIVE_LOW_COMPLIMENT_MODE] =    0b000100000 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_ACTIVE_RED_FED_FROM_PWMXA] =     0b000000011 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_ACTIVE_RED_FED_FROM_PWMXB] =     0b000001011 << MCPWM_DT0_DEB_MODE_S,
         [MCPWM_DEADTIME_BYPASS] =               0b110000000 << MCPWM_DT0_DEB_MODE_S,