|
//串口接收上位機(jī),可以用strstr函數(shù)查找,比如,上位機(jī)發(fā)送 數(shù)據(jù):255
//單片機(jī)可以先查找"數(shù)據(jù):",查找到之后再處理后面的255,這樣的代碼可以簡單明了很多
void Uart2_Isr() interrupt 8 //串口2中斷
{
char *p,Uart_S[15];
static unsigned char RX_Count;
unsigned a;
if(S2CON&0x02)
{
S2CON&=~0x02; //清除中斷發(fā)送標(biāo)示位
Busy=0; //
return;
}
//────────────────────────────────────────────────────────────────────────────
if(S2CON&0x01)
{
S2CON&=~0x01; //清除中斷接收標(biāo)示位
Uart_S[RX_Count]=S2BUF;
RX_Count++;
p=strstr(Uart_S,"數(shù)據(jù):"); //查找指令結(jié)束符"數(shù)據(jù):"
if(NULL!=p) //如果沒有查找到"數(shù)據(jù):",指針返回值為空
{
//指針返回值不為空,就表示串口接收到"數(shù)據(jù):",處理.........
}
}
//──────────────────────────────────────────────────────────────────────────────
}
|
|