mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 11:10:54 +03:00
fix(rmt): a disabled channel may pick up a pending transaction
because in the trans_done interrupt, the driver didn't check the channel FSM
This commit is contained in:
@@ -367,7 +367,7 @@ TEST_CASE("rmt infinite loop transaction", "[rmt]")
|
||||
.resolution_hz = 1000000, // 1MHz, 1 tick = 1us
|
||||
.mem_block_symbols = SOC_RMT_MEM_WORDS_PER_CHANNEL,
|
||||
.gpio_num = TEST_RMT_GPIO_NUM_B,
|
||||
.trans_queue_depth = 3,
|
||||
.trans_queue_depth = 5,
|
||||
.intr_priority = 1
|
||||
};
|
||||
printf("install tx channel\r\n");
|
||||
@@ -384,6 +384,7 @@ TEST_CASE("rmt infinite loop transaction", "[rmt]")
|
||||
|
||||
rmt_transmit_config_t transmit_config = {
|
||||
.loop_count = -1, // infinite loop transmission
|
||||
.flags.queue_nonblocking = true, // return immediately if the queue is full
|
||||
};
|
||||
|
||||
printf("infinite loop transmission: keep spinning stepper motor\r\n");
|
||||
|
||||
Reference in New Issue
Block a user