Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
отчет4.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
163.84 Кб
Скачать

Задание 2

Разработать схему включения таймера, программу инициализации ПТ и снять временные диаграммы для следующих вариантов использования:

2.1. Организовать автоматический перезапуск таймера в режиме 1.

Текст программы:

┌───┬─────────────────────────┬───┬───┬───┬───┬──────────────────────────────┐

│ N%│ Команда │CE0│CE1│CE2│CLK│ Комментарии │

├───┼─────────────────────────┼───┼───┼───┼───┼──────────────────────────────┤

│000│mov al,00110010b │ 1 │ 0 │ 0 │ 1 │ │

│001│out 43h,al │ 1 │ 0 │ 0 │ 1 │ │

│002│mov al,3 │ 1 │ 0 │ 0 │ 1 │ │

│003│out 40h,al │ 1 │ 0 │ 0 │ 1 │ │

│004│mov al,0 │ 1 │ 0 │ 0 │ 1 │ │

│005│out 40h,al │ 1 │ 0 │ 0 │ 1 │ │

│006│mov al,0 │ 1 │ 0 │ 0 │ 1 │ │

└───┴─────────────────────────┴───┴───┴───┴───┴──────────────────────────────┘

Схема подключения таймера:

MУ MA МD ┌───┬───┬───┬───┐

║ ║ ║ │CE0│CE1│CE2│CLK│

║ ║ ╠══════════╗ ┌────┬──────┬────┐ └───┴─┬─┴─┬─┴─┬─┘

║ ║ ║ ╟──┤z<->│ │ │ │ │ │

║ ║ ║ ╟──┤ D0 │ СТ │ CE0├──────────│───│───│─┐

║ ║ ║ ╟──┤ D1 │ │CLK0├──────────│───│───* │┌───────┐

║ ║ ║ ╟──┤ D2 │ │ │ │ │ │ ││ │

║ ║ ║ ╟──┤ D3 │ ВИ54 │OUT0├──────────────────│──┘ ┌───┐ │

║ ║ ║ ┌───┐ ╟──┤ D4 │ ├────┤ │ │ │ │ │ o─┘

║ ║ ║ 6 │ С │ ╟──┤ D5 │ │ CE1├──────────┘ │ │ └──o 1 │

║ ╟───║─/─┤ В o┐ ╟──┤ D6 │ │CLK1├──────────────│───* │ ├── Внеш.

║ ║ ║ │ А ││ ╟──┤ D7 │ │ │ │ │ └───┘ запуск

║ ║ ║ └───┘│ ├────┤ │OUT1│ │ │

║ ║───║────────┼────┤ A0 │ ├────┤ │ │

║ ║───║────────┼────┤ A1 │ │ CE2├──────────────┘ │

║ ║ ║ │ ├────┤ │CLK2├──────────────────┘

║ ║ ║ └────o CS │ │ │

║───║───║─────────────o RD │ │OUT2│

║───║───║─────────────o WR │ │ │

║ ║ ║ └────┴──────┴────┘

Временные диаграммы:

clk ─┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐

└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└

32 03 00

rd/wr──┐ ┌─┐ ┌─┐ ┌───────────────────────

└─┘ └─┘ └─┘

ce0 ────────────────┐ ┌┐ ┌─┐ ┌─┐

└─┘└─────┘ └─────┘ └

3 2 1 0 3 2 1 0 3

out0 ───────────────────┐ ┌─┐ ┌─┐

└─────┘ └─────┘ └

В режиме 1, запуск счетчика осуществляется фронтом сигнала CE, поэтому для запуска счетчика можно использовать внешний запуск ,и перезапускать счетчик инверсией сигнала OUT.

2.2. Организовать работу часов для подсчета секунд и минут (в минуте 8 секунд, в часе 5 минут, период 2 Гц).

Текст программы:

┌───┬─────────────────────────┬───┬───┬───┬───┬──────────────────────────────┐

│ N%│ Команда │CE0│CE1│CE2│CLK│ Комментарии │

├───┼─────────────────────────┼───┼───┼───┼───┼──────────────────────────────┤

│000│mov al,00010100b │ 0 │ 0 │ 0 │ 1 │ │

