完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
STM32 UART串口在中断中不能循环接收数据帧的问题
我要用STM32的串口接收一帧这样类型的数据:01 xx xx xx xx xx xx xx FD 这个数据长度不超过30个,结束字节是FD(数据里面没有FD)。我的程序设计是这样的,当接收到串口数据后进中断处理,循环接收数据,直到接收到的数据是FD就退出中断(中间断接收超时处理)。程序思路如:进中断后,关闭接收中断,通过读取USART_FLAG_RXNE标志来接收数据。我现在遇到的问题是在中断中不能根据USART_FLAG_RXNE标志来完成数据帧接收, 不知道为什么啊?代码如下:
|
|
相关推荐
3个回答
|
|
|
void USART1_IRQHandler(void)
{ unsigned char temp=0; if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) { temp=(unsigned char)USART_ReceiveData(USART1); if(RxBuf1CNT RxBuf1[RxBuf1CNT++]=temp; } else { RxBuf1CNT=0; } } } 我是这么用的,可以正常使用,是不是你的USART初始化有问题。
最佳答案
|
|
|
|
|
|
连接驱动没有问题吧
|
|
|
|
|
|
表示现在也遇到同样问题,不能根据USART_FLAG_RXNE标志来完成数据帧接收,51单片机RI是可以这么用,转到STM32不行
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
265 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
789 浏览 0 评论
1306 浏览 2 评论
787 浏览 0 评论
【RA4M2-SENSOR开发板评测】Analogue+Timers综合测试
1587 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16899 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 22:31 , Processed in 0.649681 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1231