Встраиваемое устройство должно быть реализовано так, чтобы вы могли либо отправить символ отмены / очистки / прерывания, который будет выгружать содержимое его буфера команд и давать вам чистую доску при запуске вашего клиентского приложения.
Или же он должен предоставлять символ сброса программного обеспечения, который будет сбрасывать буфер команд и все состояния.
Или это так, чтобы вы могли отправить завершение команды (возможно, новую строку и т. Д., В зависимости от командного протокола) и, возможно, сгенерировать ошибку при разборе искаженной частичной команды, которая была в ее буфере, запрос / сбросьте ошибку, и тогда все будет хорошо.
Было бы неплохо при подключении клиентской программы отправлять несколько запросов работоспособности / состояния / ошибки до тех пор, пока вы не получите звуковой ответ, и только после этого начинайте посылать команды конфигурации или операции. Если вы не можете с помощью запроса определить, что устройство оставлено в подходящем состоянии, вы, вероятно, захотите ничего не предполагать и сконфигурировать его с нуля, после сброса конфигурации, если он доступен.