📄 232串口通信.c
字号:
#include<AT89X51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
/*****************************************
延时子程序
*****************************************/
void delay1ms(uchar n)
{
uchar i;
while(n--)
for(i=0;i<122;i++)
{ ; } //延时n ms
}
/*****************************************
发送数据
*****************************************/
void send(uchar d)
{
SBUF=d;
while(!TI);
TI=0;
}
/*****************************************
接收数据
*****************************************/
void receive(void)
{
REN=1;
while(!RI);
RI=0;
REN=0;
}
/*****************************************
主程序
*****************************************/
void main(void)
{
uchar i,s,a[10]={0x30,0x14,0x35,0x76,0x67,0x38,0x19},b[10]={'a','c','o','t'};
SCON=0xd0; //串口方式3,允许接收
TMOD=0x20; //定时器1 定时方式2
PCON=0X00;
TH1=0xfd;
TL1=0xfd; //11.0592MHz晶振 9600 波特率
TR1=1;
TI=0;
RI=0; //启动定时器
for(i=0;i<10;i++)
{
send(a[i]);
send(b[i]);
delay1ms(100);
}
while(1)
{
receive();
s=SBUF;
delay1ms(100);
send(s);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -