После прекращения действия всех источников сброса вступает в силу счетчик задержки, продлевающий внутренний сброс. Данная последовательность требуется для гарантирования запуска микроконтроллера при достижении напряжением питания стабильного уровня. Длительность задержки при старте определяется конфигурационными битами CKSEL. Различные варианты установок длительностей задержек представлены в разделе “Источники синхронизации”.

Источники сброса

ATmega128 имеет пять источников сброса:

*  Сброс при подаче питания. Микроконтроллер переходит в состояние сброса, если напряжение питания ниже порога сброса при подаче питания (VPOT).

*  Внешний сброс. Микроконтроллер переходит в состояние сброса, если на вывод RESET подать низкий логический уровень на время дольше, чем минимальная длительность импульса сброса.

*  Сброс по сторожевому таймеру. Если разрешена работа сторожевого таймера и истек период его срабатывания, то микроконтроллер сбрасывается.

*  Сброс при снижении питания. Микроконтроллер сбрасывается, если напряжение питания VCC становится ниже порогового значения (VBOT) и разрешена работа схемы контроля питания BOD.

*  Сброс через интерфейс JTAG. Микроконтроллер находится в состоянии сброса до тех пор, пока в регистре сброса записана лог. 1 в одной из сканируемых цепей JTAG-системы. См. раздел “Граничное сканирование IEEE 1149.1 (JTAG)”.


Рисунок 22 – Логика сброса

Таблица 19 – Характеристики сброса

Обозн.

Параметр

Условие

Мин.

Тип.

Макс.

Единица измерения

VPOT

Пороговое напряжение сброса при повышении питания

1.4

2.3

В

Пороговое напряжение сброса при снижении питания (1)

1.3

2.3

В

VRST

Пороговый уровень сброса на выводе RESET

0.2 Vcc

0.85 Vcc

В

tRST

Минимальная длительность импульса сброса на выводе RESET

50

нс

VBOT

Порог напряжения сброса схемы контроля питания BOD(2)

BODLEVEL = 1

2.4

2.6

2.9

В

BODLEVEL = 0

3.7

4.0

4.5

В

tBOD

Минимальная длительность снижения напряжения для срабатывания схемы контроля питания

BODLEVEL = 1

2

мкс

BODLEVEL = 0

2

мкс

VHYST

Ширина петли гистерезиса схемы контроля питания

50

мВ

Примечания:

Сброс при подаче питания не будет работать, если напряжение питания ниже VPOT. У некоторых микроконтроллеров VBOT может быть ниже минимального рабочего напряжения. Данные микроконтроллеры на стадии производства испытываются при VCC = VBOT. Этим гарантируется то, что сброс микроконтроллера будет выполнен раньше, чем произойдет снижение питания микроконтроллера на недопустимый для его корректной работы уровень. Испытание ATmega128L выполнено при BODLEVEL=1, а ATmega128 при BODLEVEL=0. Установка BODLEVEL=1 не применима для ATmega128.

Сброс при подаче питания

НЕ нашли? Не то? Что вы ищете?

Импульс сброса при подаче питания (POR) генерируется встроенной схемой. Пороговый уровень сброса приведен в таблице 19. POR инициируется всякий раз, когда VCC ниже порогового уровня. Схема POR может использоваться для запуска микроконтроллера, а также для выявления нарушения режима питания.

Функцией схемы сброса при подаче питания (POR) является удержание микроконтроллера в состоянии сброса в течение определенного времени после того, как напряжение достигло уровня сброса при подаче питания. Если напряжение питания снизится ниже определенного уровня, то микроконтроллер снова сбросится без всяких задержек.

Рисунок 23 – Запуск микроконтроллера (RESET соединен с VCC).


Рисунок 24 – Запуск микроконтроллера (RESET управляется внешне).

Внешний сброс

Внешний сброс генерируется, если на вход RESET подать низкий уровень. Если подать импульс сброса длительностью более tRST (см. табл. 19), то будет генерирован сброс, даже если синхронизация не запущена. При подаче импульса сброса длительностью менее tRST сброс не гарантируется. Если сигнал на выводе RESET достигает порогового напряжения сброса VRST на его положительном фронте, то запускается счетчик задержки и микроконтроллер начнет работу только по истечении периода tTOUT.


Рисунок 25 – Внешний сброс микроконтроллера

Контроль напряжения питания

