4.3.3 NIRQ Interrupt Checking Method
The radio asserts the CHIP_READY interrupt flag if a command is completed. The interrupt flag can be monitored by either the
GET_CHIP_STATUS or the GET_INT_STATUS command. Apart from monitoring the interrupt flags, the radio may pull down the NIRQ
pin if this feature is enabled. If a new command is sent while the CTS is asserted, then the radio ignores the new command. The radio
can generate an interrupt to communicate this error to the MCU by the CMD_ERROR interrupt flag in the CHIP_STATUS group. The
interrupt flag has to be read (by issuing a GET_CHIP_STATUS or GET_INTERRUPT_STATUS command) to clear the pending inter-
rupt and release the NIRQ pin. No other action is needed to reset the command buffer of the radio, but, after a CMD_ERROR, the host
MCU should repeat the new command after the radio has processed the previous one.
All the commands that are sent to the radio have the same structure. After pulling down the NSEL pin of the radio, the command ID
should be sent first. The commands may have up to 15 input parameters.
Figure 4.2. NIRQ Method
4.4 Getting Response from the Radio
Reading from the radio requires several steps to be followed. The host MCU should send a command with the address it requests to
read. The radio holds the CTS at a non-0xFF value while it retrieves the requested information. Once the CTS is set (0xFF), the host
MCU can read the answer from the radio.
Send
Command
Read CTS
Retrieve
Response
CTS Value
0xFF
Not
0xFF
Figure 4.3. Read Procedure
If CTS is polled on the GPIOs, or the radio is configured to provide an interrupt if the answer is available, then the response can be read
out from the radio with the following SPI transaction.
AN954: Programming Guide for EFM8 and EZRadio ®
Application Programming Interface
silabs.com | Smart. Connected. Energy-friendly. Rev. 0.1 | 18