Skip to content

Commit 4e62b0e

Browse files
committed
Merge branch 'refactor/mcpwm_generator_remove_varg_api' into 'master'
refactor(mcpwm): remove varg action setting functions for timer, compare, and brake events Closes IDF-13901, IDF-13890, IDF-13865, and IDF-13880 See merge request espressif/esp-idf!42259
2 parents 1e1b95c + b762548 commit 4e62b0e

File tree

14 files changed

+177
-276
lines changed

14 files changed

+177
-276
lines changed

components/esp_driver_mcpwm/include/driver/mcpwm_fault.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
#include <stdint.h>
1010
#include <stdbool.h>
11-
#include <stdarg.h>
1211
#include "esp_err.h"
1312
#include "driver/mcpwm_types.h"
1413

components/esp_driver_mcpwm/include/driver/mcpwm_gen.h

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
#include <stdint.h>
1010
#include <stdbool.h>
11-
#include <stdarg.h>
1211
#include "esp_err.h"
1312
#include "driver/mcpwm_types.h"
1413

@@ -84,8 +83,6 @@ typedef struct {
8483
*/
8584
#define MCPWM_GEN_TIMER_EVENT_ACTION(dir, ev, act) \
8685
(mcpwm_gen_timer_event_action_t) { .direction = dir, .event = ev, .action = act }
87-
#define MCPWM_GEN_TIMER_EVENT_ACTION_END() \
88-
(mcpwm_gen_timer_event_action_t) { .event = MCPWM_TIMER_EVENT_INVALID }
8986

9087
/**
9188
* @brief Set generator action on MCPWM timer event
@@ -100,21 +97,6 @@ typedef struct {
10097
*/
10198
esp_err_t mcpwm_generator_set_action_on_timer_event(mcpwm_gen_handle_t gen, mcpwm_gen_timer_event_action_t ev_act);
10299

103-
/**
104-
* @brief Set generator actions on multiple MCPWM timer events
105-
*
106-
* @note This is an aggregation version of `mcpwm_generator_set_action_on_timer_event`, which allows user to set multiple actions in one call.
107-
*
108-
* @param[in] gen MCPWM generator handle, allocated by `mcpwm_new_generator()`
109-
* @param[in] ev_act MCPWM timer event action list, must be terminated by `MCPWM_GEN_TIMER_EVENT_ACTION_END()`
110-
* @return
111-
* - ESP_OK: Set generator actions successfully
112-
* - ESP_ERR_INVALID_ARG: Set generator actions failed because of invalid argument
113-
* - ESP_ERR_INVALID_STATE: Set generator actions failed because of timer is not connected to operator
114-
* - ESP_FAIL: Set generator actions failed because of other error
115-
*/
116-
esp_err_t mcpwm_generator_set_actions_on_timer_event(mcpwm_gen_handle_t gen, mcpwm_gen_timer_event_action_t ev_act, ...);
117-
118100
/**
119101
* @brief Generator action on specific comparator event
120102
*/
@@ -129,8 +111,6 @@ typedef struct {
129111
*/
130112
#define MCPWM_GEN_COMPARE_EVENT_ACTION(dir, cmp, act) \
131113
(mcpwm_gen_compare_event_action_t) { .direction = dir, .comparator = cmp, .action = act }
132-
#define MCPWM_GEN_COMPARE_EVENT_ACTION_END() \
133-
(mcpwm_gen_compare_event_action_t) { .comparator = NULL }
134114

135115
/**
136116
* @brief Set generator action on MCPWM compare event
@@ -144,20 +124,6 @@ typedef struct {
144124
*/
145125
esp_err_t mcpwm_generator_set_action_on_compare_event(mcpwm_gen_handle_t generator, mcpwm_gen_compare_event_action_t ev_act);
146126

147-
/**
148-
* @brief Set generator actions on multiple MCPWM compare events
149-
*
150-
* @note This is an aggregation version of `mcpwm_generator_set_action_on_compare_event`, which allows user to set multiple actions in one call.
151-
*
152-
* @param[in] generator MCPWM generator handle, allocated by `mcpwm_new_generator()`
153-
* @param[in] ev_act MCPWM compare event action list, must be terminated by `MCPWM_GEN_COMPARE_EVENT_ACTION_END()`
154-
* @return
155-
* - ESP_OK: Set generator actions successfully
156-
* - ESP_ERR_INVALID_ARG: Set generator actions failed because of invalid argument
157-
* - ESP_FAIL: Set generator actions failed because of other error
158-
*/
159-
esp_err_t mcpwm_generator_set_actions_on_compare_event(mcpwm_gen_handle_t generator, mcpwm_gen_compare_event_action_t ev_act, ...);
160-
161127
/**
162128
* @brief Generator action on specific brake event
163129
*/
@@ -172,8 +138,6 @@ typedef struct {
172138
*/
173139
#define MCPWM_GEN_BRAKE_EVENT_ACTION(dir, mode, act) \
174140
(mcpwm_gen_brake_event_action_t) { .direction = dir, .brake_mode = mode, .action = act }
175-
#define MCPWM_GEN_BRAKE_EVENT_ACTION_END() \
176-
(mcpwm_gen_brake_event_action_t) { .brake_mode = MCPWM_OPER_BRAKE_MODE_INVALID }
177141

178142
/**
179143
* @brief Set generator action on MCPWM brake event
@@ -187,20 +151,6 @@ typedef struct {
187151
*/
188152
esp_err_t mcpwm_generator_set_action_on_brake_event(mcpwm_gen_handle_t generator, mcpwm_gen_brake_event_action_t ev_act);
189153

190-
/**
191-
* @brief Set generator actions on multiple MCPWM brake events
192-
*
193-
* @note This is an aggregation version of `mcpwm_generator_set_action_on_brake_event`, which allows user to set multiple actions in one call.
194-
*
195-
* @param[in] generator MCPWM generator handle, allocated by `mcpwm_new_generator()`
196-
* @param[in] ev_act MCPWM brake event action list, must be terminated by `MCPWM_GEN_BRAKE_EVENT_ACTION_END()`
197-
* @return
198-
* - ESP_OK: Set generator actions successfully
199-
* - ESP_ERR_INVALID_ARG: Set generator actions failed because of invalid argument
200-
* - ESP_FAIL: Set generator actions failed because of other error
201-
*/
202-
esp_err_t mcpwm_generator_set_actions_on_brake_event(mcpwm_gen_handle_t generator, mcpwm_gen_brake_event_action_t ev_act, ...);
203-
204154
/**
205155
* @brief Generator action on specific fault event
206156
*/

components/esp_driver_mcpwm/src/mcpwm_gen.c

Lines changed: 0 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -160,37 +160,6 @@ esp_err_t mcpwm_generator_set_action_on_timer_event(mcpwm_gen_handle_t gen, mcpw
160160
return ESP_OK;
161161
}
162162

163-
esp_err_t mcpwm_generator_set_actions_on_timer_event(mcpwm_gen_handle_t gen, mcpwm_gen_timer_event_action_t ev_act, ...)
164-
{
165-
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");
166-
mcpwm_oper_t *oper = gen->oper;
167-
mcpwm_group_t *group = oper->group;
168-
mcpwm_timer_t *timer = oper->timer;
169-
ESP_RETURN_ON_FALSE(timer, ESP_ERR_INVALID_STATE, TAG, "no timer is connected to the operator");
170-
mcpwm_gen_timer_event_action_t ev_act_itor = ev_act;
171-
bool invalid_utep = false;
172-
bool invalid_dtez = false;
173-
va_list it = {};
174-
va_start(it, ev_act);
175-
while (ev_act_itor.event != MCPWM_TIMER_EVENT_INVALID) {
176-
invalid_utep = (timer->count_mode == MCPWM_TIMER_COUNT_MODE_UP_DOWN) &&
177-
(ev_act_itor.direction == MCPWM_TIMER_DIRECTION_UP) &&
178-
(ev_act_itor.event == MCPWM_TIMER_EVENT_FULL);
179-
invalid_dtez = (timer->count_mode == MCPWM_TIMER_COUNT_MODE_UP_DOWN) &&
180-
(ev_act_itor.direction == MCPWM_TIMER_DIRECTION_DOWN) &&
181-
(ev_act_itor.event == MCPWM_TIMER_EVENT_EMPTY);
182-
if (invalid_utep || invalid_dtez) {
183-
va_end(it);
184-
ESP_RETURN_ON_FALSE(false, ESP_ERR_INVALID_ARG, TAG, "UTEP and DTEZ can't be reached under MCPWM_TIMER_COUNT_MODE_UP_DOWN mode");
185-
}
186-
mcpwm_ll_generator_set_action_on_timer_event(group->hal.dev, oper->oper_id, gen->gen_id,
187-
ev_act_itor.direction, ev_act_itor.event, ev_act_itor.action);
188-
ev_act_itor = va_arg(it, mcpwm_gen_timer_event_action_t);
189-
}
190-
va_end(it);
191-
return ESP_OK;
192-
}
193-
194163
esp_err_t mcpwm_generator_set_action_on_compare_event(mcpwm_gen_handle_t gen, mcpwm_gen_compare_event_action_t ev_act)
195164
{
196165
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");
@@ -202,23 +171,6 @@ esp_err_t mcpwm_generator_set_action_on_compare_event(mcpwm_gen_handle_t gen, mc
202171
return ESP_OK;
203172
}
204173

205-
esp_err_t mcpwm_generator_set_actions_on_compare_event(mcpwm_gen_handle_t gen, mcpwm_gen_compare_event_action_t ev_act, ...)
206-
{
207-
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");
208-
mcpwm_oper_t *oper = gen->oper;
209-
mcpwm_group_t *group = oper->group;
210-
mcpwm_gen_compare_event_action_t ev_act_itor = ev_act;
211-
va_list it = {};
212-
va_start(it, ev_act);
213-
while (ev_act_itor.comparator) {
214-
mcpwm_ll_generator_set_action_on_compare_event(group->hal.dev, oper->oper_id, gen->gen_id,
215-
ev_act_itor.direction, ev_act_itor.comparator->cmpr_id, ev_act_itor.action);
216-
ev_act_itor = va_arg(it, mcpwm_gen_compare_event_action_t);
217-
}
218-
va_end(it);
219-
return ESP_OK;
220-
}
221-
222174
esp_err_t mcpwm_generator_set_action_on_brake_event(mcpwm_gen_handle_t gen, mcpwm_gen_brake_event_action_t ev_act)
223175
{
224176
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");
@@ -230,23 +182,6 @@ esp_err_t mcpwm_generator_set_action_on_brake_event(mcpwm_gen_handle_t gen, mcpw
230182
return ESP_OK;
231183
}
232184

233-
esp_err_t mcpwm_generator_set_actions_on_brake_event(mcpwm_gen_handle_t gen, mcpwm_gen_brake_event_action_t ev_act, ...)
234-
{
235-
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");
236-
mcpwm_oper_t *oper = gen->oper;
237-
mcpwm_group_t *group = oper->group;
238-
mcpwm_gen_brake_event_action_t ev_act_itor = ev_act;
239-
va_list it = {};
240-
va_start(it, ev_act);
241-
while (ev_act_itor.brake_mode != MCPWM_OPER_BRAKE_MODE_INVALID) {
242-
mcpwm_ll_generator_set_action_on_brake_event(group->hal.dev, oper->oper_id, gen->gen_id,
243-
ev_act_itor.direction, ev_act_itor.brake_mode, ev_act_itor.action);
244-
ev_act_itor = va_arg(it, mcpwm_gen_brake_event_action_t);
245-
}
246-
va_end(it);
247-
return ESP_OK;
248-
}
249-
250185
esp_err_t mcpwm_generator_set_action_on_fault_event(mcpwm_gen_handle_t gen, mcpwm_gen_fault_event_action_t ev_act)
251186
{
252187
ESP_RETURN_ON_FALSE(gen, ESP_ERR_INVALID_ARG, TAG, "invalid argument");

components/esp_driver_mcpwm/src/mcpwm_private.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
#include <stdint.h>
1010
#include <stdlib.h>
11-
#include <stdarg.h>
1211
#include <sys/cdefs.h>
1312
#include <sys/lock.h>
1413
#include "sdkconfig.h"

components/esp_driver_mcpwm/test_apps/mcpwm/main/test_mcpwm_gen.c

Lines changed: 38 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,10 @@ TEST_CASE("mcpwm_generator_action_on_timer_event", "[mcpwm]")
260260
TEST_ESP_OK(mcpwm_new_generator(oper, &gen_config, &gen));
261261

262262
printf("set generator to output high on timer full\r\n");
263-
TEST_ESP_OK(mcpwm_generator_set_actions_on_timer_event(gen,
264-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH),
265-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP),
266-
MCPWM_GEN_TIMER_EVENT_ACTION_END()));
263+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
264+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH)));
265+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
266+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP)));
267267
printf("start timer\r\n");
268268
TEST_ESP_OK(mcpwm_timer_start_stop(timer, MCPWM_TIMER_START_NO_STOP));
269269
vTaskDelay(pdMS_TO_TICKS(100));
@@ -272,10 +272,10 @@ TEST_CASE("mcpwm_generator_action_on_timer_event", "[mcpwm]")
272272
TEST_ASSERT_EQUAL(1, gpio_get_level(generator_gpio));
273273

