Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория микропроцессорных систем АТ_Методическое...docx
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
3.72 Mб
Скачать

Характеристика периферийных блоков в составе мк51

В вычислительных системах, ориентированных на управление, необходима реализация таких функций:

- управление в режиме реального времени;

- реализация подсчета событий (количество переходов уровня сигнала);

- измерение продолжительности входных импульсов или интервалов между ними;

- связь с другими системами;

- точное управление внешними асинхронными событиями.

Рассматриваемый МК51 обеспечивает выполнение этих функций при реализации контроллера на одном кристалле БИС благодаря тому, что в состав МК входят так называемые блоки периферийных функций:

- таймеры-счетчики;

- последовательный порт, или устройство асинхронного приема-передачи (УАПП);

- система обработки прерываний.

Надо отметить, что измерение или задание интервалов времени реализуется как подсчет количества импульсов с постоянным малым периодом следования, которые вместились в заданный временной интервал. В данном случае подсчитываются импульсы от внутреннего ГТИ МК51. Таймер-счетчик также может быть применен для подсчета количества внешних асинхронных импульсов.

Последовательный порт (УАПП) обычно используют для подключения к МК периферийного оборудования, которое требует последовательной связи (модем, радиотехнические устройства, системы связи с другими МК или компьютерами на большом расстоянии - системы компьютерных сетей). Главное назначение УАПП - преобразование параллельной информации, которая циркулирует внутри МК, в последовательную информацию на специальном внешнем выводе МК и наоборот.

Особенность работы блоков периферийных функций состоит в том, что они выполняют свои функции одновременно с процессором, тем самым высвобождая процессор от определенных действий, чем повышают скорость и эффективность реализации функций управления оборудованием. Выполняя команды программы, процессор осуществляет настройку периферийных блоков и их запуск. При завершении очередного цикла своей работы периферийные блоки информируют процессор об этом факте посредством сигналов прерываний. Данные сигналы анализируются системой обработки прерываний, которая для внешних сигналов прерываний является блоком периферийных функций, а для сигналов от таймеров и УАПП - промежуточным звеном обработки и передачи в процессор. Опрос сигналов и флагов прерываний, их анализ и переход на процедуру обработки конкретного прерывания осуществляются автоматически, а действия, которые будут выполняться по тому ли другому сигналу (флагу), зависят от команд конкретной процедуры. Взаимодействие процессора и блоков периферийных функций иллюстрируется схемой на рис.13.5, на рис.25 в комплекте или рис. 6.1 в пособии.

Рис. 13.5. Взаимодействие процессора МК51 с блоками периферийных функций

Принципы реализации подсчета импульсов

На кристалле МК51 реализованы два 16-битовых таймера-счетчика событий, которые программно могут быть настроены на работу или в режиме таймера (реализация или измерение временных интервалов), или в режиме счетчика (подсчет количества внешних импульсов, которые поданы на вход Т0 или Т1). С точки зрения программиста, каждый таймер реализован как пара таймерных (счетных) регистров разрядностью 8 бит, на основе которых осуществляется подсчет. Таймерные регистры имеют символические имена: Таймер 0: ТН0, ТL0; Таймер 1: ТН1, ТL1.

При работе в режиме таймирования содержимое счетных регистров инкрементируется (увеличивается на единицу) один раз в каждом машинном цикле (при = 12 Мгц - каждую микросекунду). Фактически в этом режиме реализуется подсчет импульсов от внутреннего генератора.

При работе в режиме счетчика содержимое таймерных регистров инкрементируется под влиянием перехода "1"-"0" внешнего сигнала, который подается на вход Т0 или Т1 МК51. Опрос уровня сигнала на входе Т0 или Т1 осуществляется в любом МЦ в фазе S5P2. Содержимое счетчика будет увеличено на единицу, если в минувшем цикле была считана "1", а в текущем цикле - "0". Значение счетчика при этом увеличится на единицу в фазе S3P1 следующего за выявлением перепада МЦ. Таким образом, на распознание перепада и инкремент счетчика нужно 2 МЦ. Поэтому максимальная частота подсчета входных импульсов равняется 1/24 частоты резонатора: . При = 12 Мгц счетчик МК51 способный подсчитывать внешние события, которые происходят с частотой от 0 Гц до 500 кГц.

Для гарантированного прочтения входной сигнал должен удерживать значение "1" как минимум 1 МЦ (т.е. в течение 1 мкс).

В обоих режимах таймер-счетчик, по сути, подсчитывает импульсы, но источник этих импульсов является различным. В режиме таймирования подсчитываются импульсы внутреннего генератора, таким образом осуществляется заполнение заданного временного интервала импульсами генератора МК51. В режиме счетчика подсчитывается количество внешних импульсов.