│001│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│002│mov al,8 │ 0 │ 0 │ 0 │ 1 │ │

│003│out 40h,al │ 0 │ 0 │ 0 │ 1 │ │

│004│mov al,01010100b │ 0 │ 0 │ 0 │ 1 │ │

│005│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│006│mov al,5 │ 0 │ 0 │ 0 │ 1 │ │

│007│out 41h,al │ 0 │ 0 │ 0 │ 1 │ │

│008│mov al,10010100b │ 0 │ 0 │ 0 │ 1 │ │

│009│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│00A│mov al,2 │ 0 │ 0 │ 0 │ 1 │ │

│00B│out 42h,al │ 0 │ 0 │ 0 │ 1 │ │

│00C│nop │ 1 │ 1 │ 1 │ 1 │ │

└───┴─────────────────────────┴───┴───┴───┴───┴──────────────────────────────┘

Схема подключения таймера:

MУ MA МD ┌───┬───┬───┬───┐

║ ║ ║ │CE0│CE1│CE2│CLK│

║ ║ ╠══════════╗ ┌────┬──────┬────┐ └─┬─┴─┬─┴──┬┴─┬─┘

║ ║ ║ ╟──┤z<->│ │ │ │ │ │ │

║ ║ ║ ╟──┤ D0 │ СТ │ CE0├──────┘ │ │ │

║ ║ ║ ╟──┤ D1 │ │CLK0├──────────│───┐│ │

║ ║ ║ ╟──┤ D2 │ │ │ │ ││ │

║ ║ ║ ╟──┤ D3 │ ВИ54 │OUT0├──────┐ │ ││ │

║ ║ ║ ┌───┐ ╟──┤ D4 │ ├────┤ │ │ ││ │

║ ║ ║ 6 │ С │ ╟──┤ D5 │ │ CE1├──────│───┘ ││ │

║ ╟───║─/─┤ В o┐ ╟──┤ D6 │ │CLK1├──────┘ ││ │

║ ║ ║ │ А ││ ╟──┤ D7 │ │ │ ││ │

║ ║ ║ └───┘│ ├────┤ │OUT1│ ││ │

║ ║───║────────┼────┤ A0 │ ├────┤ ││ │

║ ║───║────────┼────┤ A1 │ │ CE2├──────────────│┘ │

║ ║ ║ │ ├────┤ │CLK2├──────────────│───┘

║ ║ ║ └────o CS │ │ │ │

║───║───║─────────────o RD │ │OUT2├──────────────┘

║───║───║─────────────o WR │ │ │

║ ║ ║ └────┴──────┴────┘

Временные диаграммы:

clk ─┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐

└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└

14 08 54 05 94 02

rd/wr──┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─────────────────────────────────────────────

└─┘ └─┘ └─┘ └─┘ └─┘ └─┘

ce0 ┌─────────────────────────────────────────────

────────────────────────┘

8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 8 8 7 7 6 6

out0 ───────────────────────────────────────────────────────┐ ┌──────────

└───┘

ce1 ┌─────────────────────────────────────────────

────────────────────────┘

5 5 5 5 5 5 5 5

out1 ──────────────────────────────────────────────────────────────────────

ce2 ┌─────────────────────────────────────────────

────────────────────────┘

2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

out2 ───────────────────────────┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌

└─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘

clk ─┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐

└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└

rd/wr────────────────────────

ce0 ────────────────────────

5 5 4 4 3 3 2 2 1 1 8 8

out0 ─────────────────┐ ┌──

└───┘

ce1 ────────────────────────

5 5 5 5 5 5 5 5 4 4 4 4

out1 ────────────────────────

ce2 ────────────────────────

1 2 1 2 1 2 1 2 1 2 1 2

out2 ─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌

└─┘ └─┘ └─┘ └─┘ └─┘ └─┘

Для реализации устройства счета времени с частотой 2Гц (1Гц – стандартная частота), устанавливаем для всех каналов режим 2 (удобен автоматическим перезапуском и запретом счета при CE=0). В соответствии с назначением канала загружаем счетчики: 0 канал – секунды; 1 канал – минуты; 2 канал – делитель частоты (значение 2). Счет 0 канала возможен лишь при перезапуске 2 канала (OUT2=0), Счет 1 канала – при перезапуске 0 канала (OUT0=0).

