Pull RMT into an optional module, refactor.
This commit is contained in:
@ -36,7 +36,7 @@
|
||||
# define OPTIONAL_ASSEMBLERS_SUPPORT
|
||||
# endif
|
||||
|
||||
// Hook to pull in words from optional Oled support.
|
||||
// Hook to pull in optional Oled support.
|
||||
# if __has_include("oled.h")
|
||||
# include "oled.h"
|
||||
# else
|
||||
@ -44,7 +44,7 @@
|
||||
# define OPTIONAL_OLED_SUPPORT
|
||||
# endif
|
||||
|
||||
// Hook to pull in words from optional ESP32-CAM camera support.
|
||||
// Hook to pull in optional ESP32-CAM camera support.
|
||||
# if __has_include("camera.h")
|
||||
# include "camera.h"
|
||||
# else
|
||||
@ -52,20 +52,28 @@
|
||||
# define OPTIONAL_CAMERA_SUPPORT
|
||||
# endif
|
||||
|
||||
// Hook to pull in words from optional serial bluetooth support.
|
||||
// Hook to pull in optional RMT (Remote Control) support.
|
||||
# if __has_include("rmt.h")
|
||||
# include "rmt.h"
|
||||
# else
|
||||
# define OPTIONAL_RMT_VOCABULARY
|
||||
# define OPTIONAL_RMT_SUPPORT
|
||||
# endif
|
||||
|
||||
// Hook to pull in optional serial bluetooth support.
|
||||
# if __has_include("serial-bluetooth.h")
|
||||
# include "serial-bluetooth.h"
|
||||
# else
|
||||
# define OPTIONAL_SERIAL_BLUETOOTH_SUPPORT
|
||||
# define OPTIONAL_BLUETOOTH_VOCABULARY
|
||||
# define OPTIONAL_SERIAL_BLUETOOTH_SUPPORT
|
||||
# endif
|
||||
|
||||
// Hook to pull in words from optional SPI flash support.
|
||||
// Hook to pull in optional SPI flash support.
|
||||
# if __has_include("spi-flash.h")
|
||||
# include "spi-flash.h"
|
||||
# else
|
||||
# define OPTIONAL_SPI_FLASH_SUPPORT
|
||||
# define OPTIONAL_SPI_FLASH_VOCABULARY
|
||||
# define OPTIONAL_SPI_FLASH_SUPPORT
|
||||
# endif
|
||||
|
||||
static cell_t ResizeFile(cell_t fd, cell_t size);
|
||||
@ -94,16 +102,16 @@ static cell_t ResizeFile(cell_t fd, cell_t size);
|
||||
OPTIONAL_SOCKETS_SUPPORT \
|
||||
OPTIONAL_FREERTOS_SUPPORT \
|
||||
OPTIONAL_INTERRUPTS_SUPPORT \
|
||||
OPTIONAL_RMT_SUPPORT \
|
||||
CALLING_OPCODE_LIST \
|
||||
FLOATING_POINT_LIST
|
||||
|
||||
#define EXTERNAL_OPTIONAL_MODULE_SUPPORT \
|
||||
OPTIONAL_ASSEMBLERS_SUPPORT \
|
||||
OPTIONAL_CAMERA_SUPPORT \
|
||||
OPTIONAL_SPI_FLASH_SUPPORT \
|
||||
OPTIONAL_SERIAL_BLUETOOTH_SUPPORT \
|
||||
OPTIONAL_OLED_SUPPORT \
|
||||
OPTIONAL_RMT_SUPPORT \
|
||||
OPTIONAL_SERIAL_BLUETOOTH_SUPPORT \
|
||||
OPTIONAL_SPI_FLASH_SUPPORT
|
||||
|
||||
#define REQUIRED_MEMORY_SUPPORT \
|
||||
YV(internals, MALLOC, SET malloc(n0)) \
|
||||
@ -349,66 +357,6 @@ static void TimerInitNull(cell_t group, cell_t timer);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef ENABLE_RMT_SUPPORT
|
||||
# define OPTIONAL_RMT_SUPPORT
|
||||
#else
|
||||
# ifndef SIM_PRINT_ONLY
|
||||
# include "driver/rmt.h"
|
||||
# endif
|
||||
# define OPTIONAL_RMT_SUPPORT \
|
||||
YV(rmt, rmt_set_clk_div, n0 = rmt_set_clk_div((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_clk_div, n0 = rmt_get_clk_div((rmt_channel_t) n1, b0); NIP) \
|
||||
YV(rmt, rmt_set_rx_idle_thresh, n0 = rmt_set_rx_idle_thresh((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_rx_idle_thresh, \
|
||||
n0 = rmt_get_rx_idle_thresh((rmt_channel_t) n1, (uint16_t *) a0); NIP) \
|
||||
YV(rmt, rmt_set_mem_block_num, n0 = rmt_set_mem_block_num((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_mem_block_num, n0 = rmt_get_mem_block_num((rmt_channel_t) n1, b0); NIP) \
|
||||
YV(rmt, rmt_set_tx_carrier, n0 = rmt_set_tx_carrier((rmt_channel_t) n4, n3, n2, n1, \
|
||||
(rmt_carrier_level_t) n0); NIPn(4)) \
|
||||
YV(rmt, rmt_set_mem_pd, n0 = rmt_set_mem_pd((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_mem_pd, n0 = rmt_get_mem_pd((rmt_channel_t) n1, (bool *) a0); NIP) \
|
||||
YV(rmt, rmt_tx_start, n0 = rmt_tx_start((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_tx_stop, n0 = rmt_tx_stop((rmt_channel_t) n0)) \
|
||||
YV(rmt, rmt_rx_start, n0 = rmt_rx_start((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_rx_stop, n0 = rmt_rx_stop((rmt_channel_t) n0)) \
|
||||
YV(rmt, rmt_tx_memory_reset, n0 = rmt_tx_memory_reset((rmt_channel_t) n0)) \
|
||||
YV(rmt, rmt_rx_memory_reset, n0 = rmt_rx_memory_reset((rmt_channel_t) n0)) \
|
||||
YV(rmt, rmt_set_memory_owner, n0 = rmt_set_memory_owner((rmt_channel_t) n1, (rmt_mem_owner_t) n0); NIP) \
|
||||
YV(rmt, rmt_get_memory_owner, n0 = rmt_get_memory_owner((rmt_channel_t) n1, (rmt_mem_owner_t *) a0); NIP) \
|
||||
YV(rmt, rmt_set_tx_loop_mode, n0 = rmt_set_tx_loop_mode((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_tx_loop_mode, n0 = rmt_get_tx_loop_mode((rmt_channel_t) n1, (bool *) a0); NIP) \
|
||||
YV(rmt, rmt_set_rx_filter, n0 = rmt_set_rx_filter((rmt_channel_t) n2, n1, n0); NIPn(2)) \
|
||||
YV(rmt, rmt_set_source_clk, n0 = rmt_set_source_clk((rmt_channel_t) n1, (rmt_source_clk_t) n0); NIP) \
|
||||
YV(rmt, rmt_get_source_clk, n0 = rmt_get_source_clk((rmt_channel_t) n1, (rmt_source_clk_t * ) a0); NIP) \
|
||||
YV(rmt, rmt_set_idle_level, n0 = rmt_set_idle_level((rmt_channel_t) n2, n1, \
|
||||
(rmt_idle_level_t) n0); NIPn(2)) \
|
||||
YV(rmt, rmt_get_idle_level, n0 = rmt_get_idle_level((rmt_channel_t) n2, \
|
||||
(bool *) a1, (rmt_idle_level_t *) a0); NIPn(2)) \
|
||||
YV(rmt, rmt_get_status, n0 = rmt_get_status((rmt_channel_t) n1, (uint32_t *) a0); NIP) \
|
||||
YV(rmt, rmt_set_rx_intr_en, n0 = rmt_set_rx_intr_en((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_set_err_intr_en, n0 = rmt_set_err_intr_en((rmt_channel_t) n1, (rmt_mode_t) n0); NIP) \
|
||||
YV(rmt, rmt_set_tx_intr_en, n0 = rmt_set_tx_intr_en((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_set_tx_thr_intr_en, n0 = rmt_set_tx_thr_intr_en((rmt_channel_t) n2, n1, n0); NIPn(2)) \
|
||||
YV(rmt, rmt_set_gpio, n0 = rmt_set_gpio((rmt_channel_t) n3, (rmt_mode_t) n2, (gpio_num_t) n1, n0); NIPn(3)) \
|
||||
YV(rmt, rmt_config, n0 = rmt_config((const rmt_config_t *) a0)) \
|
||||
YV(rmt, rmt_isr_register, n0 = rmt_isr_register((void (*)(void*)) a3, a2, n1, \
|
||||
(rmt_isr_handle_t *) a0); NIPn(3)) \
|
||||
YV(rmt, rmt_isr_deregister, n0 = rmt_isr_deregister((rmt_isr_handle_t) n0)) \
|
||||
YV(rmt, rmt_fill_tx_items, n0 = rmt_fill_tx_items((rmt_channel_t) n3, \
|
||||
(rmt_item32_t *) a2, n1, n0); NIPn(3)) \
|
||||
YV(rmt, rmt_driver_install, n0 = rmt_driver_install((rmt_channel_t) n2, n1, n0); NIPn(2)) \
|
||||
YV(rmt, rmt_driver_uinstall, n0 = rmt_driver_uninstall((rmt_channel_t) n0)) \
|
||||
YV(rmt, rmt_get_channel_status, n0 = rmt_get_channel_status((rmt_channel_status_result_t *) a0)) \
|
||||
YV(rmt, rmt_get_counter_clock, n0 = rmt_get_counter_clock((rmt_channel_t) n1, (uint32_t *) a0); NIP) \
|
||||
YV(rmt, rmt_write_items, n0 = rmt_write_items((rmt_channel_t) n3, (rmt_item32_t *) a2, n1, n0); NIPn(3)) \
|
||||
YV(rmt, rmt_wait_tx_done, n0 = rmt_wait_tx_done((rmt_channel_t) n1, n0); NIP) \
|
||||
YV(rmt, rmt_get_ringbuf_handle, n0 = rmt_get_ringbuf_handle((rmt_channel_t) n1, (RingbufHandle_t *) a0); NIP) \
|
||||
YV(rmt, rmt_translator_init, n0 = rmt_translator_init((rmt_channel_t) n1, (sample_to_rmt_t) n0); NIP) \
|
||||
YV(rmt, rmt_translator_set_context, n0 = rmt_translator_set_context((rmt_channel_t) n1, a0); NIP) \
|
||||
YV(rmt, rmt_translator_get_context, n0 = rmt_translator_get_context((const size_t *) a1, (void **) a0); NIP) \
|
||||
YV(rmt, rmt_write_sample, n0 = rmt_write_sample((rmt_channel_t) n3, b2, n1, n0); NIPn(3))
|
||||
#endif
|
||||
|
||||
#ifndef ENABLE_SOCKETS_SUPPORT
|
||||
# define OPTIONAL_SOCKETS_SUPPORT
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user