串口发送和接收一字节的程序
1个回答
展开全部
#include<reg51.h>
void initUART(void)
{
TMOD=0x20; //M1=1,M0=0 定时器1工作方式2(定时常数重装,8 位)
SCON=0x50; //SM0=0,SM1=1,REN=1 串口工作方式1,允许接收
TH1=0xfd; //晶振11.0592时,波特率9600
TL1=TH1; //TL1计数,溢出后,TH1值送入TL1
EA=1; //开总中断
ES=1; //允许串口中断
TR1=1; //启动定时器1
}
void main()
{
while(1)
initUART(); //调用串口初始化子程序
}
void UARTinterrupt( ) interrupt 4
{
if(RI)
{
RI=0;
P1=SBUF;
}
}
更多追问追答
追问
可行吗?
比如我用串口调试助手发送一个'a'则接受到a,
但是如果我用串口调试助手发送0x07,并不是如是地点亮led,是乱码
追答
助手要设为HEX发送
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询