SANNA
获得 0 次赞
帮助过0人
我现用的是AVR ATMEG16A单片机,在用USART串口通信时遇到了百思不得其解的问题,就是在调用串口发送函数发送完一串字符后,若紧接着再调用这个函数就会丢失后面的一次发送过程(就是在串口助手中没有收到(" !注意:字1111111!!!!!. "),若在这两次的中间加入200ms 的延时,就不会丢失,在串口助手中只能收到第一次和第三次的信息,代码如下: USART_txout("本产品支持中英文显示,最大显示32个汉字或64个字母/符号,自动换行。",66); USART_txout(" !注意:字1111111!!!!!. ",30); clear_screen(); display_graphic_32x32(1,64,hao); display_GB2312string(3,105,"!"); MS_delay(200); USART_txout(" !注意:字母或标点符号只支持英文输入法,否则不会显示. ",66); 发送函数如下: void USART_txout(uchar *data,uchar length) { unsigned char i=0; for(i=0;i