2.3. Выполнить перезапуск генератора импульсов в режиме 2 для заданного периода T=8

после выработки каждого 12-го импульса.

Текст программы:

┌───┬─────────────────────────┬───┬───┬───┬───┬──────────────────────────────┐

│ N%│ Команда │CE0│CE1│CE2│CLK│ Комментарии │

├───┼─────────────────────────┼───┼───┼───┼───┼──────────────────────────────┤

│000│mov al,00010100b │ 0 │ 0 │ 0 │ 1 │ │

│001│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│002│mov al,12 │ 0 │ 0 │ 0 │ 1 │ │

│003│out 40h,al │ 0 │ 0 │ 0 │ 1 │ │

│004│mov al,01010100b │ 0 │ 0 │ 0 │ 1 │ │

│005│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│006│mov al,8 │ 0 │ 0 │ 0 │ 1 │ │

│007│out 41h,al │ 0 │ 0 │ 0 │ 1 │ │

│008│mov al,0 │ 1 │ 0 │ 0 │ 1 │ │

└───┴─────────────────────────┴───┴───┴───┴───┴──────────────────────────────┘

Схема подключения таймера:

MУ MA МD ┌───┬───┬───┬───┐

║ ║ ║ │CE0│CE1│CE2│CLK│

║ ║ ╠══════════╗ ┌────┬──────┬────┐ └─┬─┴───┴─┬─┴─┬─┘

║ ║ ║ ╟──┤z<->│ │ │ │ │ │

║ ║ ║ ╟──┤ D0 │ СТ │ CE0├──────┘ │ │

║ ║ ║ ╟──┤ D1 │ │CLK0├──────────────│───*

║ ║ ║ ╟──┤ D2 │ │ │ │ │

║ ║ ║ ╟──┤ D3 │ ВИ54 │OUT0├──────┐ │ │

║ ║ ║ ┌───┐ ╟──┤ D4 │ ├────┤ │ │ │

║ ║ ║ 6 │ С │ ╟──┤ D5 │ │ CE1├──────┘ │ │

║ ╟───║─/─┤ В o┐ ╟──┤ D6 │ │CLK1├──────────────│───*

║ ║ ║ │ А ││ ╟──┤ D7 │ │ │ │ │

║ ║ ║ └───┘│ ├────┤ │OUT1│ │ │

║ ║───║────────┼────┤ A0 │ ├────┤ │ │

║ ║───║────────┼────┤ A1 │ │ CE2├──────────────┘ │

║ ║ ║ │ ├────┤ │CLK2├──────────────────┘

║ ║ ║ └────o CS │ │ │

║───║───║─────────────o RD │ │OUT2│

║───║───║─────────────o WR │ │ │

║ ║ ║ └────┴──────┴────┘

Временные диаграммы:

clk ─┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐

└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└

14 0C 54 08

rd/wr──┐ ┌─┐ ┌─┐ ┌─┐ ┌─────────────────────────────

└─┘ └─┘ └─┘ └─┘

ce0 ┌─────────────────────────────

────────────────┘

1211109 8 7 6 5 4 3 2 1 12111

out0 ───────────────────────────────────────┐ ┌────

└─┘

ce1 ───────────────────────────────────────┐ ┌────

└─┘

8 7 6 5 4 3 2 1 8 7 6 5 5 8 7

out1 ───────────────────────────────┐ ┌────────────

└─┘

ce2

──────────────────────────────────────────────

out2 ──────────────────────────────────────────────

Достаточно удобным является режим 2. На 0 канале реализуем подсчет импульсов декрементом, начиная с 12, а на 1 канале будем отсчитывать период равный 8. Для того чтобы каждый 12 импульс перезапускал 1 канал, нужно на CE1 подать OUT0.

2.4. Разработать схему, обеспечивающую цикл регенерации динамической памяти c периодом регенерации 8 мс после окончания очередного цикла регенерации, время регенерации 2 мс.

Текст программы:

┌───┬─────────────────────────┬───┬───┬───┬───┬──────────────────────────────┐

│ N%│ Команда │CE0│CE1│CE2│CLK│ Комментарии │

