Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы_ОМПТ_Тайлан.docx
Скачиваний:
10
Добавлен:
17.09.2019
Размер:
107.3 Кб
Скачать

3. Режимы работы таймера мк51.

При работе в качестве таймера содержимое Т/С инкрементируется в каждом машинном цикле. При работе в качестве счетчика событий содержимое Т/С инкрементируется под воздействием перехода из 1 в 0 внешнего входного сигнала, подаваемого на входы Т0 (Р3.4) или Т1 (Р3.5). Для управления режимами работы Т/С и организации взаимодействия таймеров с системой прерывания используются регистры TMOD и TCON. С помощью битов М1 и М0 задаются четыре возможных режима работы Т/С0 и Т/С1.

M1M0=00 - 13-битовый счетчик. При его переходе из состояния «все единицы» в состояние «все нули» устанавливается флаг TF. Работа разрешена, когда TR=1 и либо GATE=0, либо INT=1.

M1M0=01 - 16-битовый счетчик. Так же как и предыдущий, только 16 битовый.

M1M0=10 - 8-бит с автоперезагрузкой. TL работает как 8-битовый автоперезагружаемый таймер. TH хранит значение, которое должно быть записано в TL каждый раз по его переполнению.

M1M0=11 - два 8-битовых счетчика. TL0 работает как 8-битвый Т/С и его режим определяется управляющими битами Т/С0. ТН0 работает только как 8-битовый таймер, управляющим битом TR1 и использующий флаг TF1. Работа Т/С1 постоянно разрешена в режимах 0,1,2 без использования прерываний.

4.Разработайте программу очистки (обнуления) n ячеек резидентной памяти данных мк51, начиная с пятидесятой.

mov R1,#50

mov R2,#N

m1: mov @R1,0

inc R1

DJNZ R2,m1

5. Что происходит в микропроцессорной системе при появлении запроса на прерывание программы? вектор прерывания, разрешение прерываний, приоритет прерываний.

При поступлении запроса на прерывание устанавливаются соответствующие флаги. Если эти прерывания индивидуально разрешены в регистре IE и в общем (EA), то программа выполнения перейдет по нужному вектору прерывания. Каждому прерыванию можно присвоить высший приоритет, устанавливая определенные биты.

Если прерывания разрешены и сформировался соответствующий флаг, система прерываний помещает в стек содержимое счетчика команд РС и загружает в счетчик команд адрес вектора подпрограммы обслуживания. По адресу вектора обычно располагается команда безусловной передачи управления к начальному адресу подпрограммы обслуживания прерывания. Подпрограмма обслуживания должна в случае необходимости начинаться командами записи в стек (PUSH) PSW, ACC, B, DPTR и заканчиваться командами восстановления их из стека (РОР). Подпрограммы обслуживания обязательно заканчиваются командой RETI, снимающей блокировку прерываний от других источников.

При использовании прерывании нужно не забывать о том, что после системного сброса указатель стека настроен на область первого банка регистров общего назначения. Содержимое стека можно модифицировать, например, MOV SP,#99.

6.Программная модель микроконтроллера мк51. Память программ, память данных, регистры специальных функций.

C точки зрения программиста микроконтроллер представляет набор регистров и ячеек памяти с конкретными адресами и обозначениями. Резидентную память данных (РПД) составляют четыре банка регистров общего назначения, выбор которых осуществляется установкой и сбросом битов RS1 и RS0 в PSW, 128 программно управляемых флагов пользователя (регистры с адресами 20H-2FH) и регистры с адресами 30H-7FH, которые можно использовать как ОЗУ пользователя или стек. Стек - специально организованная область ОЗУ, предназначенная для временного хранения данных или адресов. Число, записанное в стек последним, извлекается из него первым. Указатель стека SP хранит адрес последней ячейки стека, в которой записана информация. К адресному пространству РПД непосредственно примыкают адреса регистров специальных функций РСФ.

К полному адресному пространству ячеек внешнего ОЗУ данных обращение производится косвенно через 16-битовый регистр-указатель данных DPTR. Для чтения данных из таблиц, зашитых в памяти программ, используется косвенно-регистровая адресация. Любой байт из таблицы может быть выбран по адресу, определяемому суммой содержимого DPTR или РС (программный счетчик) и содержимого аккумулятора. В памяти программ есть пять адресов, которым соответствуют векторы прерываний от пяти источников.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]