查询方式与中断方式

查询方式与中断方式

ID:38800944

大小:24.00 KB

页数:3页

时间:2019-06-19

查询方式与中断方式_第1页
查询方式与中断方式_第2页
查询方式与中断方式_第3页
资源描述:

《查询方式与中断方式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、(原创)串口通讯总结——查询方式与中断方式我们知道串口通讯有查询与中断两种方式,但是对于两种方式的区别很多人并不是非常清楚,对于两者的实现到底有和不同呢?让我们简单的总结如下:查询方式:发送数据——先发后查;接收数据——先查后收。中断方式:发送数据——发送、等待中断、中断中发送;接收数据——等待中断、在中断中接收。下面让我们通过两个列子进一步看一下两者的区别:/******************查询方式实现的串口通讯*************************/#include

2、.h>#defineuintunsignedint#defineucharunsignedcharucharcodetable[]="E-mail:xtxy_esl@163.com";uchari,temp;voidinit_ser()//串口初始化{TMOD=0x20;//定时器1工作于方式2TH1=0xf3;//娤初值波特率为2400TL1=0xf3;TR1=1;//开定时器1SCON=0x50;//设置串口方式1允许接收EA=0;//关总中断}voidout_ser()//串口输出{whil

3、e(table[i]!=''){SBUF=table[i];while(!TI);//注意“;”TI=0;i++;}i=0;SBUF=temp;while(!TI);TI=0;}voidmain(){init_ser();//串口初始化while(1)//必须在大循环中{if(RI)//扫描是否接收到数据(一个字节){RI=0;temp=SBUF;out_ser();//串口输出}}}/******************中断方式实现的串口通讯*************************

4、/#include#defineuintunsignedint#defineucharunsignedchar//ucharcodetable[]="youget";uchartemp,flag;voidinit_ser()//串口初始化{TMOD=0x20;//定时器1工作于方式2TH1=0xfd;//娤初值波特率为TL1=0xfd;TR1=1;//开定时器1SCON=0x50;//设置串口方式1允许接收EA=1;//开总中断ES=1;//开串口中断}voidmain(){in

5、it_ser();while(1){if(flag==1){ES=0;SBUF=temp;while(!TI);TI=0;ES=1;flag=0;}}}voidser()interrupt4{temp=SBUF;//读走数据RI=0;flag=1;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。