hello,小伙伴们,经过一段时间的开发和测试,安信可Ai-M61/M62模组可以支持CAN接口了。
起因是前段时间,突然有客户想拿小安派-SCP-4.3做电动车的码盘,但是没有CAN 接口。CAN接口简而言之就是汽车上常用的一种通信总线,但是电动车现在也用上了。CAN 总线,全称为控制器局域网网络(Controller Area Network),是一种串行异步半双工通信协议,由德国博世公司(Bosch)在 1980 年代开发。它最初旨在解决汽车电子系统中多个控制器之间的通信问题,现已成为汽车、工业自动化、医疗设备等领域中的一种重要通信标准。CAN 总线在汽车电子领域中得到了广泛应用,如发动机控制单元、变速箱控制单元、车窗、车灯、空调、雨刷等车身控制设备,以及 ABS(防抱死系统)、ESP(电子稳定程序)、安全气囊等安全系统。
那么小安派-SCP-4.3,这个板子大家估计都已经记不起来了,小安带大家一起回忆下。
小安派-SCP-4.3采用安信可Ai-M61-32S无线模组为控制核心,通过M61芯片驱动4.3寸(480*272)RGB液晶屏,作为码盘显示需要的信息,可通过按键改变屏幕显示的界面,适用于电动车或自行车等两轮车的应用。
小安派-SCP-4.3外接RS485通信接口,采用Tpye-C接口进行供电,将其余的IO口引出作为GPIO接口方便拓展。
详情可点击:两轮车能用的开源硬件?小安派-SCP-4.3来啦
准备好以下材料,才能开始 CAN 总线的测试:
上位机使用
连接设备
打开上位机之后,会自动进入连接界面,如果驱动安装成功,并且 USB-TO-CAN 模块连接上电脑之后,会显示如下信息:
如果没有显示模块信息,请重装驱动或者重新拔插 USB-TO-CAN。
界面说明
数据说明
本固件的数据为 8 位 16 进制数据,数据结构如下:
帧头 1 | 帧头 2 | 属性位 | 数据 1 | 数据 2 | 数据 2 | 帧尾 1 | 帧尾 2 |
0XAA | 0XAA | 见属性码说明 | 保留 | 保留 | 保留 | 0X55 | 0X55 |
属性码说明
本次固件一共写了 10 种属性,十种属性分别对应屏幕上显示的十个信息,各属性及其属性码对应关系如下:
属性名称 | 属性码 | 备注 |
Speed | 0X01 | 当前速度 |
温度 | 0X02 |
|
时间 | 0X03 |
|
电量 | 0X04 |
|
ODO | 0X05 | 总里程 |
trip | 0X06 | 目的地距离 |
AVG.SPEED | 0X07 | 平均速度 |
MAX.SPEED | 0X08 | 最大速度 |
TIME | 0X09 | 开车时长 |
ETA | 0X0A | 预计达到时间 |
各属性和屏幕上的对应位置:
修改显示速度
点击 添加消息
图标或者在发送窗口点击 鼠标右键
-> "New Message"。来弹出消息配置窗口。
在消息配置窗口,配置如下信息:ID:1 ,Cycl Time:1000ms,Data 输入以下 8 位数据:
如下:
点击 OK
之后,就可以在发送窗口看到指令了,并且 小安派-SCP-4.3 屏幕上的速度变成了 1。
重新修改速度
双击刚刚创建的指令,在消息配置窗口把 Data 的 第 5 个 值,改成对应的速度即可,例如 80km/h 对应的 16 进制为:0X50。
如图:
点击 OK
之后 小安派-SCP-4.3 屏幕上的速度变成了 80km/h。
修改电池电量
同样的,添加一条数据,ID 为 2 (不同消息 ID 不能相同),配置电量为 25% (25 的 16 进制值为 0X19),对应的数据帧如下: