vloki wrote:- Receiving serial data USART
- Code: Select all
void RS232_RX(void)
{
//--------------------------------------------------------------------- __init()
OSCCONbits.IRCF = IRCF_4MHZ;
LED_1_TRI = LED_2_TRI = LED_3_TRI = LED_4_TRI = OUTPUT_PIN;
TX_TRI = RX_TRI = INPUT_PIN;
SPBRG1 = 16; // 57600 for 4MHz
SPBRGH1 = 0;
TXSTA1bits.BRGH = 1;
BAUDCON1bits.BRG16 = 1;
RCSTA1bits.SPEN = 1;
RCSTA1bits.CREN1 = 1;
//----------------------------------------------------------------------- main()
while(1){
unsigned char command;
if(PIR1bits.RC1IF){
command = RCREG1;
switch(command){
case '0': mSET_LED_1_OFF(); mSET_LED_2_OFF();
mSET_LED_3_OFF(); mSET_LED_4_OFF(); break;
case '1': mSET_LED_1_ON(); break;
case '2': mSET_LED_2_ON(); break;
case '3': mSET_LED_3_ON(); break;
case '4': mSET_LED_4_ON(); break;
default: break;
}
}
}
}