STM32 HAL库UART串口数据接收实战教程

1. 实验目标

  • 掌握STM32 HAL库的UART配置方法

  • 实现通过UART接收数据并处理

  • 使用中断方式接收数据

  • 用串口调试工具发送数据1或0,输入为1时板载LED亮,输入为0板载LED熄灭。


  • 2. 硬件准备

  • STM32开发板(STM32F103C8T6)

  • USB转TTL模块

  • 杜邦线若干

  • PC端串口调试助手


  • 3. 软件准备

  • STM32CubeMX

  • Keil MDK

  • 串口调试工具


  • 4.硬件连接

  • 硬件连接图形
  • 板载LED接线图

  • 5.实验步骤

  • 新建项目

    选择对应型号的STM32芯片。

  • 配置UART

  • 选择USART1(或其他可用串口)

  • 模式选择 Asynchronous

  • 参数配置

  • 设置GPIO

    1. 生成代码
      选择IDE类型(Keil)并生成代码。


    6.代码编写

    在生成的代码基础上添加以下内容:

    while (1)
      {
    		
    		uint8_t data;
    		
    		HAL_UART_Receive(&huart1,&data,1,HAL_MAX_DELAY);
    		
    		if(data == '0')
    		{
    			HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);
    		}
    		else
    		{
    			HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);
    		}
        /* USER CODE END WHILE */
    
        /* USER CODE BEGIN 3 */
      }

    编译上传程序


    7.实验验证

    1. 使用杜邦线连接开发板与USB转TTL模块:

    2. STM32 UART1_TX → USB-TTL RX

    3. STM32 UART1_RX → USB-TTL TX

    4. GND 共地

    5. 打开串口调试助手:

    6. 选择正确COM口

    7. 波特率 115200

    8. 发送数据1

    1. 观察现象:

    2. 发送一个字符1,板载LED灯点亮

    3. 发送一个字符0,板载LED灯熄灭

    作者:ElePower9527

    物联沃分享整理
    物联沃-IOTWORD物联网 » STM32 HAL库UART串口数据接收实战教程

    发表回复