单片机串口单个接收没问题,但是用数组接收时,第一个接收到的是0xff,这个是怎么回事?

只有单片机复位后,串口传输到单片机的数据,第一个总是0xff,但是如果用一个uchar型的变量没问题。一用uchar型的数组就出现这种怪事。求解。

前面加上等待上次发送结束,再给发送寄存器斌值。
如下:
while((USART1->SR&0X40)==0);//等待发送结束
USART1->DR=buf[t];
}
while((USART1->SR&0X40)==0);//等待发送结束
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-27
解决没?,我也是用变量就没问题,用数组就255,但我不可能很多数用一个个变量来存储啊?要不用指针吧!
第2个回答  2015-07-22
没有程序,鬼知道什么原因