Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Обзоры по типам > Микроконтроллеры > AVR

реклама

 




Мероприятия:




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

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

Схема обнаружения подачи питания генерирует сигнал сброса при подаче питания (POR), когда определяется нарастание напряжения питания МК (VCC) в диапазоне VPOSR. Генерация сигнала сброса прекращается, когда останавливается рост напряжения VCC и уровень VCC достигает порогового значения VPOT.

В случае снижения напряжения VCC, сброс при подаче питания будет вновь инициирован, когда напряжение питания достигнет уровня Vpot. Величина Vpot меньше минимального рабочего напряжения МК и не имеет предназначения гарантирования безопасной работы МК. Для целей обеспечения безопасной работы МК предусмотрен другой функциональный блок - супервизор питания (BOD), который после включения в работу отслеживает снижение напряжения VCC ниже минимального рабочего напряжения.

После подачи питания устанавливается только один флаг - флаг сброса при подаче питания. Флаг сброса супервизором питания не устанавливается, даже если блок BOD активен.

Сброс при подаче питания (POR)
Рисунок 9.2. Сброс при подаче питания (POR)

Возрастание VCC в диапазоне VPOSR
Рисунок 9.3. Возрастание VCC в диапазоне VPOSR

Значения уровней VPOT при нарастании и спаде VCC, а также значение VPOSR можно найти в документации на МК.

Обратите внимание, что схема обнаружения подачи питания не рассчитана на определение падений напряжения внутри диапазона VCC. Для обнаружения спада напряжения VCC необходимо использовать супервизор питания, даже если уровень VCC снижается менее VPOT.

9.4.2. Супервизор питания

Схема супервизора питания сравнивает уровень напряжения VCC с пороговым уровнем VBOT. После разрешения работы супервизора питания он сгенерирует сигнал сброса, если уровень VCC в течение времени не менее tBOD окажется меньше порогового уровня. Сброс будет сохраняться в активном состоянии до тех пор, пока напряжение VCC не станет выше порогового уровня. Пороговый уровень имеет гистерезис, что исключает ложные срабатывания.

Сброс супервизором питания
Рисунок 9.4. Сброс супервизором питания

Величину tBOD необходимо уточнить в документации на МК. Пороговый уровень зависит от настройки программируемых fuse-бит BODLEVEL (см. таблицу 9.2).

Таблица 9.2. Настройка программируемых fuse-бит BODLEVEL

BODLEVEL[2:0](1) VBOT
111 1.6В
110 1.8В
101 2.0В
100 2.2В
011 2.4В
010 2.7В
001 2.9В
000 3.2В

Прим. :

  1. Здесь приведены только номинальные значения. Типичные, максимальные и минимальные значения необходимо уточнить в документации.

Супервизор питания поддерживает 3 режима работы:

  • неактивный режим: в этом режиме уровень VCC не контролируется. Он рекомендуется для использования в применениях со стабильным напряжением питания.
  • активный режим: в этом режиме уровень VCC контролируется непрерывно и, в случае его снижения ниже уровня VBOT в течение времени не менее tBOD, генерируется сброс супервизора питания.
  • режим периодических выборок: в этом режиме супервизор питания выполняет периодические выборки уровня VCC с интервалом, который равен периоду сигналу на выходе ULP-генератора частоты 1 кГц. Между выполнениями выборок супервизор питания отключен. По сравнению с активным режимом, использование данного режима позволяет снизить энергопотребление, однако это достигается в ущерб быстродействия, т.к. имевшие место снижения уровня VCC между 2 нарастающими фронтами импульсов ULP-генератора частоты 1 кГц н
ельзя будет обнаружить.

После срабатывания в этом режиме, схема супервизора питания переходит в активный режим, чем гарантируется удержание МК в сброшенном состоянии до тех пор, пока уровень VCC не станет выше VBOT.

От настроек fuse-бит BODACT зависит, в каком режиме будет работать супервизор питания, когда МК находится в активном режиме или режиме IDLE. Аналогичным образом, fuse-биты BODDS задают режим работы супервизора питания в прочих экономичных режимах работы МК, кроме IDLE.

Таблица 9.3. Настройка Fuse-бит, управляющих режимом работы супервизора питания

BODACT[1:0]/ BODDS[1:0] Режим
00 (резерв)
01 периодических выборок
10 активный
11 неактивный

9.4.3. Сброс от детектора просадки питания

Схема детектора просадки питания (SD) позволяет обнаружить кратковременное снижение напряжения VCC. После разрешения работы, эта схема непрерывно контролирует уровень VCC и генерирует сброс при обнаружении кратковременного снижения уровня VCC. Условием срабатывания схемы является существенное снижение уровня VCC в течение времени не менее tSD. Величины VDROP и tSD взаимосвязаны. Чем больше просадка напряжения, тем меньшей длительности оно может быть, чтобы сработала схема и, наоборот. Это означает, что сброс может быть инициирован, даже если в результате просадки напряжения VCC его уровень остался в пределах рабочего диапазона МК.

Сброс при обнаружении кратковременной просадки питания
Рисунок 9.5. Сброс при обнаружении кратковременной просадки питания

Прим.: детектор просадки питания автоматически включается в работу во время программирования, независимо от настроек его fuse-бита.

Значения VDROP и tSD необходимо уточнить в документации на МК. Активностью детектора просадки питания управляет fuse-бит DVSDON.

Таблица 9.4. Настройка Fuse-бита, управляющего активностью детектора просадки питания

DVSDON Режим
1 неактивный
0 активный

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

Схема внешнего сброса подключена к внешнему выводу RESET. Внешний сброс инициируется при условии снижения напряжения на выводе RESET ниже порогового значения VRST в течение интервала времени не менее tEXT. Сброс будет оставаться в активном состоянии, до тех пор, пока на выводе сброса будет присутствовать низкий уровень. На выводе сброса предусмотрены подтягивающий к плюсу питания резистор и фильтр для подавления шума.

Характеристики внешнего сброса
Рисунок 9.6. Характеристики внешнего сброса

Значение параметров VRST и tEXT, а также величину подтягивающего резистора уточните в документации на МК.

9.4.5. Сброс сторожевым таймером

Сторожевой таймер (WDT) - системный функциональный блок, предназначенный для контроля корректности выполнения программы. Сброс сторожевым таймером инициируется в том случае, если в течение запрограммированного интервала времени (период срабатывания) не выполняется команда сброса сторожевого таймера. Длительность сигнала сброса сторожевым таймером равна 1-2 циклам синхронизации внутреннего RC-генератора частоты 2 МГц.

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

Более детальная информация по конфигурации и использованию сторожевого таймера приведена в разделе 11 "Сторожевой таймер WDT".

9.4.6. Программный сброс

Функция программного сброса позволяет инициировать системный сброс из программы, путем записи в бит программного сброса регистра управления сбросом. После выполнения записи этого бита, сброс будет выполнен через 1-2 цикла синхронизации ЦПУ. С момента инициации программного сброса и до его выполнения ни одна из инструкций не может быть выполнена.

Программный сброс
Рисунок 9.8. Программный сброс

9.4.7. Сброс через интерфейс программирования и отладки

Функция сброса через интерфейс программирования и отладки может использоваться только после подключения к МК в внешнего программатора или отладчика.



<-- Предыдущая страница Оглавление Следующая страница -->





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники