









while(1)
{
ждем пока не примем из UART один символ;
записываем очередной символ из UART последовательно во входной буфер;
if (текущий принятый символ равен признаку конца передачи команды)
ищем во входном буфере имя нашей команды (“comm1”);
if (нашли имя команды и место (индекс), где она находится)
{
разбираем символы, которые идут после имени команды, определяем параметры р1 и р2 и их значения;
if (распознали все параметры и получили их значения)
{
готовим ответную строку в компьютер;
посылаем ответ на компьютер;
}
else
//не распознали все параметры
{
посылаем ответ на компьютер - ошибка;
}
else
//не нашли команду
{
посылаем ответ на компьютер - ошибка;
}
сброс приема во входной буфер после обнаружения признака конца команды;
стираем входной буфер от старых значений;
устанавливаем, что начнем писать принятые символы с начала входного буфера;
}
}
| Стартуем! |
| Дальше |
| Проверить |
| Узнать результат |
| Дальше |
| Проверить |
| Узнать результат |
| Дальше |
| Проверить |
| Узнать результат |
| Пройти еще раз |
| Пройти еще раз |
| Пройти еще раз |