關於串口中斷
spa
void uart(void) interrupt 4 using 3 { unsigned char i,j; 、 EA=0; i=SBUF; RI=0; //接收中斷標誌位 if((i==0x5b)||(i==0xfa)) { while(!RI); i=SBUF; RI=0; //還要接收數據因此置0 if((i==0x5c)||(i==0xf5)) { check=0; while(!RI); i=SBUF; RI=0; while(!RI); 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 }
大概如上代碼,其中TI,RI標誌很重要code
TI串口發送完一組數據後的標誌位class
若串口發送完一組數據,則硬件置1,若還要發送數據,軟件置0軟件
RI串口接受完一組數據後的標誌位硬件
若串口接收完一組數據,則硬件置1,若還要接收數據,軟件置0數據