专栏名称: ittbank
让电子库存因技术而改变的ITT模式电商平台。引领和适应市场,以共享经济理念的创客及工程师为核心、以免费开放用户生成的数据为基础,为其提供高性价比的应用解决方案和及时精准的供求信息,快速提高产品开发周期和生产直通率、提升电子器件的应用附加值。
今天看啥  ›  专栏  ›  ittbank

单片机通信数据接收解析方法

ittbank  · 公众号  ·  · 2024-07-26 17:20

文章预览

前阵子一朋友使用单片机与某外设进行通信时,外设返回的是一堆格式如下的数据: AA AA 04 80 02 00 02 7B AA AA 04 80 02 00 08 75 AA AA 04 80 02 00 9B E2 AA AA 04 80 02 00 F6 87 AA AA 04 80 02 00 EC 91 其中 AA AA 04 80 02 是数据校验头,后面三位是有效数据,问我怎么从外设不断返回的数据中取出有效的数据。 对于这种问题最容易想到的就是使用一个标志位用于标志当前正解析到一帧数据的第几位,然后判断当前接收的数据是否与校验数据一致,如果一致则将标志位加一,否则将标志位置0重新判断,使用这种方法解析数据的代码如下: if (flag == 0 ) { if (tempData == 0xAA ) flag++; else flag = 0 ; } else if (flag == 1 ) { if (tempData == 0xAA ) flag++; else flag = 0 ; } else if (flag == 2 ) { if (tempData == 0x04 ) flag++; else flag = 0 ; } else if (flag == 3 ) { if (tempData == 0x80 ) flag++; else f ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览