引用 8 楼 xmjulytiger 的回复:
试试看。
...//你原来的程序
uchar a[2]; //定义变量中把a去了,加一个数组a[2]。如果是更长的字符,数组长度要相应改变
...//你原来的程序
void main()
{
init();
while(1)
{
if(flag==1)
{
ES=0; ……
我之前试的和你的差不多,就是中断函数里少了一句:while(!RI);
现在接受字符的个数是可以达到了,但是有BUG
比如,设置发送4个字符
发送1234,接受到的是4123(数据大小已设置好)
发送12345,接收到的是4512(当然越界了,也许没什么课研究性,仅供参考)
设置发送5个字符
发送12345,收到51234
发送123456,收到56123