|
那么你就要學(xué)習(xí)串口如何接收數(shù)據(jù)列
以下兩個中斷代碼給你參考
/*----------------------------
UART interrupt service routine
----------------------------*/
void Uart_Isr() interrupt 4
{
if (RI)
{
Rev_buf[Uart_len] = SBUF;
RI = 0; //Clear receive interrupt flag
Uart_Timeout = 10;
Uart_len++;
}
if (TI)
{
TI = 0; //Clear transmit interrupt flag
busy = 0; //Clear transmit busy flag
}
}
/*----------------------------
TIMER0 interrupt service routine
----------------------------*/
void timer0_int (void) interrupt 1
{
TL0 = 0x66; //設(shè)置定時初始值1ms@11.0592MHz 12T
TH0 = 0xFC; //設(shè)置定時初始值1ms@11.0592MHz 12T
if(Uart_Timeout>0)Uart_Timeout--;
else Uart_Transf_Done = 1;
} |
|