A n 9 3 – Silicon Laboratories SI2493/57/34/15/04 User Manual

Page 294

Advertising
background image

A N 9 3

294

Rev. 1.3

TXE Interrupt: Transmit FIFO Almost Empty

This interrupt occurs when only two bytes or fewer remain in the modem's transmit FIFO. The interrupt can be
cleared by writing more data to the FIFO to clear the interrupt condition, or by clearing the TXE bit in the HIR1.
However, if the FIFO is emptied by the modem faster than it is being filled, the TXE interrupt will either persist or
trigger again. If the TXE bit is cleared, the interrupt is disabled and can be rearmed only when three bytes have
been placed into the transmit FIFO. The TXE interrupt may then trigger again when the transmit FIFO drops below
the three-byte threshold. If the transmit FIFO is empty and new data need to be transmitted after the TXE interrupt
has been cleared, the TXE interrupt needs to be jump-started by calling modemCommunicationUpdate().

Timer Interrupt: Receive FIFO Not Empty

This interrupt occurs whenever some data remained in the modem's receive FIFO without the FIFO being read for
a period of time set in register U6F. This happens typically at the end of a data burst, when there aren't enough
bytes in the receive FIFO to cause an RXF interrupt, and no more data are received. A timer interrupt can also
occur when the receive FIFO is full if the RXF interrupt was disabled by clearing the RXF bit. The timer is also reset
when new received data are added to the receive FIFO.

The reset value of U6F is 1 ms. The timer interrupt can only be cleared by reading at least one byte from the
receive FIFO. If there remain bytes in the receive FIFO after servicing a timer interrupt, the timer will trigger another
interrupt after the same amount of time specified in the U6F register.

U70 Interrupt

This interrupt is analogous to the interrupt pin when operating in UART mode. It is the result of a condition set in
the U70 register being met, e.g. a parallel phone detection if bit PPDM was set in U70.

The U70 interrupt, indicated by the INT bit in HIR1, can be enabled and disabled using the INTM bit in the same
register. The only way to clear this interrupt is by sending the AT:I command to the modem. Typically, this requires
the application layer to send an ESC control word to place the modem in command mode before sending AT:I. The
response from the AT:I reports the cause of the interrupt. Refer the programmer's guide for more information.

Figure 76 shows the ISR implementation for modem-originated interrupts. The interrupt service routine keeps
running in a loop until all interrupt conditions are cleared. The modemInterrupt() sample code on page 300
shows the full ISR implementation. Refer to the #define statements to see how the different interrupt conditions
are inferred.

Advertising
This manual is related to the following products: