STM32之间的串口通信

2020-11-22

STM32之间的串口通信

资源描述

本资源文件提供了STM32之间的串口通信代码,经过调试完全可用。代码基于正点原子的开发板,使用了两个开发板:一个是mini板,另一个是精英板。通过mini板的USART3(PB10,PB11)串口实现输出,通过精英板的USART3(PB10,PB11)串口实现读取。此外,精英板还通过USART1(即CH340下载程序的串口)打印输出,可以通过串口调试助手查看输出内容。同时,精英板还可以将接收到的内容显示在LCD屏幕上。

使用说明

  1. 硬件要求
    • 正点原子mini板
    • 正点原子精英板
    • LCD屏幕(可选)
  2. 功能说明
    • mini板:通过USART3(PB10,PB11)串口输出数据。
    • 精英板:通过USART3(PB10,PB11)串口接收数据,并通过USART1串口打印输出。如果接收到数据,LED10会翻转;如果通过USART1发送数据成功,LED1会翻转。
    • LCD屏幕:精英板可以将接收到的数据显示在LCD屏幕上(如果连接了LCD屏幕)。
  3. 注意事项
    • 如果没有mini板,可以使用串口助手输出的功能代替。另一台电脑的串口助手输出数据,本机电脑的串口助手检测精英板的串口输出情况。
    • 如果没有LCD屏幕,可以在主函数中注释掉相应的LCD初始化代码以及LCD显示部分的代码。

代码结构

  • main.c:主程序文件,包含了串口初始化、数据发送与接收、LCD显示等功能。
  • usart.c:串口配置文件,包含了USART3和USART1的初始化代码。
  • lcd.c:LCD屏幕驱动文件(如果使用LCD屏幕)。
  • led.c:LED控制文件,用于控制LED1和LED10的状态。

调试与测试

  1. 将代码分别下载到mini板和精英板上。
  2. 使用串口调试助手连接精英板的USART1串口,查看输出信息。
  3. 如果使用LCD屏幕,精英板会将接收到的数据显示在屏幕上。
  4. 观察LED1和LED10的状态变化,确认数据接收和发送是否成功。

其他说明

  • 本代码适用于STM32F103系列芯片,其他型号的STM32芯片可能需要进行适当的修改。
  • 如果遇到问题,请检查硬件连接是否正确,串口配置是否匹配。

希望本资源对您的STM32串口通信项目有所帮助!

下载链接

STM32之间的串口通信