diff --git a/zephyr/modules/owntech_hrtim_driver/zephyr/src/hrtim_common.c b/zephyr/modules/owntech_hrtim_driver/zephyr/src/hrtim_common.c index 9c0e99fc6517761177372d4e7795ba71029ee74c..404bc5bac5cf988dee27a6df3d033cf2270256b3 100644 --- a/zephyr/modules/owntech_hrtim_driver/zephyr/src/hrtim_common.c +++ b/zephyr/modules/owntech_hrtim_driver/zephyr/src/hrtim_common.c @@ -62,16 +62,16 @@ void _hrtim_init_events_center_aligned(hrtim_tu_t leg1_tu, hrtim_tu_t leg2_tu) LL_HRTIM_TIM_SetADCRollOverMode(HRTIM1, LL_HRTIM_TIMER_B, LL_HRTIM_ROLLOVER_MODE_PER); // setting adc trigger - hrtim_adc_trigger_en(1, 1, LL_HRTIM_ADCTRIG_SRC13_TIMAPER); - hrtim_adc_trigger_en(3, 2, LL_HRTIM_ADCTRIG_SRC13_TIMBPER); + hrtim_adc_trigger_en(1, 1, LL_HRTIM_ADCTRIG_SRC13_TIMACMP4); + hrtim_adc_trigger_en(3, 2, LL_HRTIM_ADCTRIG_SRC13_TIMBCMP4); }else if(leg1_tu == TIMA && leg2_tu == TIMC){ // setting the adc roll-over mode on period event LL_HRTIM_TIM_SetADCRollOverMode(HRTIM1, LL_HRTIM_TIMER_A, LL_HRTIM_ROLLOVER_MODE_PER); LL_HRTIM_TIM_SetADCRollOverMode(HRTIM1, LL_HRTIM_TIMER_C, LL_HRTIM_ROLLOVER_MODE_PER); // setting adc trigger - hrtim_adc_trigger_en(3, 1, LL_HRTIM_ADCTRIG_SRC13_TIMAPER); - hrtim_adc_trigger_en(1, 3, LL_HRTIM_ADCTRIG_SRC13_TIMCPER); + hrtim_adc_trigger_en(3, 1, LL_HRTIM_ADCTRIG_SRC13_TIMACMP4); + hrtim_adc_trigger_en(1, 3, LL_HRTIM_ADCTRIG_SRC13_TIMCCMP4); } } @@ -87,11 +87,11 @@ void _hrtim_callback() void hrtim_update_adc_trig_interleaved(uint16_t new_trig, hrtim_tu_t leg1_tu, hrtim_tu_t leg2_tu) { if(leg1_tu == TIMA && leg2_tu == TIMB){ - hrtim_cmp_set(0, TIMA, CMP3xR, new_trig); - hrtim_cmp_set(0, TIMB, CMP3xR, new_trig); + hrtim_cmp_set(0, TIMA, CMP4xR, new_trig); + hrtim_cmp_set(0, TIMB, CMP4xR, new_trig); }else if(leg1_tu == TIMA && leg2_tu == TIMC){ - hrtim_cmp_set(0, TIMA, CMP3xR, new_trig); - hrtim_cmp_set(0, TIMC, CMP3xR, new_trig); + hrtim_cmp_set(0, TIMA, CMP4xR, new_trig); + hrtim_cmp_set(0, TIMC, CMP4xR, new_trig); } } diff --git a/zephyr/modules/owntech_hrtim_driver/zephyr/src/voltage_mode/owntech_leg_driver.cpp b/zephyr/modules/owntech_hrtim_driver/zephyr/src/voltage_mode/owntech_leg_driver.cpp index bd61df1df87e9e49759eb94d908c9920c635a75c..46bf7e16bb872b23844dc080bf31ce0df88da873 100644 --- a/zephyr/modules/owntech_hrtim_driver/zephyr/src/voltage_mode/owntech_leg_driver.cpp +++ b/zephyr/modules/owntech_hrtim_driver/zephyr/src/voltage_mode/owntech_leg_driver.cpp @@ -196,7 +196,10 @@ uint16_t leg_period(void) uint32_t leg_get_period_us() { - return period*184e-6; + if(LL_HRTIM_TIM_GetCountingMode(HRTIM1, LL_HRTIM_TIMER_A) == LL_HRTIM_COUNTING_MODE_UP_DOWN) + return period*2*184e-6; + else + return period*184e-6; } uint8_t leg_numof(void)