我的串口接收数组为什么不正确?上位机采用的是vb
#include<reg51.h>unsignedcharrcv[2];unsignedcharb=0;voidmain(){SCON=0x50;//SCON:serai...
#include <reg51.h>
unsigned char rcv[2];
unsigned char b=0;
void main()
{
SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr
TMOD= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload
PCON= 0x80 ; //SMOD=1;
TH1 = 0xFD ; //Baud:9600 fosc="11".0592MHz
TL1=0xFD;
ES=1;
TR1 = 1 ; // timer 1 run
EA=1;
}
void datareceieve(void) interrupt 4 using 3
{
unsigned char a;
if(RI)
{ RI=0;
a=SBUF;
rcv[b]=a;
b++;
P1=rcv[0];
P2=rcv[1];
if(b>1)
{ b=0;
}
}
EA=1;
}
这是我的程序,谢谢大家帮忙 展开
unsigned char rcv[2];
unsigned char b=0;
void main()
{
SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr
TMOD= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload
PCON= 0x80 ; //SMOD=1;
TH1 = 0xFD ; //Baud:9600 fosc="11".0592MHz
TL1=0xFD;
ES=1;
TR1 = 1 ; // timer 1 run
EA=1;
}
void datareceieve(void) interrupt 4 using 3
{
unsigned char a;
if(RI)
{ RI=0;
a=SBUF;
rcv[b]=a;
b++;
P1=rcv[0];
P2=rcv[1];
if(b>1)
{ b=0;
}
}
EA=1;
}
这是我的程序,谢谢大家帮忙 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询