我正在使用使用rs232(rs232 over USB)連接到PC的嵌入式設備。在嵌入式設備上將字節流轉換爲C89中的數據包流的方法
我在考慮發展我自己的協議:
<MAGIC><LENGTH><BINARY DATA><CRC>
,但我不想推倒重來。
請注意說:我正在考慮相當有限的設備:4kb的RAM,沒有內核,也沒有標準的C庫。
你能想到一個標準的方法來做到這一點(也許是開源庫)嗎?
如果您編碼自己的解決方案是否有任何最佳做法?
- 你使用魔法字節也是在包的結束?
- 也許最好是使用時間間隔而不是分隔符?
- 如何在流二進制數據中找到包的開始?
- 也許最好是使用文本協議?
UPDATE: 請重新閱讀的問題。我不應該要求圖書館,而是要求好的做法。
類似於:http://stackoverflow.com/questions/815758/ – 2009-05-03 14:08:26
第3個要點應該是:「你怎麼在二進制數據流中找到數據包的開始」? – 2009-05-03 14:17:17
謝謝史蒂夫:) – 2009-05-03 15:15:48