解析协议一般如何处理
大致的协议格式是关键字+序号+命令字+数据长度+数据内容+校验
我一般是数据全部接收到数组之后
一个个的从头到尾判断,
然后执行
有没有快捷一点的方式?节省点处理时间
你的一般处理是正确的 可以,没问题。 没问题,行的通 这种协议存在风险的,如果长度字节出问题,往往导致帧失步,很难再帧同步,除非帧头关键字是唯一的,可以根据关键字实现帧同步。如果没有这种强制同步功能,一般都是等接收超时的。 自定义协议看自己需要定义 我也是一层一层的比较 没啥好的方法吧,可以先收协议头,然后对了再继续进行接收和判断 处理数据好像都是这个流程,你想怎么快捷啊? 我也是按照你的方式去做的,估计没啥好的快捷方式吧 你可以收命令头,如果对了,把后面数据都收过来,然后再逐一判断 一般都是这个流程,哈哈哈 逻辑很清晰啊,但是你说的快捷我竟然没有一点儿头绪 你这个操作流程就行的,没必要再优化吧,你可以收数据用DMA,但是处理还得是逐个处理 你收数据的时候快点儿就行了,这种能给处理数据留些时间 便捷方法好像就是协议简单点儿,数据少点儿 收到数据之后,直接判断标记和想要的数据区域,直接获取呢? DMA+联合体+结构体 这个是正确的流程 DMA+联合体+结构体是个什么意思
页:
[1]
2