求解:c语言总里程的累计
1、里程表每20ms读取一次车速信号A; 2、车速信号A的更新周期周期为100ms;
3、车速信号A的CAN信号定义如下
信号 周期(ms) 精度 Min(Km/h) Max(Km/h)
A 100 0.05625 0 360
4、系统不支持浮点型数据运算
需求:
1、根据当前车速信号实时输出总里程值;
2、总里程达到最大值999999Km后维持最大值;
3、精度1m
例如: 信号输入 A B ......
读取信号 A A A A A B B B B B ......
里程累计 = A*100+B*100
CAN信号生成
背景:
1、CAN信号属性:
Name 名字 ID 周期(ms) 起始位 长度
ESP_VehicleSpeed 车速信号 320 100 16 13
7 6 5 4 3 2 1 0
0 0
1 13高位<------------------ 8
2<------------------------------------低位
3
4
5
6
7
编码方式: Motorola
需求: 1、根据输入的信号ID,起始位,长度,输出对应的CAN报文;
例如:
输入: ID DLC 起始位 长度 信号值
320 8 16 13 100
| | / 16进制:96
输出: | | /
$320 $8 $00 $00 $96 $00 $00 $00 $00 $00
[此贴子已经被作者于2021-11-12 14:31编辑过]