/*************************串口初始化*******************************************/voidInituart(){IE=0x90;//打开中断总开关及串口中断开关SCON=0x50;//设定串行口工作方式1允许接...
/*************************串口初始化*******************************************/
void Inituart()
{
IE=0x90; //打开中断总开关及串口中断开关
SCON = 0x50;//设定串行口工作方式1 允许接受
TMOD = 0x20; //定时器1,自动重载, 产生波特率
// PCON=0x80; // 加上他后波特率是19200 SMOD为1
TL1 = 0xfa;
TH1 = 0xfa; //波特率为9600 ,22.1184MHz
TR1 = 1;
}
/**************************接收上位机传送数据***************************************/
void uart_js() interrupt 4 //RI==1时执行串口中断
{
static uchar i = 0;
if(RI==1)
{
RX_BUF[i]=SBUF; //保存数据
RI=0;
i++;
}
if(i==10)
{
i=0;
RXend = 1;
LED0=0; //LED长亮
}
}
void main()
{
uchar j;
Inituart();
while(1)
{
while(RXend==0); //waiting receive end
RXend=0;
for(j=0;j<10;j++)
{
TxBuf[j] = RX_BUF[j]; //将需发送数据存入无线发送缓冲区
}
}
}
这个程序有什么问题么,为什么我用串口助手发送是个字节,接收不到呢?
展开