|
Структура программы типа:
main:
sbrc SYSSTAT,CP_REQ
call CP
.
.
процедуры main-цикла
jmp main
где SYSSTAT - один из регистров флагов системных событий
CP_REQ - флаг необходимости вызова "командного процесора" (CP)
данный ф. устанавливается П/П-ой RTC каждую 1/100 секунды.
CP анализирует 8-ми байтный буфер команд и занимается их интерпретацией. Данные в буфер команд попадают по конвейеру из UART или с клавиатуры, система команд моя-доморощенная (командный пакет из 4-х байт (команда и 16 битный параметр)+ CS(по XOR).
Критичные ко времени исполнения процедуры привязаны к прерываниям (например съём данных с АЦП или работа с UART и т.п.) или к RTC (например обаботчик клавиатуры), всякие некритичные ко времени исполнения задачи типа обсчёта промежуточных данных, интерпретация команд, обработка системных ошибок и т.п. делается в main-цикле.
Вот такая примерно получается ОСа.
E-mail: info@telesys.ru