首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hal_uart_transmit_it不工作(无中断发生)

hal_uart_transmit_it不工作(无中断发生)
EN

Stack Overflow用户
提问于 2021-04-23 15:57:07
回答 2查看 50关注 0票数 0

我正在尝试做uart通信。但是,HAL_UART_TxCpltCallback函数不起作用。

此外,不会执行USART1_IRQHandler。我认为有一个启用uart和中断的设置,但是

我不知道。源码如下。如果你有更多的信息,请告诉我。谢谢。

代码语言:javascript
复制
        /// main source

        HW_UART_Init( );
        uint8_t init_ment[60] = "\n\rWelcome to RF Test program\n\r";
        strcpy(uart1_txbuffer,init_ment);
        HAL_UART_Transmit_IT(&huart1, uart1_txbuffer, 30);
        HAL_Delay(50);
        InitQueue(&queue);
        HAL_UART_Receive_IT(&huart1, uart1_rxbuffer, 1);
        HAL_Delay(1);


       void HW_UART_Init( void )
        {
 

             /* USER CODE END USART1_Init 1 */
             huart1.Instance = USART1;
             huart1.Init.BaudRate = 19200;
             huart1.Init.WordLength = UART_WORDLENGTH_8B;
             huart1.Init.StopBits = UART_STOPBITS_1;
             huart1.Init.Parity = UART_PARITY_NONE;
             huart1.Init.Mode = UART_MODE_TX_RX;
             huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
             huart1.Init.OverSampling = UART_OVERSAMPLING_16;
             huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
             huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
             if (HAL_UART_Init(&huart1) != HAL_OK)
             {
                   Error_Handler();
             }
              /* USER CODE BEGIN USART1_Init 2 */


           }
EN

回答 2

Stack Overflow用户

发布于 2021-04-26 05:04:31

如果您在没有cube mx的情况下进行自己的配置,首先应该检查是否在项目中添加了方便的uart文件。IRQ在"xxxx_it.c“文件中定义了STM32处理程序,因此您可能没有它。另一方面,必要的NVIC配置也是由Cube MX完成的。

我建议你使用Cube MX,然后你就可以找到这里的问题所在。在您的代码片段中似乎没有任何错误。

票数 0
EN

Stack Overflow用户

发布于 2021-05-02 02:25:28

如果您正在使用cubeMX初始化您的单片机,有一个选项卡在USART部分的"NVIC设置“,您可以在那里启用USART1全局中断。

它会将这两行代码添加到stm32f4xx_hal_msp.c文件中。

代码语言:javascript
复制
HAL_NVIC_SetPriority(USART1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(USART1_IRQn);

我建议你使用cubeMX。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67226081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档