RMT refactoring based on IDF (#6024)

Summary

RMT HAL refactoring based on IDF.

Impact

Improves RMT by adding IDF v4.4 support.
Receiving RMT can handle any size of data.
rmtInit() has a new parameter - RxBufferSize - to hold any number of data when receiving RMT.
rmtWrite() has a new parameter - wait_tx_done - to block writing until sending all data.

Related links

fix #5905
This commit is contained in:
Rodrigo Garcia
2021-12-21 10:02:40 -03:00
committed by GitHub
parent c66c7fe27e
commit 7cf162346a
6 changed files with 344 additions and 763 deletions

View File

@ -182,7 +182,7 @@ void setup()
Serial.begin(115200);
// Initialize the channel to capture up to 192 items
if ((rmt_recv = rmtInit(21, false, RMT_MEM_192)) == NULL)
if ((rmt_recv = rmtInit(21, RMT_RX_MODE, RMT_MEM_192)) == NULL)
{
Serial.println("init receiver failed\n");
}