单片机向串口发送数据,发送0x03串口调试助手接收到的数据位83,与发送的不对应,请教各位高手,指点下小
#include<reg52.h>#defineucharunsignedchar//宏定义#defineuintunsignedintucharflag,a,tran;...
#include<reg52.h>
#define uchar unsigned char //宏定义
#define uint unsigned int
uchar flag,a,tran;
void main()
{
TMOD=0x20;//设置定时器1为工作方式2
TH1=0xfd;//T1定时器装初值
TL1=0xfd;//T2定时器装初值
TR1=1; //启动T1定时器
SM0=0; //设定串口工作方式
SM1=1;
EA=1; //开总中断
ES=1; //开串口中断
REN=1; //允许串口接收
while(1){
if(flag==1)
{
ES=0;
flag=0;
SBUF=0x03;
while(!TI);
TI=0;
ES=1;
}
}
}
void ser() interrupt 4
{
RI=0; //接收中断允许位
a=SBUF;//获得单片机传送过来的指令
flag=1;
} 展开
#define uchar unsigned char //宏定义
#define uint unsigned int
uchar flag,a,tran;
void main()
{
TMOD=0x20;//设置定时器1为工作方式2
TH1=0xfd;//T1定时器装初值
TL1=0xfd;//T2定时器装初值
TR1=1; //启动T1定时器
SM0=0; //设定串口工作方式
SM1=1;
EA=1; //开总中断
ES=1; //开串口中断
REN=1; //允许串口接收
while(1){
if(flag==1)
{
ES=0;
flag=0;
SBUF=0x03;
while(!TI);
TI=0;
ES=1;
}
}
}
void ser() interrupt 4
{
RI=0; //接收中断允许位
a=SBUF;//获得单片机传送过来的指令
flag=1;
} 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询