RS串行通讯用C语言怎么写

来源:百度知道 编辑:UC知道 时间:2024/05/27 22:02:43
利用RS232的串型中断来进行数据的传输,通过按键来选择要发送的数据,使用89s51的txd端发送数据,并利用89s51的RXD端接收数据,并将接受到的数据显示在数码管上

给你看两个发送函数, 十分简单
接收的道理一样, 只是检测的标志位不同和SBUF赋值方向不同而已

#include <reg51.h>
#define UINT8 unsigned char

void UARTSendByte(UINT8 Byte)
{//串口发送1个字节
while(TI==1);
SBUF=Byte;//向串口发送数据
while(TI==0);//等待发送完成
TI=0;//清楚标志位
}

void UARTSendStr(UINT8 *String)
{//串口发送一个字符串
int i;
UINT8 len = strlen(String);
for (i = 0; i < len; i++)
UARTSendByte(String[i]);
}