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模块:

    • STM32 UART1_TX → USB-TTL RX

    • STM32 UART1_RX → USB-TTL TX

    • GND 共地

  2. 打开串口调试助手:

    • 选择正确COM口

    • 波特率 115200

    • 发送数据1

  1. 观察现象:

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

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

相关推荐
曙曙学编程31 分钟前
stm32——独立看门狗,RTC
c语言·c++·stm32·单片机·嵌入式硬件
sheepwjl38 分钟前
《嵌入式硬件(四):温度传感器DS1820》
单片机·嵌入式硬件
三之又三2 小时前
PowerPMAC配置EtherCAT设备
嵌入式硬件·cnc·powerpmac
朝颜_祝余2 小时前
在电路浪涌测试中,TVS(瞬态电压抑制二极管)的防护效果确实会受到陪测设备中去耦网络(Decoupling Network,DN)的显著影响
单片机·嵌入式硬件
mei_you_n2 小时前
JLINK 调试器单步调试单片机
单片机·嵌入式硬件
HIZYUAN3 小时前
AG32 ( MCU+FPGA二合一 )是如何卷入了三相电能计量市场的
单片机·嵌入式硬件
pengfei_M3 小时前
四、FVP启动linux
linux·单片机·嵌入式硬件
weixin_471525784 小时前
【ARMday02】
单片机·嵌入式硬件
世微 如初5 小时前
无需外部补偿的同步降压方案:AP3471在分布式供电系统中的应用
单片机·嵌入式硬件·芯片·led驱动·led电源驱动
云山工作室5 小时前
基于单片机的声光控制楼道灯(论文+源码)
单片机·嵌入式硬件