完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
程序运行后,在中断服务程序的(1)和(2)位置设置断点后全速运行。电脑使用串口助手首次发送256个字节到STM32F0可以正常运行到断点(2)。
然后电脑上串口助手再次发送256字节后,就停在断点(1)了。这是为什么? 网上说中断服务中判断到ORE时,读一次接收缓冲就行了。但是没作用啊 if(USART_GetFlagStatus(USART1, USART_FLAG_ORE) != RESET) { USART_ReceiveData(USART1); } |
|
相关推荐
11个回答
|
|
不懂帮顶
|
|
|
|
路过帮顶!!!
|
|
|
|
第二次停在了断点1……是不是就说你ORE置位了?
|
|
|
|
咋感觉是这个的问题volatile ,不太懂
|
|
|
|
帮顶吧,顺便学习学习
|
|
|
|
先读取数据,然后再清除溢出标志位。
|
|
|
|
|
|
|
|
if (0 == Usart1RxTerm)
{ Usart1RxBuffer[Usart1RxCount++] = SART_ReceiveData(USART1); } 这里注意,你把Usart1RxTerm = 1;数据不在接收,这里可以改为, c=SART_ReceiveData(USART1); if (0 == Usart1RxTerm) { Usart1RxBuffer[Usart1RxCount++] = c; } 这样就可以了. |
|
|
|
|
|
帮顶!!!
|
|
|
|
顶!一直顶到解决为止。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2234 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
2053 浏览 3 评论
4664 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
2197 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2734 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 20:01 , Processed in 1.885887 second(s), Total 93, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号