Читать курсовая по информатике, вычислительной технике, телекоммуникациям: "Регистратор дискретных сигналов" Страница 6

назад (Назад)скачать (Cкачать работу)

Функция "чтения" служит для ознакомления с работой. Разметка, таблицы и картинки документа могут отображаться неверно или не в полном объёме!

микроконтроллера.

3.1. Логическая структура устройства

После включения устройства начинает работать программа начальных установок . Производится сброс всех регистров и установка начальных параметров работы программы. После чего выполнение программы останавливается и происходит ожидание ввода данных включения/выключения каналов через последовательный порт СОМ. По окончании ввода программа вновь останавливается до нажатия кнопки ПУСК. После ее нажатия сначала запускается счетчик времени а затем основной цикл вывода времени на индикатор. Программа постоянно находится в этом цикле, а отсчет времени и проверка включения/выключения каналов производится по прерыванию таймера С/Т0.

Таким образом в работу системы можно разделить на три основных части:

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

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

Алгоритм работы программы

[Инициализация порта и ввод данных]

M1: While (RI=0) do { };

A := SBUF;

RI :=0;

C := A.3;

R0 := 20H+A*4;

For ( i = 0 to 4) do {

While (RI=0) do { };

A := SBUF;

RI :=0;

Write (@R0, A);

R0 := R0+1; }

If (C=0) then goto M1;

While (P3.4 = 1) do { };

[Инициализация и пуск таймера]

TMOD := 1

TF0 := 0

TL0 := low(15000);

TH0 := High(15000);

ET0 := 1

TR0:= 1

[Индикация времени]

M2: A := R4;

Gosub INDRAS[блок преобразования числа в код по одной цифре

[ Для вывода на индикатор (будет описан далее)]

P1/4 := 0 ; P1.5 :=0

P1 := A

Pause 5(ms)

P1 := B

P1/5 :=1

Pause 5(ms)

A := R3;

Gosub INDRAS

P1/4 := 1 ; P1.5 :=0

P1 := A

Pause 5(ms)

P1 := B

P1/5 :=1

Pause 5(ms)

Goto M2 В программе приняты следующие соглашения – регистры R1 – R4 хранят информацию об миллисекундах, секундах, минутах и часах соответственно.

Бит С служит показателем конца ввода данных с ком-порта (1 – последний канал, ноль – не последний канал). Сохранение времени включения и выключения для нулевого канала начинается с ячейки с адресом 20Н; сначала записываются часы, затем минуты включения, затем часы и минуты выключения. Таким образом для каждого канала в памяти отводится 4 байта, общее количество оперативной памяти используемое программой 32 байта. Структура использования памяти описана в следующей таблице:

Адрес

Содержимое

Адрес

Содержимое

20h

Таймер 1 часы включения

21h

Таймер 1 минуты включения

22h

Таймер 1 часы выключения

23h

Таймер 1 минуты выключения

24h

Таймер 2 часы включения

25h

Таймер 2 минуты включения

26h

Таймер 2 часы выключения

27h

Таймер 2 минуты выключения

28h

Таймер 3 часы включения

29h

Таймер 3 минуты включения

2Аh

Таймер 3 часы выключения

2Bh

Таймер 3 минуты выключения

2Ch

Таймер 4 часы включения

2Dh

Таймер 4 минуты включения

2Eh

Таймер 4 часы выключения

2Fh


Интересная статья: Основы написания курсовой работы