首页 > 其他 > 详细

串口中断的问题

时间:2015-07-31 15:04:44      阅读:257      评论:0      收藏:0      [点我收藏+]

关于串口中断

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标志很重要

TI串口发送完一组数据后的标志位

若串口发送完一组数据,则硬件置1,若还要发送数据,软件置0

RI串口接受完一组数据后的标志位

若串口接收完一组数据,则硬件置1,若还要接收数据,软件置0


串口中断的问题

原文:http://my.oschina.net/u/2252538/blog/486048

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!