void serial() interrupt 4
{
ES=0; //关串口中断
if(RI==1){
table[ccc]=SBUF;//命令存到命令数组
if(!(table[ccc]>=0x30&&(table[ccc]<=0x7a))){table[ccc]=0x20;}
RI=0; //软件清除接收中断
ccc++;
if(ccc==31){ccc=0;}
}
ES=1;//开串口中断
}
è¿ä¸ªæ³å°äºï¼ä½æ¯ä»£ç ä¸ç¥é大æ¦åªéä¿®æ¹
主è¦æ¯æ¥æ¶å符串çè¯ï¼æ¥å 个å符串就è¦è¿è¡å 次ä¸ææ¯æ¬¡ä¸æç»æ°ç»éé¢å¡«ä¸ä¸ªå 容ï¼è¦æ¯å¨ä¸æéé¢å æ¸ æ¥æ°ç»çå 容ï¼å°±åªè½æ¥æ¶å°ç¬¬ä¸ä¸ªå符äºï¼
是不是在串口中断关闭那之前ccc=0?
主要是接收字符串的话,来几个字符串就要进行几次中断每次中断给数组里面填一个内容,要是在中断里面先清楚数组的内容,就只能接收到第一个字符了!
不对啊
追答怎么个不对,你是想实现什么功能?