本帖最后由 muyichuan2012 于 2022-11-3 16:01 编辑
滑板车定制仪表盘
github源代码下载地址:https://github.com/sidianneng/scooter_dashboard
视频效果
1 项目概述
该仪表盘基于ninebot的E22滑板车进行设计。
在兼容原始仪表盘的所有功能的前提下,同时将官方手机端的功能也集成到了其中。
这样极大的提高了使用的便捷性。
2 功能介绍
该仪表盘共计有4个界面,分别对应不同的功能:
2.1 主界面
主界面中100%还原了官方仪表盘的原始状态。支持显示的内容如下:
实时速度
电量情况
充电情况
速度单位
蓝牙状态
运动模式
错误提示
2.2 上锁解锁界面
该界面可以通过长按触摸屏实现对滑板车的上锁解锁,避免了以往手机app连接的繁琐操作。
2.3 续航数据显示界面
该界面显示了如下信息:
剩余续航
剩余电量
总里程数
2.4 设置界面
该界面实现了滑板车的一些配置功能,具体如下:
开启关闭定速巡航
设置能量回收强度
设置上锁解锁密码
3 关键性功能原理介绍
该仪表盘中有两个核心功能点:
原始仪表盘数据解析
原始通讯协议数据解析
3.1 原始仪表盘数据解析
原始仪表盘的数据是通过蓝牙芯片控制一个数码管驱动芯片(TM1650)实现的,其中使用I2C作为通讯接口。我们通过解析其I2C通讯的数据内容,结合数码管芯片的数据手册。这样就能获取到完整的仪表盘数据了。
3.2 原始通讯协议数据解析
原始仪表盘和主板之间通过单线串口实现数据通讯,我们通过将新仪表盘连接到它们之间,通过截取和转发它们间的通讯内容,在必要时加入我们需要的数据,这样就能实现对滑板车的更多功能控制。
4 鸣谢
该项目的软件框架是基于X-TRACK进行二次开发的。
X-TRACK是一个很不错的开源项目,其代码逻辑实现非常清晰和优美,另外其处理issue的速度也非常快。在我开发的过程中提供了很多帮助。在这里对其表示衷心的感谢。希望该项目能越来越好。
|