274274
printf("set generator to output low on timer full\r\n");
275-
TEST_ESP_OK(mcpwm_generator_set_actions_on_timer_event(gen,
276-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_LOW),
277-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP),
278-
MCPWM_GEN_TIMER_EVENT_ACTION_END()));
275+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
276+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_LOW)));
277+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
278+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP)));
279279
printf("start timer\r\n");
280280
TEST_ESP_OK(mcpwm_timer_start_stop(timer, MCPWM_TIMER_START_NO_STOP));
281281
vTaskDelay(pdMS_TO_TICKS(100));
@@ -457,49 +457,48 @@ static void single_edge_active_low(mcpwm_gen_handle_t gena, mcpwm_gen_handle_t g
457457

458458
static void pulse_placement(mcpwm_gen_handle_t gena, mcpwm_gen_handle_t genb, mcpwm_cmpr_handle_t cmpa, mcpwm_cmpr_handle_t cmpb)
459459
{
460-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(gena,
461-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH),
462-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_LOW),
463-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
464-
TEST_ESP_OK(mcpwm_generator_set_actions_on_timer_event(genb,
465-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_TOGGLE),
466-
MCPWM_GEN_TIMER_EVENT_ACTION_END()));
460+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
461+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH)));
462+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
463+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_LOW)));
464+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(genb,
465+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_TOGGLE)));
467466
}
468467

