我正在使用使用 rs232(通过 USB 的 rs232)连接到 PC 的嵌入式设备。
我正在考虑开发自己的协议:
<MAGIC><LENGTH><BINARY DATA><CRC>
但我不想重新发明轮子。
请注意:我正在考虑非常受限的设备:4kb 的 RAM,没有内核,也没有标准的 C 库。
你能想出一个标准的方法来做到这一点(也许是开源库)?
如果您编写自己的解决方案,是否有任何最佳实践?
- 您是否也在包的末尾使用 MAGIC 字节?
- 也许使用时间间隔而不是分隔符更好?
- 如何在流二进制数据中找到包的开头?
- 也许使用文本协议更好?
更新: 请重新阅读问题。我不应该要求图书馆,而是要求良好的做法。