- •Вариант 1
- •1. Идентификаторы типа данных передаваемые через порт p0. Данный ответ совсем не понятен, гадайте сами, что авторы имели ввиду
- •2. Механизм прерываний. Прерывания по уровню (организация, обработка, применение).
- •3. Таймеры. Т0 как таймер.
- •4. Режимы работы, orl pcon,#02h
- •Вариант 5
- •2. Механизм прерываний. Способы уменьшения числа прерываний при обмене
- •3. Таймер т2 как генератор сигналов
- •4. Режимы работы. Способы выода из режима пониженного энергопотребления.
- •Билет 6
- •Вариант 7
- •1 Порты Устройство портов
- •2 Механизм прерываний. Как можно увеличить число внешних прерываний за счет таймера то?
- •3 Таймеры. Сторожевой таймер (аппаратурное решение).
- •4 Система команд. Как изменится состояние psw после команды orl a,#01h?
- •Билет 8
- •Вариант 9
- •1 Порты. Какое состояние выводов имеет порт ро микроконтроллера i80c5l по включению питания?
- •2 Механизм прерываний. Как можно увеличить число внешних прерываний за счет таймера т2?
- •3 Таймеры. То как измеритель длительности импульса
- •4 Система команд. Как изменится состояние асс после команды xrl a,#01h?
- •Билет 10
- •Билет 11
- •Билет 12
- •Вариант 14
- •Вариант 15
- •Вариант 16
- •4.Порты. Откуда поступает старший байт адреса на выводы порта р2 при выполнении команды movx @r0,a?
- •Вариант 17
- •Режим захвата.
- •Режим 16-разрядного программируемого таймера.
- •Режим скоростного вывода.
- •Вариант18
- •4.Режимы работы. Once
- •Вариант19
- •Билет 20
- •Вариант 2i
- •1. Порты. Напишите программу формирования одиночного импульса на выводе p1.0
- •Вариант 22
- •Билет 31
2 Механизм прерываний. Как можно увеличить число внешних прерываний за счет таймера то?
Прерывания от таймеров/счетчиков вызываются установкой флагов TF0 и TF1 регистра TCON, которые устанавливаются при переполнении соответствующих регистров таймеров/счетчиков (во все разряды T1 записываются единицы) (за исключением режима 3). Далее содержимое счётчика будет увеличено на 1 в том случае, если в предыдущем цикле был считан входной сигнал высокого уровня, а в следующем – сигнал низкого уровня (переход из "1" в "0" – прерывание по фронту), после чего будет отправлен запрос на прерывание. Очистка флагов TF0 и TF1 производится внутренней аппаратурой МК при переходе к подпрограмме обслуживания прерывания.
3 Таймеры. Сторожевой таймер (аппаратурное решение).
Сторожевой таймер (WDT):
Все микроконтроллеры семейства MCS-96 имеют сторожевой таймер. По прошествии определенного интервала времени он переводит микроконтроллер в состояние сброса. Работающая программа должна предотвращать сброс микроконтроллера, сбрасывая в нулевое состояние WDT. При сбое сторожевой таймер не сбрасывается, и при переполнении микроконтроллер сбрасывается, что предотвращает опасные ситуации в системе управления. Некоторые микроконтроллеры могут обнаруживать падение частоты генератора тактовых импульсов (OFD). При снижении частоты ниже определенного уровня OFD сбрасывает микроконтроллер. Это предотвращает появление опасных комбинаций сигналов на выходах микроконтроллера, которые могут возникнуть при остановке генератора тактовых импульсов.
(аппаратное решение)Микроконтроллер содержит аппаратный сторожевой таймер. Если работа WDT разрешена, он через заданный в регистре WMCON временной промежуток (от 16 до 2048 мс) сбрасывает микроконтроллер. Избежать сброса можно, если 0 содержимое счетчика сторожевого таймера. Обычно включают в цикл программы команды, периодически обнуляющие счетчик таймера. "Зависание" программы останавливает основной цикл и через заданный промежуток времени микроконтроллер «сбрасывается». Сторожевой таймер выключается после сброса и в режиме Power Down. Запускается он установкой в 1 бита WDTEN регистра управления WDT, после чего программа должна его сбрасывать, записывая 1 в WDTRST. WDT имеет низший приоритет, запускается программно, используется в системах где есть электрические помехи или сбои по питанию. В режиме сторожевого таймера может работать только четвертый модуль PCA. Сигнал сброса срабатывает, когда происходит совпадение значения РСА таймера-счетчика со значением регистров ССАР4Н, CCAP4L (рис.). Бит WDTE в регистре CMOD устанавливает этот режим. При этом четвертый модуль должен находиться в режиме программируемого таймера или скоростного вывода. Предотвратить сброс можно тремя способами:
- изменять значения ССАР4Н, CCAP4L, что бы оно не совпало с РСА таймером-счетчиком;
- изменять регистры СН, CL РСА таймера-счетчика, чтобы они не совпали с ССАР4Н, GCAP4L;
- выключить охранный таймер сбросом WDTE перед совпадением и затем включить его.
Третий способ трудно реализовать. Второй способ не рекомендуется если таймер РСА используется другим модулем.