打印

关于HAL库的串口中断接收

[复制链接]
308|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
过期账户|  楼主 | 2018-7-14 10:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天我在调串口接收的时候发现,我的程序卡死在while(HAL_UART_Receive_IT(&UART1_Handler, (u8 *)aRxBuffer, RXBUFFERSIZE) != HAL_OK);后面仿真发现HAL_UART_Receive_IT函数里面会调用__HAL_LOCK(huart);但是原子的串口接收中断里面是没有解锁的(即调用__HAL_UNLOCK()),今天爬坑之后想提醒各位:如果用HAL_UART_RxCpltCallback(),千万记得解锁,不然你是不能调用HAL_UART_Receive_IT(&UART1_Handler, (u8 *)aRxBuffer1, RXBUFFERSIZE) != HAL_OK)来重新开启接收中断的。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

395

主题

395

帖子

0

粉丝