2020-02-05 09:03发布
nydns 发表于 2012-6-14 13:24 void main(void) { InitUART();//初使化串口 while(1) { if(flag==1)//接收到的数据发到电脑PC串口上. { ES=0;//串口中断 关了 flag=0;//标位清0 SendOneByte(a);//把接收到的数据发送到PC机串口上 ES=1;//串口中断 手动打开 } } }void UARTInterrupt(void) interrupt 4 //串口中断号为4 { if(RI) { t[j]=SBUF; //a=t[j];//反回PC串口 j++; if(j >= 64)j=0; RI = 0; //手动清0 退出 flag=1;//标质位等于1,说明接收到数据 } else TI = 0; } 我的代码 那我想产生一次中断接收所有数据.应该如何写呢...
最多设置5个标签!
- {
- if(RI)
- {
- unsigned char i = 3;
- do
- {
- t[j++]=SBUF;
- RI = 0;
- if(j >= 64)
- {
- j=0;
- }
- }while(--i);
- flag=1;
- }
- else
- {
- TI = 0;
- }
- }
复制代码一周热门 更多>