├───┼─────────────────────────┼───┼───┼───┼───┼──────────────────────────────┤

│000│mov al,00010100b │ 0 │ 0 │ 0 │ 1 │ │

│001│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│002│mov al,2 │ 0 │ 0 │ 0 │ 1 │ │

│003│out 40h,al │ 0 │ 0 │ 0 │ 1 │ │

│004│mov al,01010100b │ 0 │ 0 │ 0 │ 1 │ │

│005│out 43h,al │ 0 │ 0 │ 0 │ 1 │ │

│006│mov al,4 │ 0 │ 0 │ 0 │ 1 │ │

│007│out 41h,al │ 0 │ 0 │ 0 │ 1 │ │

│008│mov al,0 │ 1 │ 1 │ 0 │ 1 │ │

└───┴─────────────────────────┴───┴───┴───┴───┴──────────────────────────────┘

Схема подключения таймера:

MУ MA МD ┌───┬───┬───┬───┐

║ ║ ║ │CE0│CE1│CE2│CLK│

║ ║ ╠══════════╗ ┌────┬──────┬────┐ └─┬─┴─┬─┴─┬─┴─┬─┘

║ ║ ║ ╟──┤z<->│ │ │ │ │ │ │

║ ║ ║ ╟──┤ D0 │ СТ │ CE0├──────┘ │ │ │

║ ║ ║ ╟──┤ D1 │ │CLK0├──────────│───│───*

║ ║ ║ ╟──┤ D2 │ │ │ │ │ │

║ ║ ║ ╟──┤ D3 │ ВИ54 │OUT0├──────┐ │ │ │

║ ║ ║ ┌───┐ ╟──┤ D4 │ ├────┤ │ │ │ │

║ ║ ║ 6 │ С │ ╟──┤ D5 │ │ CE1├──────│───┘ │ │

║ ╟───║─/─┤ В o┐ ╟──┤ D6 │ │CLK1├──────┘ │ │

║ ║ ║ │ А ││ ╟──┤ D7 │ │ │ │ │

║ ║ ║ └───┘│ ├────┤ │OUT1│ │ │

║ ║───║────────┼────┤ A0 │ ├────┤ │ │

║ ║───║────────┼────┤ A1 │ │ CE2├──────────────┘ │

║ ║ ║ │ ├────┤ │CLK2├──────────────────┘

║ ║ ║ └────o CS │ │ │

║───║───║─────────────o RD │ │OUT2│

║───║───║─────────────o WR │ │ │

║ ║ ║ └────┴──────┴────┘

Временные диаграммы:

clk ─┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐┌┐

└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└┘└

14 02 54 04

rd/wr──┐ ┌─┐ ┌─┐ ┌─┐ ┌───────────────────────────────────

└─┘ └─┘ └─┘ └─┘

ce0 ┌───────────────────────────────────

────────────────┘

2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1

out0 ───────────────────┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐

└─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └

ce1 ┌───────────────────────────────────

────────────────┘

4 4 3 3 2 2 1 1 4 4 3 3 2 2 1 1 4

out1 ───────────────────────────────┐ ┌───────────┐ ┌

└───┘ └───┘

ce2

────────────────────────────────────────────────────

out2 ────────────────────────────────────────────────────

Числа 8 и 2 кратны, значит, на 0 канале реализуем счет от 2 в режиме 2 (с перезапуском). 1 канал должен считать с 4 в режиме 2 (с перезапуском), каждый раз при перезапуске канала 0. Реализуется это подачей OUT0 на CLK1.

Выводы

В ходе работы рассмотрен алгоритм работы микросхемы-таймера К580ВИ54.

Установлено, что у микросхемы 3 независимых канала, которые могут работать в 6 режимах. Вывод по каждому из режимов представлен в соответствующих разделах отчета.

Для получения навыка работы с микросхемой и закрепления результата исследования режимов были разработаны схемы: с автоматическим перезапуском счета в режиме 1, перезапуска генератора импульсов, часов, обеспечения регенерации памяти.

Благодаря различным режимам работы и наличию 3 независимых каналов микросхема просто и удобно применить в микропроцессорных системах для решения различных задач.