F60-67 (1041605), страница 29
Текст из файла (страница 29)
Когда такое поведение нежелательно,сторожевой таймер может быть отключен программно до входа в режим ожидания, если первоначально он былнастроен на разрешение такой операции. Это обеспечивает возможность дополнительного уменьшенияэнергопотребления, т.к. система остается в режиме ожидания неопределенно долгое время, ожидая внешнегосигнала пробуждения системы. Подробная информация об использовании и настройке сторожевого таймераприведена в разделе 14.7.Приме6чание: За любой командой, которая устанавливает бит выбора режима ожидания (PCON.0)должна сразу же следовать команда, состоящая из двух или более байт.
Например:// на ‘C’:PCON | = 0x01;PCON = PCON;// Установка бита выбора режима ожидания (PCON.0)// Холостая команда длительностью 3 такта; на ассемблере:ORL PCON, #01hMOV PCON, PCON; Установка бита выбора режима ожидания (PCON.0); Холостая команда длительностью 3 тактаЕсли команда, которая следует за командой установки бита выбора режима ожидания (PCON.0),является однобайтной командой и прерывание происходит во время выполнения команды, котораяустанавливает бит PCON.0, то МК может не выйти из режима ожидания, когда в будущем произойдетпрерывание.Ред.
1.2160C8051F060/1/2/3/4/5/6/713.4.2. Режим остановкиУстановка в 1 бита выбора режима остановки (PCON.1) заставит CIP-51 перейти в режим остановкисразу же после завершения команды, которая устанавливает этот бит. В режиме остановки процессорное ядро итактовые генераторы останавливаются, а значит все цифровые модули выключаются. Каждый аналоговыйпериферийный модуль должен быть отключен индивидуально до перехода в режим остановки. Выйти изрежима остановки можно только по внутреннему или внешнему сигналу сброса. При сбросе CIP-51 отработаетпоследовательность действий, обычную для сброса, и начнет выполнение программы с адреса 0x0000.Если включен детектор исчезновения тактовых импульсов (Missing Clock Detector – MCD), то онвызовет внутренний сброс и тем самым выведет МК из режима остановки.
Детектор исчезновения тактовыхимпульсов следует отключить, если необходимо перевести МК в режим остановки на время, большее временизадержки MCD (100 мкс).Рисунок 13.25. PCON: Регистр управления электропитаниемR/WБит 7R/W-R/W-R/W-R/W-R/W-R/WSTOPR/WIDLEБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес: 0x87SFR страница: ВсеБит 7-2: Зарезервированы.Бит 1: STOP: Выбор режима остановки.Установка в 1 этого бита переведет CIP-51 в режим остановки. Этот бит всегда будет читаться как ‘0’.1: Переход в режим пониженного энергопотребления.
(Отключение внутреннего тактового генератора).Бит 0: IDLE: Выбор режима ожидания.Установка в 1 этого бита переведет CIP-51 в режим ожидания. Этот бит всегда будет читаться как ‘0’.1: Переход в режим ожидания. (Отключение тактирования процессорного ядра, однако тактированиетаймеров, модулей прерываний и всех периферийных модулей остается включенным).См. примечание в разделе 13.4.1.161Ред. 1.2C8051F060/1/2/3/4/5/6/7ПримечанияРед. 1.2162C8051F060/1/2/3/4/5/6/714. ИСТОЧНИКИ СБРОСАСхема сброса позволяет легко перевести МК в предопределенное по умолчанию состояние. Припереходе к этому состоянию сброса происходит следующее:- CIP-51 останавливает выполнение программы;- регистры SFR инициализируются значениями по умолчанию;- выводы внешних портов устанавливаются в известное состояние;- прерывания и таймеры запрещаются.Все регистры SFR принимают значения по умолчанию.
В подробном описании каждого регистра SFRприведено значение, загружаемое в этот регистр при сбросе. Содержимое внутренней памяти данных неизменяется при сбросе и ранее сохраненные данные остаются неизменными. Однако, т.к. регистр указателястека сбрасывается, стек фактически теряется, хотя данные в нем не изменяются.Защелки портов ввода/вывода сбрасываются в состояние 0xFF (все логические единицы), активируявнутренние слаботоковые подтяжки, которые удерживают на внешних портах ввода/вывода высокийлогический уровень. Напряжение высокого уровня появляется на внешних портах ввода/вывода не сразу, а втечение четырех системных тактовых циклов после перехода в состояние сброса.
Это позволяет уменьшитьэнергопотребление, когда МК удерживается в состоянии сброса. Если источником сброса является схемаслежения за напряжением питания, то на выводе /RST удерживается низкий логический уровень до истечениятаймаута сброса по питанию.При выходе из состояния сброса МК использует внутренний тактовый генератор, работающий наминимальной тактовой частоте. Программный счетчик (РС) сбрасывается и выполнение программы начинаетсяс адреса 0x0000. Информация о выборе и настройке источников системного тактового сигнала приведена вразделе 15. Сторожевой таймер включен и настроен на максимальный таймаут.
(Подробное описаниесторожевого таймера приведено в разделе 14.7).Семь источников могут перевести МК в состояние сброса: включение/исчезновение питания, внешнийвывод /RST, внешний сигнал CNVSTR2, программный сброс, компаратор 0, детектор исчезновениятактирования, сторожевой таймер. Каждый источник сброса описан ниже.Рисунок 14.1. Структурная схема источников сбросаVDDПорт ввода/выводаМатрицаCNVSTR2Схема слеженияза питанием(CNVSTR2разрешение сброса)Компаратор 0CP0+(монтажное «ИЛИ»)(CP0разрешение сброса)ДетекторисчезновениятактированияТактовыеимпульсыГенераторPREWDTStrobeENWDTEnableMCDEnableВнутреннийтактовыйгенераторКаналсбросаWDTENXTAL2ВыборгенератораCIP-51процессорноеядроПрограммныйсбросСистемныйсбросБлок обработкипрерываний163/RST(монтажное «ИЛИ»)Разрешение сброса отсхемы слежения занапряжением питания+-CP0-XTAL1Таймаутсброса попитанию+-Ред.
1.2C8051F060/1/2/3/4/5/6/714.1. Сброс при включении питания (Power-on Reset - POR)МК C8051F060/1/2/3/4/5/6/7 содержат схему слежения за напряжением питания, которая удерживаетМК в состоянии сброса, пока напряжение питания VDD не превысит в процессе включения уровень VRST. (См.временную диаграмму на рис.14.2 и электрические характеристики в табл.14.1). В течение таймаута схемыслежения за напряжением питания (100 мс) на выводе /RST удерживается низкий логический уровень, чтопозволяет напряжению питания стабилизироваться.
Для разрешения/запрещения сброса от схемы слежения занапряжением питания используется внешний вывод MOVEN.При завершении сброса типа POR флаг PORSF (RSTSRC.1) аппаратно устанавливается в 1. Состояниевсех других флагов сброса в регистре RSTSRC являются неопределенным. Флаг PORSF сбрасывается в 0 присбросе от любого другого источника. Т.к. при сбросе любого типа выполнение программы начинается с одногои того же адреса (0x0000), программа может опросить флаг PORSF, чтобы определить, было ли включениепитания причиной сброса.
Содержимое внутренней памяти данных после сброса типа POR следует считатьнеопределенным.вольтыРисунок 14.2. Временная диаграмма работы схемы слежения за напряжениемпитания2.70VRST2.55VDD2.01.0tЛог. 1/RST100мс100мсЛог. 0Сброс при включениипитания(Power-On Reset)Сброс от схемы слеженияза напряжением питания(VDD Monitor Reset)14.2. Сброс при исчезновении питания (Power-fail Reset – PFR)Когда при выключении или сбое питания напряжение питания VDD опускается ниже уровня VRST,схема слежения за напряжением питания установит на выводе /RST низкий логический уровень и переведетCIP-51 в состояние сброса. Когда VDD превысит уровень VRST, CIP-51 выйдет из состояния сброса точно также, как при сбросе типа POR (см. рис.14.2).
Следует иметь ввиду, что, хотя содержимое внутренней памятиданных и не изменяется при сбросе типа PFR, невозможно определить, опускалось ли напряжение VDD нижеуровня, необходимого для сохранения данных. Если флаг PORSF установлен в 1, данные нельзя более считатьдействительными.14.3. Внешний сбросВнешний вывод /RST позволяет внешней схеме перевести МК в состояние сброса. Подача на вывод/RST сигнала с низким активным уровнем заставит МК перейти в состояние сброса. Несмотря на наличиевнутренних слаботоковых подтяжек, желательно обеспечить на выводе /RST внешние подтягивающие и/илиразвязывающие цепи, чтобы предотвратить ложные сбросы, вызванные шумом.