Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Нижегородский государственный технический университет им. Р. Е. Алексеева Институт радиоэлектроники и информационных технологий Кафедра «Вычислительные системы и технологии» Отчет по лабораторной работе № 3 По дисциплине «Интерфейсы периферийных устройств» Выполнили: ст. гр. 10-В-1 Веселитский П. А. Нефедов Е. Д. Проверил: Киселев Ю. Н. Нижний Новгород, 2013 Цель работы Изучить функциональные возможности трехканального программируемого устройства КР580ВИ53, логику его работы и способы подключения к системной магистрали. Задание Разработать аппаратные средства и ПО для формирования с помощью первого канала импульсного сигнала частотой 10 КГц, деленного затем вторым каналом до 1 КГц и выработкой третьим каналом сигнала прерывания, длительностью 15 мкс. Схема Микросхема КР580ВИ53 МС КР580ВИ53 – это трехканальный программируемый таймер, предназначенный для организации работы микропроцессорных систем в режиме реального времени. Микросхема формирует сигналы с различными временными параметрами. Программируемый таймер реализован в виде трех независимых 16-разрядных каналов с общей схемой управления. Каждый канал может работать в одном из шести режимов. Принцип работы Для доступа к таймеру использована адресация с использованием портов: 2 Порты с 0 по 3 обеспечивают доступ непосредственно к регистрам трех каналов и регистру управляющего слова Порты с 4 по 6 управляют запуском счета на каждом из каналов Для первого канала выбран 2 режим работы, так как необходима генерация импульсов частотой 10 КГц. Для этого в счетчик помещено значение 222, деля таким образом синхросигнал от процессора 2,222 МГц в 222 раза. Для второго канала также выбран второй режим работы, потому что он используется в качестве делителя частоты. Входной сигнал 10 КГц делится на 10, давая на выходе 1 КГц, который идет на вход третьего канала. Третий канал используется в режиме 1 как ждущий мультивибратор, формирующий сигнал INT процессору. Период синхросигнала 450 мкс, поэтому, для получения импульса INT длительностью 15 мкс его необходимо умножить на 33. Программирование каналов производится индивидуально, путем записи в регистр режима соответствующих управляющих слов, а в счетчики – необходимого значения. Управляющие слова и значения счетчиков 0 канал – генератор импульсов Управляющее слово: 0001 0100 00 – канал 0 01 – только младший байт 010 – режим 2 0 – двоичный код Счетчик: 0xDE = 222 1 канал – генератор импульсов Управляющее слово: 01010100 01 – канал 1 01 – только младший байт 010 – режим 2 0 – двоичный код Счетчик: 0x0A = 10 2 канал – ждущий мультивибратор Управляющее слово: 10010100 10 – канал 2 01 – только младший байт 010 – режим 2 0 – двоичный код Счетчик: 0x21 = 33 3 Программная поддержка работы таймера lxi sp,0300h mvi a,00010100b out 03h ;режим генератора импульсов на 0 канале ;порт для управляющих слов ; частота генератора процессора - 2,222 МГц ; отсюда надо делить ее на 222, чтобы получить 10 КГц mvi a,0DEh out 00h ; DEh = 222 ; порт 0 счетчика out 04h ; порт, запускающий 0 счетчик mvi a,01010100b out 03h ; режим генератора импульсов на 1 канале ; делим входные 10 КГц на 10, получая 1 КГц mvi a,0Ah out 01h ; 0Ah = 10 out 05h ; порт, запускающий 1 счетчик mvi a,10010010b out 03h ; режим ждущего мультивибратора на 2 канале ; период генератора процессора - 450 нс ; чтобы получить 15 мкс, умножим ее на 33 mvi a,21h out 02h ; 21h = 33 Временные диаграммы Период импульса 100 мкс соответствует частоте 10 КГц. 4 Период импульса 1 мс соответствует частоте 1 КГц. Длительность импульса INT 15 мкс. Выводы В процессе выполнения работы была изучена работа программируемого таймера КР580ВИ53. Было рассмотрено два режима работы из шести возможных. В разработанной схеме был организован генератор и запрос прерывания к микропроцессору. 5