littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于STM32和FreeRTOS的电动自行车仪表系统

项目简介

本项目是一个开源的电动自行车仪表系统,专为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

调试设置

运行与测试

  • 将编译好的固件烧录到STM32 Nucleo - 32开发板。
  • 启动系统,观察OLED显示屏上的实时数据。
  • 使用SEGGER RTT进行调试输出,检查系统运行状态。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】