1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我想问一下关于51的串口SBUF寄存器,在读走SBUF寄存器后接收寄存器SBUF中的内容是否变化?在向SBUF写完一次数据后,直至单片机将SBUF中的数据完全传输出去令ti等于1时,发送寄存器SBUF内容是否会变化? 因为我在调试51串口发送数据到电脑时,发现将串口及定时器1初始化完成后,只要将SBUF设置了初值,电脑端就能一直接收该数据。 我原本是想使用串口调试助手发送0xaa时,单片机将0x12发送回来,但是只要我向单片机发送0xaa后,单片机就一直发送0x12,但是只要我发送0xfe或0xfd单片机就停止发送了,这是怎么回事呢? 以下是源程序及debug截图
|
|
相关推荐
5个回答
|
|
没人帮忙吗?
|
|
|
|
|
|
|
|
应该是串口中断没写好:RI接收标志,TI发送标志 |
|
|
|
串口发送数据后没有清零发送标志TI
在 case 0xaa: SBUF = 0x12; 后再加TI=0; 即: case 0xaa: SBUF = 0x12; TI=0; 还有你编写程序代码一定要规范 你 那个if(!TI)并不能代表if(RI) 不一定就是 没有发送就是接收 所以if(!TI)得改成if(RI) 还有swich语句 不全面 程序可能出错 或者跑飞 咱也新手 讲的不对的 可以指点 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程之烧写原理
321 浏览 0 评论
请问SPH0641LU4H这款麦克风如何在不使用I2S的情况下,单纯通过GPIO来进行驱动且正常读取数据呢
325 浏览 0 评论
296 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第三十六章 照相机实验
313 浏览 0 评论
STM32模拟eeprom只有起始地址0x8001000正常其他地址都会造成单片机运行不正常怎么回事
276 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12078 浏览 31 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 02:05 , Processed in 0.655000 second(s), Total 79, Slave 61 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号