469468
static void dual_edge_active_low_asym(mcpwm_gen_handle_t gena, mcpwm_gen_handle_t genb, mcpwm_cmpr_handle_t cmpa, mcpwm_cmpr_handle_t cmpb)
470469
{
471-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(gena,
472-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH),
473-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_LOW),
474-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
475-
TEST_ESP_OK(mcpwm_generator_set_actions_on_timer_event(genb,
476-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_LOW),
477-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH),
478-
MCPWM_GEN_TIMER_EVENT_ACTION_END()));
470+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
471+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH)));
472+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
473+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_LOW)));
474+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(genb,
475+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_LOW)));
476+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(genb,
477+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH)));
479478
}
480479

481480
static void dual_edge_active_low_sym(mcpwm_gen_handle_t gena, mcpwm_gen_handle_t genb, mcpwm_cmpr_handle_t cmpa, mcpwm_cmpr_handle_t cmpb)
482481
{
483-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(gena,
484-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH),
485-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpa, MCPWM_GEN_ACTION_LOW),
486-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
487-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(genb,
488-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_HIGH),
489-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_LOW),
490-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
482+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
483+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH)));
484+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
485+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpa, MCPWM_GEN_ACTION_LOW)));
486+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(genb,
487+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_HIGH)));
488+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(genb,
489+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_LOW)));
491490
}
492491

