项目简介
此项目基于STM32F1xx系列微控制器,主要功能是通过UART串口输出递增的数字,同时闪烁LED灯。开发借助了STM32CubeMX和CMake工具链,使用STM32F1xx的HAL库实现硬件抽象。此外,项目包含针对x86架构的单元测试,利用Google Test框架进行验证。
项目的主要特性和功能
- 硬件抽象层(HAL)支持:采用STM32F1xx的HAL库,便于进行硬件相关操作。
- UART串口通信:通过UART串口输出递增数字,可用于调试或数据通信。
- LED灯闪烁:在循环中切换LED灯状态,指示系统运行状态。
- 单元测试支持:为x86架构提供基于Google Test框架的单元测试,确保代码正确性。
安装使用步骤
准备环境
- 安装CMake、GCC/G++、Git等开发工具。
- 安装STM32CubeMX用于项目配置。
获取代码
通过Git复制项目代码。
配置项目
- 使用STM32CubeMX配置STM32F1xx微控制器的项目设置,涵盖时钟配置、外设配置等。
- 在STM32CubeMX中生成Makefile项目,将生成的文件复制到项目的
target/arm
目录。
编译项目
- 在命令行创建
cmake_build_debug
目录并进入。 - 运行以下命令进行配置和编译:
bash cmake -DTARGET=arm -G "MinGW Makefiles" .. cmake --build .
- 也可使用CLion或VS Code等集成开发环境打开项目并编译。
烧录和测试
- 将编译后的二进制文件烧录到STM32F1xx微控制器。
- 使用OpenOCD进行调试,例如:
bash openocd -f board/stm32f4discovery.cfg -f interface/stlink.cfg -c "transport select hla_swd" -c "tpiu config internal - uart off clock_rate" -c "itm ports on" -c "tcl_port 6666"
- 通过UART串口查看输出,观察LED灯的闪烁状态。
注:此项目假定用户已具备必要的开发环境和工具链,且熟悉STM32F1xx微控制器的开发过程。若需修改或扩展,可按需调整代码和配置。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】