TA的每日心情 | 开心 2018-1-30 16:31 |
---|
签到天数: 41 天 连续签到: 1 天 [LV.5]常住居民I
|
看到大家都在用STM32CUbeMX,于是也要跟着时代的步伐,用了一下串口的中断接受,中间也出了一些问题,参考网上的方法,最终调试出来了,给大家分享一下,如有错误请指出,我也是个小白,呵呵。下面就说说调试过程中的几个出错问题:
1,用STM32CUbeMX建立串口中断工程后,还需要添加一句:__HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);打开串口接受中断;
2,在while(1)循环外,添加HAL_UART_Receive_IT(&huart1,recData,10);来接受串口收到的数据;
3,重中之重,在串口接受的回调函数里添加HAL_UART_Receive_IT(&huart1,recData,10);因为在函数HAL_UART_IRQHandler(&huart1);调用了UART_Receive_IT(huart);而在UART_Receive_IT(huart);里调用了 __HAL_UART_DISABLE_IT(huart, UART_IT_RXNE);在这里关闭了串口中断,因此在回调函数里重新调用HAL_UART_Receive_IT(&huart1,recData,10);打开串口中断即可。
实验4-串口接受中断.rar
(5.02 MB, 下载次数: 6, 售价: 2 与非币)
|
|