程序如下,用80c552
unsigned char SerialComm()
{
unsigned char para1 = 0x00;
S0CON = 0x50;
PCON = 0x00;
TMOD |= 0x20;
TH1 = 0xF3; //2400
TR1 = 1;
while(RI==0);
RI = 0;
para1 = S0BUF;
return para1;
}
在keil c里面调试,S0BUF里面设置个值,debug的时候可以看到S0BUF寄存器里面是有值的,但为什么就不能传到para1里面呢,奇怪,直接return S0BUF也不能把值传出来,感觉程序没什么问题,哪位帮我看看吧!谢谢