Volvo s80 仪表算法
; v+ |: [& O5 v! i2000款车: Y! a5 ~& A+ v1 {
00000170:FF FF FF FF FF FF FF FF-FF FF 00 00 00 00 00 00 ................+ G) @5 ?/ d8 ^; V8 j
00000180:10 10 10 10 10 10 10 10-10 10 10 10 10 10 10 10 ................( l! T8 O1 I. j2 {7 v4 s* @
00000190:10 10 10 10 10 10 10 10-10 10 10 10 10 10 10 10 ................: L. z/ k* d# f: n6 L
000001A0:10 10 10 10 10 0F 0F 0F-0F 0F 0F FF FF FF FF FF ................
4 ]# L5 \ p' Y5 H! F+ o& U6 c7 T数据地址017A——01AA
3 @! b7 T+ _2 b# n& {其中00180-001AA一共是43位,每进一位是4公里,也就是说这43位全是FF,是0公里,00180位是00时,是4公里,43位全是00时,是一个循环43X4=172公里。& c0 x4 {, r: J
8 F- ]4 |1 ^& j" U3 Q$ {# p现在的数据是10共有37位,10转换十进制=16,一共是17个循环,17X172=2924公里,还有5位是0F,5X4=20,2924-20=2904KM,2904就是00180-01AA的里程数。 ?6 o' B' p4 t/ L
; c5 _( {" s0 V J
当00180-001AA的数据全是FF,为最大里程数,FF转换成十进制=255,一共是256个循环,256X172=44032KM,此为00180-001AA地址所能显示的最大里程数,当超过44032KM,就要进位,也就是0017A-0017F的6位,当这6位全是FF时,表示没有进位,超过44032KM时向前进位,6位FF同时变成00,也就是当0017A-0017F都是00时,表示44032X2公里,6位变成01时,表示44032X3。
+ N! }; R& _- I: u( M& b |