标题:
串口 51单片机通信 字符 字符串
[打印本页]
作者:
南瓜头
时间:
2019-11-15 19:31
标题:
串口 51单片机通信 字符 字符串
#include "reg52.h"
unsigned char DateLenght;
unsigned char Rec_Statu;
unsigned char Rec_cnt;
unsigned char PackFlag;
unsigned char rxbuf[20];
void Uart_Init()
{
SCON = 0x50;
TMOD |= 0x20;
TH1 = 0xfd;
TL1=0xfd;
ES = 1; //时能串口中断
EA = 1;
TR1 = 1; //启动定时器1
}
void Uart_SendByte(unsigned char dat)
{
SBUF=dat;
while(TI==0)
TI=0;
}
void Uart_SendString(unsigned char *pt)
{
while(*pt)
Uart_SendByte(*pt++);
}
void ReciProcess() interrupt 4
{
unsigned char Temp;
if(RI)
{
RI=0;
Temp=SBUF;
if(Temp==0xfe)
{
Rec_Statu=1;
Rec_cnt=0;
PackFlag=0;
}
if(Rec_Statu==1)
{
rxbuf[Rec_cnt++]=Temp;
}
if(Temp==0xfa)
{
PackFlag=1;
Rec_Statu=0;
DateLenght=Rec_cnt;
}
}
}
void main(void)
{
char i;
Uart_Init();
Uart_SendString("hello,world.\r\n");
while(1)
{
if(PackFlag)
{
PackFlag=0;
for(i=0;i<DateLenght;i++)
{
Uart_SendByte(rxbuf[i]);
rxbuf[i]=0;
}
}
}
}
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1