cc2538_rf_internal.h

Internal interfaces for the cc2538_rf driver.

CC2538_RX_FIFO_ADDR
1
0x40088000
CC2538_TX_FIFO_ADDR
1
0x40088200
uint_fast8_t rfcore_read_byte(void)

Read a single byte from the RX FIFO.

This function will return the first currently unread byte from the RX FIFO, and advance the FIFO pointer by one. Hence, subsequent calls to this function will return subsequent bytes from the RX FIFO.

Return values

  • The first currently unread byte from the RX FIFO
uint_fast8_t rfcore_peek_rx_fifo(int idx)

Peek a single byte from the RX FIFO.

Peeking, as opposed to reading, a byte from the RX FIFO will not advance the FIFO pointer. Further, bytes may be read from any position in the FIFO by providing an index.

Parameters

idx:The index of the byte to peek

Return values

  • The byte at index idx
void rfcore_read_fifo(void * buf, uint_fast8_t len)

Read the remaining unread data from the RX FIFO.

Parameters

buf:The buffer to read the data into
len:The maximum length of the buffer

void rfcore_strobe(uint_fast8_t instr)

Issue a command strobe from the CPU to the radio.

Parameters

instr:The instruction to issue

void rfcore_write_byte(uint_fast8_t byte)

Write a single byte to the next index of the TX FIFO.

Parameters

byte:The byte to write

void rfcore_poke_tx_fifo(int idx, uint_fast8_t byte)

Poke a single byte in the TX FIFO.

Poking, as opposed to writing, a byte to the TX FIFO will not advance the FIFO pointer. Further, bytes may be written to any position in the FIFO by providing an index.

Parameters

idx:The index of the byte to write to
byte:The byte to write

void rfcore_write_fifo(const void * buf, uint_fast8_t len)

Write a string of bytes to the TX FIFO.

Parameters

buf:The buffer containing the data to write
len:The length of the data to write

bool RFCORE_ASSERT_failure(const char * expr, const char * func, int line)