项目简介
本项目是基于C++的嵌入式系统开发框架,主要为STM32等微控制器提供硬件抽象层(HAL)和驱动程序。框架涵盖了GPIO、UART、SPI和OneWire等常用外设的驱动程序,同时配有丰富示例代码,能助力开发者快速开展嵌入式应用开发。
项目的主要特性和功能
- 硬件抽象层(HAL):提供统一接口,支持如STM32F407和STM32F103等多种微控制器。
- GPIO驱动:可对GPIO引脚进行配置与控制,包含输入输出模式设置、电平设置等操作。
- UART驱动:支持UART通信,具备数据发送、接收以及中断处理等功能。
- SPI驱动:支持SPI通信,可进行主从设备配置和数据传输。
- OneWire驱动:支持OneWire协议,适用于与DS18B20等设备进行通信。
- 示例代码:提供多种外设的示例代码,方便开发者理解和使用驱动程序。
安装使用步骤
环境准备
- 确保系统已安装
arm-none-eabi-gcc
编译器,并将其路径添加到系统环境变量PATH
中。 - 安装
OpenOCD
,用于调试和烧录程序。
下载源码
从项目仓库下载源码到本地。
编译示例代码
- 进入示例代码目录,如
embedded2/example/uart/workspace
。 - 运行以下命令进行编译:
bash cmake ../ -Dmcu="stm32f407" -DCMAKE_BUILD_TYPE=Debug make
- 编译完成后,会在工作目录下生成
${MCU}_openocd.cfg
和${MCU}_gdbinit
文件。
调试与运行
- 启动OpenOCD进行调试:
bash openocd -f ${MCU}_openocd.cfg
- 使用GDB连接并运行程序:
bash arm-none-eabi-gdb test_uart_stm32f407 --ix STM32F407_gdbinit monitor reset init load c
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】