void Serial_Interrupt()
{
if((PIE1bits.RCIE==1)&&(PIR1bits.RCIF=1))
{
//PIR1bits.RCIF=0;
for(index=0; index<8; index++) {
rxbuf[index] = Serial_Receive_byte();
}
__delay_ms(40);
if(index>=8) {
rec_flag = 1;
}
if(index>=20)
{
DE=1;
index=0;
}
if(1==RCSTAbits.FERR)
{
RCSTAbits.SPEN=0;
RCSTAbits.SPEN=1;
// DE=1;
}
if(1==RCSTAbits.OERR)
{
RCSTAbits.CREN=0;
RCSTAbits.CREN=1;
// DE=1;
}
}
CLRWDT();
}
void UART_Transmit()
{
if( PIR1bits.TMR2IF ==1)
{
PIR1bits.TMR2IF = 0;
Disp_count=Disp_count+1;
Serial_Interrupt();
if(DE=1)
{
serial_access();
}
}
}