【亲测免费】 STM32F405RGT6 串口1,2,3,4,5通信代码
简介
本仓库提供了一个用于STM32F405RGT6微控制器的串口通信代码示例。该代码支持串口1、串口2、串口3、串口4和串口5的通信功能。通过该代码,用户可以实现多串口的数据收发操作。
功能描述
-
串口缓冲区大小定义:
#define UART1_MAXBUFFERSIZE 256#define UART2_MAXBUFFERSIZE 256#define UART3_MAXBUFFERSIZE 256#define UART4_MAXBUFFERSIZE 256#define UART5_MAXBUFFERSIZE 256
-
全局变量:
-
uint16_t g_u16com1RxCnt:串口1接收计数器 -
uint16_t g_dwcom1CurRcvLen:串口1当前接收长度 -
uint8_t g_pcom1RxBuffer[UART1_MAXBUFFERSIZE]:串口1接收缓冲区 -
uint8_t gRevUART1Ok:串口1接收完成标志 -
uint16_t g_u16com2RxCnt:串口2接收计数器 -
uint16_t g_dwcom2CurRcvLen:串口2当前接收长度 -
uint8_t g_pcom2RxBuffer[UART2_MAXBUFFERSIZE]:串口2接收缓冲区 -
uint8_t gRevUART2Ok:串口2接收完成标志 -
uint16_t g_u16com3RxCnt:串口3接收计数器 -
uint16_t g_dwcom3CurRcvLen:串口3当前接收长度 -
uint8_t g_pcom3RxBuffer[UART3_MAXBUFFERSIZE]:串口3接收缓冲区 -
uint8_t gRevUART3Ok:串口3接收完成标志 -
uint16_t g_u16com4RxCnt:串口4接收计数器 -
uint16_t g_dwcom4CurRcvLen:串口4当前接收长度 -
uint8_t g_pcom4RxBuffer[UART4_MAXBUFFERSIZE]:串口4接收缓冲区 -
uint8_t gRevUART4Ok:串口4接收完成标志 -
uint16_t g_u16com5RxCnt:串口5接收计数器 -
uint16_t g_dwcom5CurRcvLen:串口5当前接收长度 -
uint8_t g_pcom5RxBuffer[UART5_MAXBUFFERSIZE]:串口5接收缓冲区 -
uint8_t gRevUART5Ok:串口5接收完成标志
-
使用说明
- 下载代码:将本仓库的代码下载到本地。
- 导入工程:将代码导入到你的STM32开发环境中(如STM32CubeIDE、Keil等)。
- 配置串口:根据实际需求配置串口的波特率、数据位、停止位等参数。
- 编译运行:编译代码并在STM32F405RGT6开发板上运行。
- 测试通信:使用串口调试工具(如SecureCRT、Putty等)与开发板进行通信测试。
注意事项
- 请确保开发板的串口引脚与外部设备的串口引脚正确连接。
- 在实际应用中,可能需要根据具体需求调整缓冲区大小和接收处理逻辑。
贡献
欢迎大家提出改进建议或提交PR,共同完善本代码库。
许可证
本项目采用MIT许可证,详情请参阅LICENSE文件。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0217- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
AntSK基于.Net9 + AntBlazor + SemanticKernel 和KernelMemory 打造的AI知识库/智能体,支持本地离线AI大模型。可以不联网离线运行。支持aspire观测应用数据CSS01