HAL库的串口接收不到数据,求指教

2019-12-10 18:16发布

本帖最后由 cdust 于 2019-9-22 16:32 编辑

使用CUBEMX,目的是接受485发来的几个数字,然后解析下。按照下面的方式,但是接受不到数据
CUBEMX,USART3,开启dma,接收使用循环模式,9600,8,1停,无
程序:
uint8_t aRxBuffer[20];      //接收缓存
if(HAL_UART_Receive_DMA(&huart3, (uint8_t *)aRxBuffer, 4) != HAL_OK)//main函数while(1)前,启动一次DMA接收HAL_ERROR
    {
        Error_Handler();
    }
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
    if(huart==&huart3)
    {
        angle = (uint16_t)(aRxBuffer[0] >> 16)+(uint16_t)(aRxBuffer[1] >> 24);
        dis = (uint16_t)(aRxBuffer[2] >> 8)+(uint16_t)aRxBuffer[3];
    }
}
但是监控没有进入void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)。
整体参考的是http://www.stmcu.org.cn/module/forum/thread-614657-1-1.html
奇怪的,请指教
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
cdust
1楼-- · 2019-12-12 00:39
 精彩回答 2  元偷偷看……
cdust
2楼-- · 2019-12-12 06:29
顶顶,紫薯布丁
hanbing333444
3楼-- · 2019-12-12 12:02
主循环里是不是没放HAL_UART_Receive_IT()函数。

一周热门 更多>