ATmega128 содержит встроенную схему контроля питания (BOD), которая выполняет сравнение уровня VCC с фиксированным пороговым значением. Порог срабатывания схемы BOD может выбираться с помощью конфигурационного бита BODLEVEL. Порог равен 2.7В, когда BODLEVEL незапрограммирован, или 4.0В, когда BODLEVEL запрограммирован. Для исключения автоколебательного режима схема BOD характеризуется гистерезисом. С учетом гистерезиса результирующие пороги срабатывания следующие: VBOT+ = VBOT + VHYST/2 и VBOT - = VBOT - VHYST/2.

Схема BOD может быть включена или отключена с помощью конфигурационного бита BODEN. Если разрешена работа BOD (BODEN запрограммирован) и уровень VCC снизился ниже порога срабатывания (VBOT - на рисунке 26), то схема BOD переводит микроконтроллер в состояние сброса. Когда VCC достигает значения выше порога срабатывания (VBOT+ на рисунке 26), то запускается счетчик задержки и микроконтроллер начнет работу по истечении времени tTOUT.

Схема BOD реагирует на снижение VCC, если напряжение остается меньшим порога срабатывания дольше чем период времени tBOD (см. табл. 19).


Рисунок 26 – Сброс микроконтроллера схемой контроля питания

Сторожевой таймер

По истечении периода переполнения сторожевого таймера генерируется короткий импульс сброса длительностью равной одному периоду системной синхронизации (1 CK). Падающим фронтом этого импульса запускается счетчик задержки tTOUT.


Рисунок 27 – Сброс сторожевым таймером

Регистр управления и статуса микроконтроллера – MCUCSR

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

Обратите внимание, что в режиме совместимости с ATmega103 доступны только биты EXTRF и PORF.

Разряд 4 – JTRF: Флаг индикации сброса через JTAG-интерфейс

Данный бит принимает единичное состояние, если сброс был вызван записью лог. 1 в регистр JTAG Reset JTAG-инструкцией AVR_RESET. Данный бит сбрасывается автоматически при подаче питания или путем непосредственной записи лог. 0 в данный флаг.

Разряд 3 – WDRF: Флаг индикации сброса сторожевым таймером

Данный бит устанавливается после сброса сторожевым таймером. Данный бит сбрасывается при подаче питания или путем записи лог. 0 в данный флаг.

Разряд 2 – BORF: Флаг индикации сброса схемой контроля напряжения питания

Данный флаг принимает единичное состояние, если схема контроля напряжения питания перевела микроконтроллер в состояние сброса. Данный бит сбрасывается при подаче питания и путем записи лог. 0 в данный флаг.

Разряд 1 – EXTRF: Флаг внешнего сброса

Данный бит устанавливается при возникновении внешнего сброса. Флаг сбрасывается при подаче питания или путем записи лог. 0 в данный флаг.

Разряд 0 – PORF: Флаг сброса при подаче питания

Данный флаг устанавливается, если сброс был инициирован подачей питания. Данный бит сбрасывается только путем записи лог. 0 в данный флаг.

Если флаги сброса необходимо использовать для определения причины сброса, то программист должен предусмотреть сброс значений флагов MCUCSR желательно сразу после опроса их значений. Если регистр очищается перед возникновением другого сброса, то источник данного сброса может быть найден среди флагов сброса.

Встроенный источник опорного напряжения

ATmega128 содержит встроенный источник опорного напряжения (ИОН). ИОН используется схемой контроля питания и может быть подключен ко входу аналогового компаратора или к АЦП. Опорное напряжение АЦП 2.56В генерируется встроенным ИОН.

Сигналы разрешения и длительность запуска ИОН

ИОН характеризуется задержкой при включении, которая может оказать негативное влияние, если не будет учтена. Длительность задержки приведена в таблице 20. Для оптимизации энергопотребления ИОН не всегда находится во включенном состоянии. ИОН остается во включенном состоянии в следующих случаях:

Когда разрешена работа схемы контроля питания BOD (запрограммирован конфигурационный бит BODEN). Если ИОН подключен ко входу аналогового компаратора (установлен бит ACBG в ACSR). Если разрешена работа АЦП.

Следовательно, когда работа BOD запрещена и установлен бит ACBG или разрешена работа АЦП, программист должен предусмотреть задержку на время запуска ИОН перед использованием выходных данных аналогового компаратора или АЦП. В целях снижения потребляемой мощности в режиме выключения (Power-down) программист должен избежать приведенных выше трех условий для гарантирования, что ИОН будет отключен после перевода микроконтроллера в режим выключения.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66