Sub-GHz radio (SUBGHZ)
from the receive data buffer, the offset must be set to the RxBufferPointer value. To write to
the first byte in the transmit data buffer, the offset must be set to the TxBaseAddr value.
The RAM data buffer has a circular nature: any address increment exceeding 0xFF wraps
around to address 0x00.
5.6.1
Receive data buffer operation
In receive mode, RxBaseAddr, configured through Set_BufferBaseAddress(),
determines the receive buffer offset in the sub-GHz radio RAM. RxBaseAddr can be set
anywhere within the RAM data buffer. If needed, the whole 256-byte RAM data buffer can
be used.
For the first received packet, RxBufferPointer is set to RxBaseAddr. The first byte of the first
received packet payload data is written at the RxBufferPointer address. The last byte of the
received packet payload data is written at the address determined by RxBufferPointer +
RxPayloadLength. RxBufferPointer and RxPayloadLength can be read by
Get_RxBufferStatus() command.
In single receive and listening modes, RxBufferPointer is automatically initialized to
RxBaseAddr for each new reception when the sub-GHz radio enters RX mode.
In continuous receive mode, RxBufferPointer is continuously incremented from the position
at which it was left by the previous received packet. In this mode, subsequent received
packets are stored continuous in the RAM data buffer.
Caution:
If the amount of received data exceeds the defined receive buffer size, other data in the
RAM are overwritten.
Receive data are written to the receive data buffer regardless of the received CRC status.
When the received CRC fails, post processing on the incorrectly received data can still be
performed by the CPU.
Caution:
When the received packet length exceeds the area allocated to the receive data buffer, it
may overwrite the transmit data buffer area in the RAM data buffer.
5.6.2
Transmit data buffer operation
In transmit mode, TxBaseAddr determines the transmit buffer offset in the sub-GHz radio
RAM. For each transmission, when the sub-GHz radio enters TX mode, TxBufferPointer is
automatically initialized to TxBaseAddr. Each time a payload byte is transmitted,
TxBufferPointer is incremented until all bytes, according the PayloadLength set by the
Set_PacketParams() command, are transmitted.
5.7
Sub-GHz radio operating modes
After a sub-GHz radio reset, a startup phase is initiated. As BUSY is active during this
phase, commands cannot be accepted. When supply and clock are available to the sub-
GHz radio, BUSY is deactivated and the CPU can take control.
The sub-GHz radio provides the following operating modes:
•
Sleep mode
–
–
170/1450
Deep-Sleep: all sub-GHz radio clocks are turned off and data memory is lost
RC 13 MHz clock turned off
RM0453 Rev 5
RM0453
Need help?
Do you have a question about the STM32WL5 Series and is the answer not in the manual?