完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
TC:发送完成
当包含有数据的一帧发送完成后,由硬件将该位置位。如果USART_CR1中的TCIE为1,则产生中断。由软件序列清除该位(先读USART_SR,然后写入USART_DR)。TC位 也可以通过写入0来清除,只有在多缓存通讯中才推荐这种清除程序。 而硬件复位后,串口发送的首个数据之前没有read SR的操作,是直接write DR,也就是说,TC没有被清除掉。 所以在发送数据指令之前加上USART_ClearFlag(USART2,USART_FLAG_TC);或者USART_GetFlagStatus(USART2, USART_FLAG_TC);指令,先读取一下USART_SR,就不会出现数据覆盖情况了。(也有其他操作办法) 总之,硬件复位后,串口发送首个数据之前,先读取一下USART_SR,则能够保证首个数据发送时,不出现覆盖的情况。 |
|
|
|
只有小组成员才能发言,加入小组>>
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
427 浏览 1 评论
279 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
247 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
611 浏览 2 评论
637 浏览 2 评论
1364浏览 9评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
69浏览 3评论
40浏览 3评论
STM32CUBEMX4.22.1在main函数里面添加一行语句就死机的原因?
52浏览 3评论
43浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-28 23:28 , Processed in 0.625137 second(s), Total 73, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号