FastBond3基础部分+基于GPS模块实现的自行车码表
该项目使用安信可的GP-01(GPS + BD) 模块提供位置信息,速度信息(m/s, km/h), UTC 时间,海拔高度等。通过STM32对串口数据进行解算,驱动SPI屏幕实现上述数据的显示,使其骑行爱好者可以实时的查看骑行数据等。
标签
STM32
DIY
FastBond第3季
安信可
GP-01
Wang Chong
更新2024-08-12
32

创意介绍:

近两年时间,随着国内骑行爱好者的用户增加。自行车的码表也成为了众多骑行爱好者的可选小工具之一。本项目致力于开发出一款小巧灵敏的自行车码表。使其骑行爱好者可以在骑行途中方便的查看了当前的骑行信息。其中包括:位置信息,速度信息(m/s, km/h), UTC 时间(可以换算成本地时间),海拔高度, 湿温度。航向。 同时在存在网络的情况下。可以使用WIFI模块和上位机进行通讯同步当前的运行轨迹等。


器件介绍:

器材名称

通讯方式

说明

NUCLEO-H7A3ZI-Q

NULL

高性能的STM32处理器,提供高帧率的LVGL刷新率以及支持多种通讯协议和其他外设进行通讯。

1.8寸SPI屏幕


SPI

使用SPI和STM32主机进行通讯,主要负责数据的显示。

GP-01模组


UART

使用串口和STM32主控通讯将位置信息,速度信息(m/s, km/h), UTC 时间,海拔高度等发送至STM32

AHT-10


IIC

负责采集环境的湿度和温度信息等。

PS: ESP32作为无线连接模块和上位机通讯实现数据采集,可作为升级功能结合STM32的SDIO实现数据保存并且同步运动轨迹等(可选)

方案框图


流程图



实现思路

当前的项目根据使用的传感器和组件等分别需要以下的技术支持.

1- LVGL, 用于屏幕的显示以及UI组件的绘制等.

2-屏幕的SPI驱动函数,用于LVGL移植打点.

3-AHT-10的IIC解析,用于传输湿度和温度数据给STM32

4-串口接受中断,在中断中根据当前的GP-01的数据包解析是否能够搜索到卫星.如果搜索到卫星的话则在屏幕上显示来自GP-01的数据,比如位置信息,速度信息(m/s, km/h), UTC 时间,海拔高度等.

5-操作系统支持Free-RTOS 或者RT-Thread支持. 用于模块化任务调度(可选)


实现步骤概述


首先初始化SPI, 根据屏幕的手册或者demo代码进行移植,使其屏幕可以顺利的被当前的STM32开发板驱动. 然后移植LVGL,使用GUI-guider或者其他工具辅助进行LVGL的开发. 在这一个阶段之后应该已经可以使用LVGL点亮屏幕并且已经可以显示当前项目的静态数据(伪数据). 之后,初始化IIC, 对AHT10编写驱动函数, 使其STM32可以顺利获取到湿温度信息, 并且显示在屏幕上. 最终初始化UART 波特率9600, 编写串口中断解析GP-01的串口数据包, 根据数据包判断是否搜索到卫星, 如果搜索到卫星的话,则同步卫星数据到屏幕上. 否则的话在屏幕上闪烁卫星图标提示用户没有信号(搜索不到卫星).

总结:

本项目开发了一款功能全面的自行车码表,集成了高性能处理器、显示屏、传感器模块和通讯模块,为骑行者提供了实时、精准的骑行数据监测。通过详细的技术实现和系统配置,确保了码表在各种骑行条件下的稳定性和可靠性,同时为未来的功能扩展和数据同步提供了可选方案。


反思:

当前的项目还存在着一定的上升空间.


第一点, 比如说使用性价比更高价格更低的STM32芯片,在保证LVGL的刷新率前提上. 同时还可以在单片机上集成离线地图等(但是这个我还没想明白到底怎么实现),从而使其用户可以使用GPS提供的位置信息直接定位显示用户当前的位置在已经下载好的地图上.


第二点, 关于ESP32. 当基础功能的开发完成之后, 可以DIY上位机软件. 当骑手开始骑行的时候,根据GPS提供的RTC时间,换算成本地的时间,使用SD卡记录起所有的用户骑行数据(经纬度和时间信息). 当用户有网的情况下,自动同步当前的骑行数据到上位机软件中(Web site) 等,从而实现对历史运动记录的追踪. 如果能在第一点已经实现离线地图的基础上的话, 可以不需要上位机软件. 仅仅在码表上即可查看历史运动记录.


引用:

1- GP-01相关

2- AHT-10相关


3- 屏幕相关(ST7735)



团队介绍
业余嵌入式爱好者,专业软件后端工程师。具有多款MCU使用经验。
团队成员
Wang Chong
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号