Проектирование процедуры main()

Процедура main{) работает следующим образом после инициализации все узлов AVR и периферийных устройств, разрешается выполнение всех прерываний. После этого программа ждет срабатывания таймера, который настроен таким образом, что он немного чаще, чем может происходить прерывание от УСАПП. Сигналом того, что таймер 0 сработал служит факт установки глобальной переменной TmrOFlag в 1, что делается обработчиком прерываний таймера.

Затем, все время, пока кольцевой буфер не будет пуст, происходит считывание данных из него. Считанный байт помещается в строку-массив OutString[], и увеличивается счетчик принятых байт.

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

В любом случае происходит сброс флага таймера в ноль и происходит ожидание следующего срабатывания таймера.

Другие публикации

Системы радиочастотной идентификации
RFID (англ. Radio Frequency IDentification, радиочастотная идентификация)— метод автоматической идентификации объектов, в котором посредством радиосигналов считывают ...

Усилитель низкой частоты
Задачей курсового проектирования является закрепление теоретических положений курса электронных устройств, а также углубление и приобретение новых знаний при самостоя ...

Меню

Copyright @2021, TECHsectors.ru.