|
新手学习单片机。 想实现这么一个功能。 从另一个单片机中获得数据。 从串口得到数据。波特率为2400。晶振是11.0592MHz 接收的数据格式如下。 一直循环油不同的数据。数据定义为: FF FE 00 00 2D B0 02 B8 07 D0 1C 20 02 80 03 58 28 01 BF 01 7E 03 56 00 00 47 FF FD 其含义如下: 数据头:FFFE,两字节; a: XXXX,4位BCD码,0表示无故障,否则为故障码后四位,出现故障码后,以下仅有时钟有效; b: XXXX,两字节无符号整数,高位在前,0表示无有效数据输出; c: XXXX,两字节有符号整数,高位在前; d: XXXX,两字节无符号整数,高位在前; e:XXXX,两字节有符号整数,高位在前; f: XXXX,两字节无符号整数,高位在前; g: XXXX,两字节有符号整数,高位在前,负数表示瞬时耗油速率; h: XX, 一字节无符号整数; i: XXXX,两字节无符号整数,高位在前,最大6553.5; k: XXXX,两字节无符号整数,高位在前,最大655.35; l: XXXX,两字节无符号整数,高位在前,0表示无有效数据输出; m: XXXX,两字节无符号整数,第一字节为小时,第二字节为分钟; n:XX,一字节,为数据包有进位累加和,从故障码开始按字节计算,用于校验; o:FFFD,两字节
想把这些数据接收并分析好后,分别用变量存储,用于液晶的显示。 我想用12864。 不知道哪位大侠能给指导下。 万分感谢。 问题补充:2楼,主要是16进制数据,取段并转换为10进制的函数。 |
|