C51 单片机 串口通讯总结——查询方式与中断方式
来源:互联网 发布:mysql 5.5 win10安装 编辑:程序博客网 时间:2024/06/05 13:55
查询方式:发送数据——先发后查;
接收数据——先查后收。
中断方式:发送数据——发送、等待中断、中断中发送;
接收数据——等待中断、在中断中接收。
下面让我们通过两个列子进一步看一下两者的区别:
/******************查询方式实现的串口通讯*************************/
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]="E-mail:xtxy_esl@163.com ";
uchar i,temp;
//查询方式时必须EA=0;ES=0; //关总中断
void init_ser() //串口初始化
{
TMOD=0x20; //定时器1工作于方式2
TH1=0xf3; //娤初值波特率为2400
TL1=0xf3;
TR1=1; //开定时器1
SCON=0x50; //设置串口方式1 允许接收
EA=0; //关总中断
}
void out_ser() //串口输出
{
while(table[i] != '\0')
{
SBUF=table[i];
while(!TI); //注意“;”
TI=0;
i++;
}
i=0;
SBUF=temp;
while(!TI);
TI=0;
}
void main()
{
init_ser(); //串口初始化
while(1) //必须在大循环中
{
if(RI) //扫描是否接收到数据(一个字节)
{
RI=0;
temp=SBUF;
out_ser(); //串口输出
}
}
}
/******************中断方式实现的串口通讯*************************/
//查询方式时必须EA=1;ES=1; //关总中断
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
//uchar code table[]="you get ";
uchar temp,flag;
void init_ser() //串口初始化
{
TMOD=0x20; //定时器1工作于方式2
TH1=0xfd; //娤初值波特率为
TL1=0xfd;
TR1=1; //开定时器1
SCON=0x50; //设置串口方式1 允许接收
EA=1; //开总中断
ES=1; //开串口中断
}
void main()
{
init_ser();
while(1)
{
if(flag==1)
{
ES=0;
SBUF=temp;
while(!TI);
TI=0;
ES=1;
flag=0;
}
}
}
void ser() interrupt 4
{
temp=SBUF; //读走数据
RI=0;
flag=1;
}
- C51 单片机 串口通讯总结——查询方式与中断方式
- 关于串口通讯查询与中断两种方式
- C51单片机——串口和中断系统
- C51--矩阵键盘--查询--中断--方式
- C51 队列 方式 中断接收 查询发送
- 串口通讯程序(中断方式)
- 【51单片机学习过程记录】14 中断之串口中断的应用1(查询方式)
- C51单片机 波特率选择 和 串口的工作方式
- 串口通讯—异步通信方式
- 串口通讯—异步通信方式
- 串口通讯—同步通信方式
- 串口通讯—异步通信方式
- 串口通讯—异步通信方式
- 串口通讯—异步通信方式
- 串口通讯—异步通信方式
- 串口通讯—同步通信方式
- C51:串口接收和发送,查询与中断方法
- C51:串口接收和发送,查询与中断方法
- DataOutputStream 的 writeBytes(String s) 方法在向输出流写入中文字
- ios---12306购票
- Android_低版本使用ActionBar
- IOS开发之深拷贝与浅拷贝(mutableCopy与Copy)详解
- python学习之如何删除已经安装的包
- C51 单片机 串口通讯总结——查询方式与中断方式
- 微信公众平台的接口url
- android中不同手机分辨率适配问题
- DES SecretKeyFactory not available的处理
- mysql自定义函数篇
- nutch2.2.1安装部署
- 《C++ Primer第五版》学习笔记(4)---expressions,statements,functions&classes
- 一种服务端接口身份验证方法
- 自己来造钢筋字符,cad字体设计