493492
static void dual_edge_complementary(mcpwm_gen_handle_t gena, mcpwm_gen_handle_t genb, mcpwm_cmpr_handle_t cmpa, mcpwm_cmpr_handle_t cmpb)
494493
{
495-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(gena,
496-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH),
497-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpa, MCPWM_GEN_ACTION_LOW),
498-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
499-
TEST_ESP_OK(mcpwm_generator_set_actions_on_compare_event(genb,
500-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_LOW),
501-
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_HIGH),
502-
MCPWM_GEN_COMPARE_EVENT_ACTION_END()));
494+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
495+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpa, MCPWM_GEN_ACTION_HIGH)));
496+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(gena,
497+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpa, MCPWM_GEN_ACTION_LOW)));
498+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(genb,
499+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, cmpb, MCPWM_GEN_ACTION_LOW)));
500+
TEST_ESP_OK(mcpwm_generator_set_action_on_compare_event(genb,
501+
MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, cmpb, MCPWM_GEN_ACTION_HIGH)));
503502
}
504503

505504
TEST_CASE("mcpwm_generator_action_on_compare_event", "[mcpwm]")

components/esp_driver_mcpwm/test_apps/mcpwm/main/test_mcpwm_sleep.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,10 @@ static void test_mcpwm_timer_sleep_retention(bool allow_pd)
6262
TEST_ESP_OK(mcpwm_new_generator(oper, &gen_config, &gen));
6363

6464
printf("set generator to output high on timer full\r\n");
65-
TEST_ESP_OK(mcpwm_generator_set_actions_on_timer_event(gen,
66-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH),
67-
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP),
68-
MCPWM_GEN_TIMER_EVENT_ACTION_END()));
65+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
66+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_FULL, MCPWM_GEN_ACTION_HIGH)));
67+
TEST_ESP_OK(mcpwm_generator_set_action_on_timer_event(gen,
68+
MCPWM_GEN_TIMER_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, MCPWM_TIMER_EVENT_EMPTY, MCPWM_GEN_ACTION_KEEP)));
6969

7070
// go to sleep
7171
esp_sleep_context_t sleep_ctx;

0 commit comments

Comments
 (0)