Я работаю со встроенным устройством, подключенным к ПК с помощью rs232 (rs232 через USB).Способ преобразования потока байтов в поток пакетов в C89 на встроенном устройстве
Я думаю о разработке своего собственного протокола:
<MAGIC><LENGTH><BINARY DATA><CRC>
, но я не хочу, чтобы изобретать колесо.
примечание что: Я думаю об ограниченном устройстве: 4 КБ ОЗУ, ни ядре, ни стандартном C lib.
Можете ли вы подумать о стандартном способе сделать это (возможно, библиотеку с открытым исходным кодом)?
Если у вас есть собственное решение, у вас есть какие-либо рекомендации?
- Вы используете байты MAGIC также в конце пакетов?
- Возможно, лучше использовать временные промежутки вместо разделителей?
- Как вы находите начало пакетов в двоичных данных потока?
- Возможно, лучше использовать текстовые протоколы?
UPDATE: Пожалуйста повторно зачитать вопрос. Я не должен просить библиотеку, но для хорошей практики.
Похоже на: http://stackoverflow.com/questions/815758/ –
Должен ли 3-й пункт маркировать: «как вы находите начало пакетов в потоке двоичных данных»? –
Спасибо Steve :) –