

We can simply configure these registers in MPLAB XC8 compiler like this: PIE1bits.RCIE=1 Similarly, TXIE enables/disables transmitter INT.If we want to receive data with UART receive interrupt. RCIE: It enables the UART receive interrupt.Two bits of PIE1 are associated with the serial communication transmitter and receiver module of PIC18F4550 microcontroller. This register is used to enable peripherals interrupts just like UART. PIE1 : PIE1: PERIPHERAL INTERRUPT ENABLE REGISTER 1 Otherwise TXIF=1 that means transmit buffer is full.

If TXREG buffer is empty, TXIF=0 ( that means data transmitted).

This register provides information on transmitter and receiver data flags. INTCONbits.PEIE=1 // Enabel Peripheral interrupt PIR1: PERIPHERAL INTERRUPT REQUEST (FLAG) REGISTER 1 We can configure them in MPLAB XC8 compiler like this: INTCONbits.GIE=1 // Enable all unmasked global INT Therefore, we also enable all unmasked peripheral interrupts with PEIE. Peripherals examples are UART, ADC, DAC, etc. The first bit (GIE) enables global interrupt and the second bit (PEIE) enables peripheral interrupts. Two bits of the interrupt control register should be enabled. PIC18F4550 Interrupt Registers INTCON: Interrupt Control Register But in another case, the microcontroller will keep doing something else and as soon as interrupt response comes, it executes interrupt and return to the original program location where it left execution.Īs we have seen in the last tutorial, three main registers that are associated with the serial communication module of PIC18F4550 are:įor more information and How to configure these registers, check this tutorialįurthermore, to use pic uart interrupt, we need to configure some bits of these registers also. In the first case, it keeps waiting until the specified condition is met. This figure shows the comparison of the polling vs interrupt technique. Difference between Polling and Interrupt Method The main disadvantage of this technique is the wastage of microcontroller time and resources. The polling method is kind of a round-robin method. Because polling is not an efficient method and it halts microcontroller execution at the same location waiting for the condition to meet. But now we will see an interrupt method to receive data. Code Working Why do we need to use PIC UART Interrupt?īut we used a polling method to receive string or data with pic UART module.PIC UART Interrupt Receive Data Serially.Difference between Polling and Interrupt Method.Why do we need to use PIC UART Interrupt?.
