完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本人写了个小程序(xc886是基于c51内核的),UART用的是模式1(波特率可变,为了和串口调试小助手通信,设置成9600baud;用的是查询法;选的引脚,初始化等基本东西没错),其中主程序while(1)中内容如下:
while(1) { // USER CODE BEGIN delay(10); while(!RI); receive=UART_ubGetData9(); UART_vSendData9(receive+3); while(!ti); // USER CODE END } 结果在串口调试小助手向单片机发送数据,例如receive=04,按道理串口调试小程序显示窗口会出现receive+3=07,但是并不是每次发送都能顺利接收到数据07(串口调试小程序设置没问题),即有时候发送了04,没显示07,好像数据丢失。但是当我把程序改成下面的,就33 44 07 33 44 07...显示,即发送几次04,就显示几次33 44 07,不会发生上述的发送数据丢失现象。这是不是说明硬件没问题?那这是为什么? // USER CODE BEGIN delay(10); UART_vSendData9(0X33); while(!TI); UART_vSendData9(0X44); while(!TI); while(!RI); receive=UART_ubGetData9(); UART_vSendData9(receive+3); while(!TI); // USER CODE END } |
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
503 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1756 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1183 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1053 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1287 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12022 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 21:16 , Processed in 0.488805 second(s), Total 69, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号