zoukankan      html  css  js  c++  java
  • STM32HAL库不能触发USART1串口HAL_UART_RxCpltCallback回调函数的问题1-已解决

    HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)

    此函数为已非阻塞模式接收数据。

    Hal库使用串口,需要在初始化时调用上面的函数来使能串口接收中断。例如

    int main()
    {
        MX_GPIO_Init();
        MX_TIM1_Init();
        MX_USART1_UART_Init();
      /* USER CODE BEGIN 2 */
        HAL_TIM_Base_Start_IT(&htim1);
        HAL_UART_Receive_IT(&huart1,data_buff,1);
      /* USER CODE END 2 */
    
      /* Infinite loop */
      /* USER CODE BEGIN WHILE */
        while (1)
    }

    注意:能够进入回调函数HAL_UART_RxCpltCallback的条件之一:

    接收到的data_buff数据的大小 = 你设定的接收数据的大小1此时才能触发串口中断进入回调函数。

    data_buff==1

  • 相关阅读:
    查看数据库所有的表
    oracle JOB学习(一)---基础
    图片实时预览JSP加js
    Collections.sort()
    FileUtil.java
    设计模式:常见类的关系
    枚举
    相册
    jQuery----blur()方法
    上传文件详解
  • 原文地址:https://www.cnblogs.com/xiaohanxixi/p/13233838.html
Copyright © 2011-2022 走看看