73 uint8_t addr0[5] = {0x1A, 0x01, 0x02, 0x03, 0x00};
74 uint8_t addr1[5] = {0x1B, 0x01, 0x02, 0x03, 0x01};
75 uint8_t addr2[5] = {0x1B, 0x01, 0x02, 0x03, 0x02};
76 uint8_t addr3[5] = {0x1B, 0x01, 0x02, 0x03, 0x03};
77 uint8_t addr4[5] = {0x1B, 0x01, 0x02, 0x03, 0x04};
78 uint8_t addr5[5] = {0x1B, 0x01, 0x02, 0x03, 0x05};
699 for (i = 0; i < 32; i++)
948 uint8_t addr0[5] = {0x1A, 0x01, 0x02, 0x03, 0x00};
949 uint8_t addr1[5] = {0x1B, 0x01, 0x02, 0x03, 0x01};
950 uint8_t addr2[5] = {0x1B, 0x01, 0x02, 0x03, 0x02};
951 uint8_t addr3[5] = {0x1B, 0x01, 0x02, 0x03, 0x03};
952 uint8_t addr4[5] = {0x1B, 0x01, 0x02, 0x03, 0x04};
953 uint8_t addr5[5] = {0x1B, 0x01, 0x02, 0x03, 0x05};
driver nrf24l01 send receive test header file
uint8_t nrf24l01_flush_tx(nrf24l01_handle_t *handle)
flush tx
uint8_t nrf24l01_set_dynamic_payload(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable the dynamic payload
uint8_t nrf24l01_set_rx_pipe_3_address(nrf24l01_handle_t *handle, uint8_t addr)
set the rx pipe 3 address
uint8_t nrf24l01_set_tx_address(nrf24l01_handle_t *handle, uint8_t *addr, uint8_t len)
set the tx address
uint8_t nrf24l01_set_pipe_2_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 2 payload number
uint8_t nrf24l01_set_pipe_0_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 0 payload number
uint8_t nrf24l01_set_tx_payload_with_no_ack(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable the tx payload with no ack
uint8_t nrf24l01_set_pipe_dynamic_payload(nrf24l01_handle_t *handle, nrf24l01_pipe_t pipe, nrf24l01_bool_t enable)
enable or disable the pipe dynamic payload
uint8_t nrf24l01_set_auto_retransmit_count(nrf24l01_handle_t *handle, uint8_t count)
set the auto retransmit count
uint8_t nrf24l01_set_pipe_4_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 4 payload number
uint8_t nrf24l01_send(nrf24l01_handle_t *handle, uint8_t *buf, uint8_t len)
send data
uint8_t nrf24l01_set_payload_with_ack(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable the payload with ack
uint8_t nrf24l01_set_config(nrf24l01_handle_t *handle, nrf24l01_config_t config, nrf24l01_bool_t enable)
enable or disable configure
uint8_t nrf24l01_set_output_power(nrf24l01_handle_t *handle, nrf24l01_output_power_t power)
set the output power
uint8_t nrf24l01_set_rx_pipe_1_address(nrf24l01_handle_t *handle, uint8_t *addr, uint8_t len)
set the rx pipe 1 address
uint8_t nrf24l01_set_channel_frequency(nrf24l01_handle_t *handle, uint8_t freq)
set the channel frequency
uint8_t nrf24l01_irq_handler(nrf24l01_handle_t *handle)
irq handler
uint8_t nrf24l01_set_auto_acknowledgment(nrf24l01_handle_t *handle, nrf24l01_pipe_t pipe, nrf24l01_bool_t enable)
enable or disable auto acknowledgment
uint8_t nrf24l01_clear_interrupt(nrf24l01_handle_t *handle, nrf24l01_interrupt_t type)
clear the interrupt status
uint8_t nrf24l01_set_pipe_3_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 3 payload number
uint8_t nrf24l01_auto_retransmit_delay_convert_to_register(nrf24l01_handle_t *handle, uint32_t us, uint8_t *reg)
convert the delay to the register raw data
uint8_t nrf24l01_set_rx_pipe_5_address(nrf24l01_handle_t *handle, uint8_t addr)
set the rx pipe 5 address
uint8_t nrf24l01_set_address_width(nrf24l01_handle_t *handle, nrf24l01_address_width_t width)
set the address width
uint8_t nrf24l01_set_active(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable the chip
uint8_t nrf24l01_set_rx_pipe(nrf24l01_handle_t *handle, nrf24l01_pipe_t pipe, nrf24l01_bool_t enable)
enable or disable rx pipe
uint8_t nrf24l01_info(nrf24l01_info_t *info)
get chip's information
uint8_t nrf24l01_set_pipe_5_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 5 payload number
uint8_t nrf24l01_set_continuous_carrier_transmit(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable continuous carrier transmit
uint8_t nrf24l01_init(nrf24l01_handle_t *handle)
initialize the chip
uint8_t nrf24l01_set_force_pll_lock_signal(nrf24l01_handle_t *handle, nrf24l01_bool_t enable)
enable or disable force pll lock signal
uint8_t nrf24l01_set_rx_pipe_2_address(nrf24l01_handle_t *handle, uint8_t addr)
set the rx pipe 2 address
uint8_t nrf24l01_set_mode(nrf24l01_handle_t *handle, nrf24l01_mode_t mode)
set the chip mode
uint8_t nrf24l01_set_auto_retransmit_delay(nrf24l01_handle_t *handle, uint8_t delay)
set the auto retransmit delay
uint8_t nrf24l01_set_pipe_1_payload_number(nrf24l01_handle_t *handle, uint8_t num)
set the pipe 1 payload number
uint8_t nrf24l01_flush_rx(nrf24l01_handle_t *handle)
flush rx
uint8_t nrf24l01_deinit(nrf24l01_handle_t *handle)
close the chip
uint8_t nrf24l01_set_data_rate(nrf24l01_handle_t *handle, nrf24l01_data_rate_t rate)
set the data rate
uint8_t nrf24l01_set_rx_pipe_0_address(nrf24l01_handle_t *handle, uint8_t *addr, uint8_t len)
set the rx pipe 0 address
uint8_t nrf24l01_set_rx_pipe_4_address(nrf24l01_handle_t *handle, uint8_t addr)
set the rx pipe 4 address
@ NRF24L01_OUTPUT_POWER_0_DBM
@ NRF24L01_CONFIG_MASK_TX_DS
@ NRF24L01_CONFIG_MASK_MAX_RT
@ NRF24L01_CONFIG_MASK_RX_DR
@ NRF24L01_INTERRUPT_TX_DS
@ NRF24L01_INTERRUPT_MAX_RT
@ NRF24L01_INTERRUPT_RX_DR
@ NRF24L01_INTERRUPT_TX_FULL
@ NRF24L01_ADDRESS_WIDTH_5_BYTES
uint8_t nrf24l01_interface_spi_read(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus read
uint8_t nrf24l01_interface_spi_deinit(void)
interface spi bus deinit
void nrf24l01_interface_delay_ms(uint32_t ms)
interface delay ms
void nrf24l01_interface_receive_callback(uint8_t type, uint8_t num, uint8_t *buf, uint8_t len)
interface receive callback
void nrf24l01_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t nrf24l01_interface_gpio_deinit(void)
interface gpio deinit
uint8_t nrf24l01_interface_gpio_init(void)
interface gpio init
uint8_t nrf24l01_interface_spi_init(void)
interface spi bus init
uint8_t nrf24l01_interface_spi_write(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus write
uint8_t nrf24l01_interface_gpio_write(uint8_t data)
interface gpio write
#define DRIVER_NRF24L01_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_NRF24L01_LINK_SPI_INIT(HANDLE, FUC)
link spi_init function
#define DRIVER_NRF24L01_LINK_GPIO_WRITE(HANDLE, FUC)
link gpio_write function
#define DRIVER_NRF24L01_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_NRF24L01_LINK_GPIO_INIT(HANDLE, FUC)
link gpio_init function
#define DRIVER_NRF24L01_LINK_SPI_READ(HANDLE, FUC)
link spi_read function
#define DRIVER_NRF24L01_LINK_SPI_WRITE(HANDLE, FUC)
link gpio_write function
#define DRIVER_NRF24L01_LINK_GPIO_DEINIT(HANDLE, FUC)
link gpio_deinit function
#define DRIVER_NRF24L01_LINK_INIT(HANDLE, STRUCTURE)
initialize nrf24l01_handle_t structure
#define DRIVER_NRF24L01_LINK_SPI_DEINIT(HANDLE, FUC)
link spi_deinit function
#define DRIVER_NRF24L01_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
uint8_t nrf24l01_receive_test(void)
receive test
uint8_t nrf24l01_send_test(void)
send test
uint8_t nrf24l01_interrupt_test_irq_handler(void)
nrf24l01 interrupt test irq
nrf24l01 handle structure definition
nrf24l01 information structure definition
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v