项目简介
本项目是一个开源的电动自行车仪表系统,专为STM32 Nucleo - 32开发板设计。集成了多种传感器和显示设备,能提供实时数据记录和仪表显示功能。使用FreeRTOS操作系统进行多任务管理,借助FatFs文件系统进行数据存储。
项目的主要特性和功能
硬件支持
- 主控芯片采用STM32 Nucleo - 32开发板(STM32L432KC)。
- 支持DS18B20温度传感器和SH1122 OLED显示屏。
- 支持Hall传感器和ADC采样,用于电压和电流测量。
软件功能
- 实时显示速度、转速、电池状态、里程等信息。
- 利用FatFs文件系统在MicroSD卡存储数据。
- 支持多任务管理,通过FreeRTOS进行任务调度。
- 可通过SEGGER JLink调试,支持在VSCode中调试。
开发工具
- 使用Tup构建系统进行代码编译。
- 支持在Linux环境下开发,推荐使用VSCode作为IDE。
安装使用步骤
环境准备
- 安装Linux操作系统。
- 安装Tup构建系统、Nim语言编译器、GIMP、ImageMagick等工具。
- 配置SEGGER JLink调试器和STM32 CubeMX(可选)。
项目构建
- 复制项目代码到本地。
- 首次构建时,运行以下命令进行配置和编译:
bash $ Tools/configure.sh $ tup
- 后续构建只需运行:
bash $ tup
调试设置
- 使用SEGGER JLink调试器连接开发板。
- 在VSCode中配置调试环境,参考SEGGER JLink Visual Studio Code。
运行与测试
- 将编译好的固件烧录到STM32 Nucleo - 32开发板。
- 启动系统,观察OLED显示屏上的实时数据。
- 使用SEGGER RTT进行调试输出,检查系统运行状态。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】