Скачиваний:
59
Добавлен:
01.05.2014
Размер:
3.93 Mб
Скачать

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

11.2 Выбор источника тактовых импульсов для АЦП

Время получения одного бита результата определяется параметром TAD. Для 10-разрядного результата требуется как минимум 12TAD. Параметры тактового сигнала для АЦП определяются программно, TAD может принимать следующие значения:

2TOSC;

8TOSC;

32TOSC;

Внутренний RC генератор модуля АЦП (2-6мкс).

Для получения корректного результата преобразования необходимо выбрать источник тактового сигнала АЦП, обеспечивающий время TAD не менее 1.6 мкс.

В таблице 11-1 указано максимальное значение тактовой частоты микроконтроллера для каждого режима синхронизирующего сигнала АЦП.

Таблица 11-1 Максимальное значение FOSC удовлетворяющие требованию к TAD (для микроконтроллеров с нормальным диапазоном напряжения питания (F))

Выбор TAD

 

FOSC

Режим

 

ADCS1:ADCS0

Максимум

 

 

 

 

2TOSC

 

00

1.25МГц

8TOSC

 

01

5МГц

32TOSC

 

10

20МГц

RC(1,2,3)

 

11

Примечание 1

Примечания:

1. Типовое значение времени TAD RC генератора АЦП равно 4мкс, может варьироваться от 2мкс до 6мкс.

2.Когда тактовая частота микроконтроллера больше 1МГц, рекомендуется использовать RC генератор АЦП только для работы в SLEEP режиме.

3.Для микроконтроллеров с расширенным диапазоном напряжений питания (LF) данные параметры смотрите в разделе электрических характеристик.

11.3 Настройка аналоговых входов

Регистры ADCON1, TRISA и TRISE отвечают за настройку выводов АЦП. Если выводы микросхемы настраиваются как аналоговые входы, то при этом должны быть установлены соответствующие биты в регистре TRIS. Если соответствующий бит сброшен в '0', вывод микросхемы настроен как цифровой выход со значениями выходных напряжений VOH или VOL.

Модуль АЦП функционирует независимо от состояния битов CHS2:CHS0 и битов TRIS.

Примечания:

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

2.Значения напряжений, подаваемых на выводы, настроены как аналоговые входы, включая выводы (AN7:AN0), могут влиять на ток потребления входного буфера, который может выйти за пределы значений, оговоренных в технической спецификации.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

111

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

11.4 Аналого-цифровое преобразование

Сброс бита GO/-DONE в '0' во время преобразования приведет к его прекращению. При этом регистры результата (ADRESH:ADRESL) не изменят своего содержимого. После досрочного завершения преобразования необходимо обеспечить временную задержку 2TAD. Выдержав требуемую паузу, можно начать новое преобразования установкой бита GO/-DONE в '1'.

На рисунке 11-3 показана последовательность получения результата после установки бита GO/-DONE в '1'.

Примечание. Бит GO/-DONE и бит включения АЦП должны устанавливаться разными командами.

Рис. 11-3 Последовательность получения результата после установки бита GO/-DONE в '1'

11.4.1 Выравнивание результата преобразования

10-разрядный результат преобразования сохраняется в спаренном 16-разрядном регистре ADRESH:ADRESL. Запись результата преобразования может выполняться с правым или левым выравниванием, в зависимости от значения бита ADFM (см. рисунок 11-4). Не задействованные биты регистра ADRESH:ADRESL читаются как ‘0’. Если модуль АЦП выключен, то 8-разрядные регистры ADRESH и ADREL могут использоваться как регистры общего назначения.

Рис. 11-4 Выравнивание результата аналого-цифрового преобразования

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

112

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

11.5 Работа модуля АЦП в SLEEP режиме

Модуль АЦП может работать в SLEEP режиме микроконтроллера при условии, что источником импульсов преобразования АЦП будет внутренний RC генератор (ADCS1:ADCS0=11). При выборе RC генератора импульсов модуль АЦП сделает задержку в один машинный цикл перед началом преобразования. Это позволяет программе пользователя выполнить команду SLEEP, тем самым уменьшить “цифровой шум” во время преобразования. После завершения преобразования аппаратно сбрасывается бит GO/-DONE в '0', результат преобразования сохраняется в регистре ADRESH:ADRESL. Если разрешено прерывание от АЦП, то микроконтроллер выйдет из режима SLEEP. Если же прерывание было запрещено, то после преобразования модуль АЦП будет выключен, хотя бит ADON останется установленным.

Если был выбран другой источник тактовых импульсов АЦП (не внутренний RC генератор), то выполнение программой инструкции SLEEP прервет процесс преобразования и выключит модуль АЦП, оставив установленным бит ADON. Выключение модуля АЦП уменьшит ток потребления микроконтроллера.

Примечание. Для работы модуля АЦП в SLEEP режиме необходимо выбрать внутренний RC генератор (ADCS1:ADCS0=11), инструкция SLEEP должна быть выполнена сразу после команды, устанавливающей бит

GO/-DONE в '1'.

11.6 Эффект сброса

При сбросе микроконтроллера значения всех его регистров устанавливаются по умолчанию. Сброс выключает модуль АЦП, а также останавливает процесс преобразования, если он был начат. Все выводы, используемые модулем АЦП, настраиваются как аналоговые входы.

Регистры ADRESH, ADRESL после сброса POR будут содержать неизвестное значение, а после остальных видов сброса не изменят своего значения.

Таблица 11-2 Регистры и биты, связанные с работой модуля АЦП

Адрес

Имя

Бит 7

Бит 6

Бит 5

Бит 4

Бит 3

Бит 2

Бит 1

Бит 0

Сброс

Другие

POR, BOR

сбросы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0Bh,8Bh,

INTCON

GIE

PEIE

T0IE

INTE

RBIE

T0IF

INTF

 

RBIF

0000

000x

0000

000u

10Bh,18Bh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0Ch

PIR1

PSPIF*

ADIF

 

RCIF

TXIF

SSPIF

CCP1F

TMR2IF

 

TMR1IF

0000

0000

0000

0000

8Ch

PIE1

PSPIE*

ADIE

 

RCIE

TXIE

SSPIE

CCP1E

TMR2IE

 

TMR1IE

0000

0000

0000

0000

1Eh

ADRESH

Старший

байт результата преобразования

 

 

 

 

xxxx xxxx

uuuu uuuu

9Eh

ADRESL

Младший байт результата преобразования

 

 

 

 

xxxx xxxx

uuuu uuuu

1Fh

ADCON0

ADCS1

ADCS0

 

CHS2

CHS1

CHS0

GO/

-

 

ADON

0000 00-0

0000 00-0

 

-DONE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9Fh

ADCON1

ADFM

-

 

-

-

PCFG3

PCFG2

PCFG1

 

PCFG0

0--- 0000

0--- 0000

85h

TRISA

-

-

 

Регистр направления данных PORTA

 

 

 

--11 1111

--11 1111

05h

PORTA

-

-

 

Регистр защелки PORTA

 

 

 

 

--0x 0000

--0u 0000

89h*

TRISE

IBF

OBF

 

IBOV

PSPM

-

Регистр напр. PORTE

0000

-111

0000

-111

09h*

PORTE

-

-

 

-

-

-

RE2

RE1

 

RE0

---- -xxx

---- -uuu

Обозначения: - = не используется, читается как 0; u = не изменяется; x = не известно; q = зависит от условий. Примечание*. Эти регистры/биты в микроконтроллерах PIC16F873, PIC16F876 не реализованы.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

113

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

12.0Особенности микроконтроллеров PIC16F87X

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

Основные достоинства:

Выбор тактового генератора

Сброс:

-сброс по включению питания (POR);

-таймер включения питания (PWRT);

-таймер запуска генератора (OSC);

-сброс по снижению напряжения питания (BOR).

Прерывания

Сторожевой таймер (WDT)

Режим энергосбережения (SLEEP)

Защита кода программы

Область памяти для идентификатора

Внутрисхемное программирование по последовательному порту (ICSP)

Режим низковольтного последовательного программирования

Режим внутрисхемной отладки (ICD)

Вмикроконтроллеры PIC16F87X встроен сторожевой таймер WDT, который может быть выключен только в битах конфигурации микроконтроллера. Для повышения надежности сторожевой таймер WDT имеет собственный RC генератор.

Дополнительных два таймера выполняют задержку старта работы микроконтроллера. Первый, таймер запуска генератора (OST), удерживает микроконтроллер в состоянии сброса, пока не стабилизируется частота тактового генератора. Второй, таймер включения питания (PWRT), срабатывает после включения питания и удерживает микроконтроллер в состоянии сброса в течение 72мс (типовое значение), пока не стабилизируется напряжение питания. В большинстве приложений эти функции микроконтроллера позволяют исключить внешние схемы сброса.

Режим SLEEP предназначен для обеспечения сверхнизкого энергопотребления. Микроконтроллер может выйти из режима SLEEP по сигналу внешнего сброса, по переполнению сторожевого таймера или при возникновении прерываний.

Выбор режима работы тактового генератора позволяет использовать микроконтроллеры в различных приложениях. Режим тактового генератора RC позволяет уменьшить стоимость устройства, а режим LP снизить энергопотребление. Биты конфигурации микроконтроллера используются для указания режима его работы.

Дополнительную информацию по работе с микроконтроллерами PIC16F87X смотрите в технической документации DS33023 "PICmicro™ Mid-Range Reference Manual".

12.1 Биты конфигурации

Биты конфигурации расположены в памяти программ по адресу 2007h, они могут быть запрограммированы в ‘0’ или оставленными в ‘1’. Заметьте, что адрес 2007h расположен за пределами пользовательской памяти программ. Фактически, к конфигурационному регистру (область памяти 2000h - 3FFFh) можно обратиться только в режиме программирования микроконтроллера.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

114

 

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

 

DS30292C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Слово конфигурации (адрес 2007h)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CP1

CP0

DEBUG

-

WRT

CPD

LVP

BODEN

CP1

CP0

-PWRTE

WDTE

FOSC1

FOSC0

 

 

Бит 13

 

 

 

 

 

 

 

 

 

 

 

 

 

Бит 0

 

 

 

 

биты 13-10: CP1:CP0: Биты защита памяти программ (2)

 

 

 

 

 

 

 

 

 

биты 5-4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

= защита памяти программ выключена

 

 

 

 

 

 

 

10

= защищена память программ с адресами 1F00h-1FFFh (PIC16F877/876)

 

 

 

 

10

= защищена память программ с адресами 0F00h-0FFFh (PIC16F874/873)

 

 

 

 

01

= защищена память программ с адресами 1000h-1FFFh (PIC16F877/876)

 

 

 

 

01

= защищена память программ с адресами 0800h-0FFFh (PIC16F874/873)

 

 

 

 

00

= защищена память программ с адресами 0000h-1FFFh (PIC16F877/876)

 

 

 

 

00

= защищена память программ с адресами 0000h-0FFFh (PIC16F874/873)

 

 

 

 

бит 11: DEBUG: Бит включения режима внутрисхемной отладки

1 = внутрисхемная отладка выключена, выводы RB6 и RB7 работают как каналы вводы/вывода 0 = внутрисхемная отладка включена, выводы RB6 и RB7 используются отладчиком

бит 10: Не реализован: читается как '1'

бит 9: WRT: Бит разрешения записи во FLASH память программ

1 = разрешена запись во FLASH память программ через регистры управления EECON 0 = запрещена запись во FLASH память программ через регистры управления EECON

бит 8: CPD: Бит защиты EEPROM памяти данных 1 = защита памяти данных выключена 0 = защита памяти данных включена

бит 7: LVP: Бит разрешения низковольтного программирования

1 = вывод RB3/PGM работает как PGM, режим низковольтного программирования включен

0 = вывод RB3/PGM работает как цифровой порт ввода/вывода, вывод HV используется для программирования микроконтроллера

бит 6: BODEN: Бит разрешения сброса по снижению напряжения питания (3) 1 = разрешен сброс BOR

0 = запрещен сброс BOR

бит 3: -PWRTE: Бит разрешения работы таймера включения питания (3) 1 = PWRT выключен

0 = PWRT включен

бит 2: WDTE: Бит разрешения работы сторожевого таймера 1 = WDT включен

0 = WDT выключен

биты 1-0: FOSC1:FOSC0: Биты выбора режима тактового генератора 11 = RC генератор

10 = HS генератор

01 = XT генератор

00 = LP генератор

Примечания:

1. При стирании всей памяти микроконтроллера в слово конфигурации записывается значение 3FFFh.

2.Чтобы установить защиту памяти программ, все пары CP1:CP0 должны иметь одинаковое значение.

3.При возникновении сброса по снижению напряжения питания (BOR) автоматически запускается таймер PWRT, независимо от состояния бита -PWRTE.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

115

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

12.2 Настройка тактового генератора

12.2.1 Режимы тактового генератора

Микроконтроллеры PIC16F87X могут работать в одном из четырех режимов тактового генератора. Указать режим тактового генератора можно при программировании микроконтроллера в битах конфигурации (FOSC1:FOSC0):

LP - низкочастотный резонатор;

XT - обычный резонатор;

HS - высокочастотный резонатор;

RC - внешняя RC цепочка.

12.2.2 Кварцевый/керамический резонатор

В режимах тактового генератора XT, LP и HS кварцевый или керамический резонатор подключается к выводам OSC1/CLKIN, OSC2/CLKOUT (см. рисунок 12-1). Для микроконтроллеров PIC16F87X нужно использовать резонаторы с параллельным резонансом. Использование резонаторов с последовательным резонансом может привести к получению тактовой частоты, не соответствующей параметрам резонатора. В режимах XT, LP и HS микроконтроллер может работать от внешнего источника тактового сигнала OSC1 (см. рисунок 12-2).

Рис. 12-1

Подключение

кварцевого/керамического

Рис. 12-2 Подключение внешнего тактового сигнала в

резонатора

в HS, XT и LP режиме тактового генератора

HS, XT и LP режиме тактового генератора

Примечания:

1. Смотрите таблицы 12-1, 12-2 для выбора емкости конденсаторов.

2.Для некоторых типов резонаторов может потребоваться последовательно включенный резистор.

3.Значение сопротивления RF варьируется в зависимости от выбранного режима генератора.

Таблица 12-1 Параметры конденсаторов для керамического резонатора (оценочные значения)

 

Режим

Частота

OSC1(C1)

OSC2(C2)

 

Резонаторы, используемые при тестировании

 

 

 

 

 

 

 

 

XT

455 кГц

68-100пФ

68-100пФ

 

455кГц

Panasonic EOF-A455K04B

± 0.3%

 

2.0 МГц

15-68пФ

15-68пФ

 

2.0МГц

Murata Erie CDA2.00MG

± 0.5%

 

4.0 МГц

15-68пФ

15-68пФ

 

4.0МГц

Murata Erie CDA4.00MG

± 0.5%

HS

8.0 МГц

10-68пФ

10-68пФ

 

8.0МГц

Murata Erie CDA8.00MT

± 0.5%

 

16.0 МГц

10-22пФ

10-22пФ

 

16.0МГц

Murata Erie CDA16.00MX

± 0.5%

 

Смотрите примечание к таблице 12-2

 

Все резонаторы не имели паразитной емкости.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

116

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

 

 

 

 

 

 

 

 

Таблица 12-2 Параметры конденсаторов для кварцевого резонатора (оценочные значения)

 

 

 

Режим

Частота

OSC1(C1)

OSC2(C2)

 

Резонаторы, используемые при тестировании

 

LP

32 кГц

33пФ

33пФ

 

200 кГц

15пФ

15пФ

XT

200 кГц

47-68пФ

47-68пФ

 

1 МГц

15пФ

15пФ

 

4 МГц

15пФ

15пФ

HS

4 МГц

15пФ

15пФ

 

8 МГц

15-33пФ

15-33пФ

 

20 МГц

15-33пФ

15-33пФ

32кГц

Epson C-001R32.768K-A

± 20PPM

200кГц

STD XTL 200.000KHz

± 20PPM

1МГц

ECS ECS-10-13-1

± 50PPM

4МГц

ECS ECS-40-20-1

± 50PPM

8МГц

EPSON CA-301 8.000M-C

± 30PPM

20МГц

EPSON CA-301 20.000M-C

± 30PPM

Примечания:

1. Большая емкость увеличивает стабильность генератора, но увеличивается и время запуска.

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

3.Последовательный резистор Rs может потребоваться в HS и XT режиме для предотвращения возбуждения резонатора на низкой частоте.

4.При переходе к другим типам микроконтроллеров PICmicro необходимо проверить режим тактового генератора.

12.2.3RC генератор

В приложениях, не требующей высокостабильной тактовой частоты, возможно использовать RC режим генератора, уменьшающий стоимость устройства. Частота RC генератора зависит от напряжения питания, значения сопротивления (REXT), емкости (CEXT) и рабочей температуры. Дополнительно частота будет варьироваться в некоторых пределах из-за технологического разброс параметров кристалла. Различные паразитные емкости также будут влиять на частоту генератора, особенно при малых значениях CEXT. Необходимо учитывать технологический разброс параметров внешних компонентов R и C. На рисунке 12-3 показана схема подключения RC цепочки к PIC16F87X.

Рис. 12-3 Схема подключения RC цепочки PIC16F87X

Рекомендованные значения:

3кОм REXT 100кОм

 

CEXT > 20пФ

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

117

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

12.3 Сброс

PIC16F87X различает следующие виды сбросов:

Сброс по включению питания POR;

Сброс по сигналу -MCLR в нормальном режиме работы;

Сброс по сигналу -MCLR в SLEEP режиме;

Сброс от WDT в нормальном режиме работы;

Сброс от WDT в режиме SLEEP;

Сброс по снижению напряжения питания BOR.

Некоторые регистры не изменяются после любого вида сброса, но после сброса по включению питания POR они содержат неизвестное значение. Большинство регистров сбрасываются в начальное состояние при сбросах POR, BOR, -MCLR и WDT в нормальном режиме, -MCLR в режиме SLEEP. Сброс WDT в SLEEP режиме рассматривается как возобновление нормальной работы и на значение регистров не влияет. Биты -TO и -PD принимают определенные значения при различных видах сброса (см. таблицу 12-4). Программное обеспечение может использовать эти биты для детектирования вида сброса микроконтроллера. Состояние регистров специально назначения после сброса смотрите в таблице 12-6.

Упрощенная структурная схема сброса показана на рисунке 12-4.

На входе -MCLR есть внутренний фильтр, не пропускающий короткие импульсы. Необходимо отметить, что сброс WDT не управляет выводом -MCLR.

Рис. 12-4 Упрощенная структурная схема сброса

Примечание 1. Это отдельный RC генератор.

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

118

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

DS30292C

 

 

12.4 Сброс по включению питания POR

Интегрированная схема POR удерживает микроконтроллер в состоянии сброса, пока напряжение VDD не достигнет требуемого уровня (от 1.2В до 1.7В). Для включения схемы POR необходимо соединить вывод -MCLR с VDD через резистор, не требуя внешней RC цепочки, обычно используемой для сброса. Максимальное время нарастания VDD смотрите в разделе «электрические характеристики». Схема POR не выполняет сброс микроконтроллера при снижении напряжения VDD.

Когда микроконтроллер переходит в режим нормальной работы из состояния сброса, рабочие параметры (напряжение питания, частота, температура и т.д.) должны соответствовать указанным в разделе «электрические характеристики». Если рабочие параметры не удовлетворяют требованиям, микроконтроллер должен находиться в состоянии сброса.

Дополнительную информацию смотрите в документации AN607 "Power-up Trouble Shooting".

12.5 Таймер включения питания PWRT

Таймер включения питания обеспечивает задержку в 72мс (номинальное значение) по сигналу схемы сброса POR. Таймер включения питания работает от внутреннего RC генератора и удерживает микроконтроллер в состоянии сброса по активному сигналу от PWRT. Задержка PWRT позволяет достигнуть напряжению VDD номинального значения.

Битом -PWRTE в слове конфигурации можно выключить (-PWRTE=1) или включить (-PWRTE=0) таймер включения питания. Время задержки PWRT варьируется в каждом микроконтроллере и зависит от напряжения питания и температуры (см. раздел «электрические характеристики» параметр 33).

12.6 Таймер запуска генератора OST

Таймер запуска генератора обеспечивает задержку в 1024 такта генератора (вход OSC1) после окончания задержки от PWRT (если она включена). Это гарантирует, что частота кварцевого/керамического резонатора стабилизировалась. Задержка OST включается только в режимах HS, XT и LP тактового генератора после сброса POR или выхода микроконтроллера из режима SLEEP.

12.7 Сброс по снижению напряжения питания BOR

Битом BODEN в слове конфигурации можно выключить (BODEN = 0) или включить (BODEN = 1) детектор снижения напряжения питания. Если напряжение VDD опускается ниже 4.0В (см. параметр D005 VBOR) на время больше(или равное) TBOR (см. параметр 35, 100мкс), произойдет сброс по снижению напряжения питания. Если длительность снижения напряжения питания меньше TBOR, сброс микроконтроллера не произойдет.

При любом виде сброса (POR, -MCLR, WDT и т.д.) микроконтроллер находится в состоянии сброса, пока напряжение VDD не будет выше VBOR. После нормализации напряжения питания микроконтроллер находится в

состоянии сброса еще 72мс (см. параметр 33, TPWRT).

Если напряжение питание VDD стало ниже VBOR во время работы таймера по включению питания, микроконтроллер возвращается в состояние сброса BOR, а таймер инициализируется заново. Каждый переход напряжения питания VDD через границу VBOR инициализирует PWRT , создавая задержку в 72мс. При включении схемы BOD всегда нужно включать таймер PWRT.

12.8 Последовательность удержания микроконтроллера в состоянии сброса

При включении питания выполняется следующая последовательность удержание микроконтроллера в состоянии сброса: сброс POR, задержка PWRT (если она разрешена), задержка OST (после завершения задержки PWRT). Полное время задержки изменяется в зависимости от режима работы тактового генератора и состояния бита -PWRTE.

Если сигнал -MCLR удерживается в низком уровне достаточно долго (дольше времени всех задержек), после перехода -MCLR в высокий уровень программа начнет выполняться немедленно (см. рисунок 14-10). Это может быть полезно при одновременном запуске нескольких микроконтроллеров, работающих параллельно.

В таблице 12-5 показано состояние некоторых регистров специального назначения.

12.9 Регистр PCON

Регистр PCON (адрес 8Eh) содержит два бита статуса питания.

Бит 0 - -BOR (детектор пониженного напряжения питания)

Бит -BOR имеет неопределенное значение после сброса POR. Пользователь должен программно установить бит -BOR в ‘1’ и проверять его состояние при возникающих сбросах микроконтроллера. Ели -BOR =0, то произошел сброс по снижению напряжения питания (BOR). Бит -BOR не устанавливается в ‘1’ аппаратно и имеет непредсказуемое значение, если детектор пониженного напряжения питания выключен (BODEN=0).

Бит 1 - -POR (сброс по включению питания)

Бит сбрасывается в ‘0’ при возникновении сброса POR. Пользователь должен программно установить этот бит в ‘1’ после сброса по включению питания. При последующих сбросах, если -POR=0 то произошел сброс по включению питания (или напряжение VDD стало слишком низким).

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

119

ООО «Микро-Чип» - поставка комплектующих Microchip тел.: (095) 737-7545

 

 

DS30292C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 12-3 Время задержки при различных видах сброса

 

 

 

 

 

 

 

 

 

 

Режим

 

 

Сброс POR

 

 

 

 

Сброс BOR

Выход из режима

 

 

 

 

 

 

генератора

 

-PWRTE=0

 

-PWRTE=1

 

 

 

SLEEP

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XT, HS, LP

72мс + 1024 TOSC

 

 

1024 TOSC

 

72мс + 1024 TOSC

 

1024 TOSC

 

 

 

RC

 

 

72мс

 

 

-

 

 

72мс

-

 

 

 

 

 

 

Таблица 12-4 Состояние некоторых битов регистров STATUS/PCON

 

 

 

 

 

 

 

 

 

-POR

 

-BOR

 

-TO

 

-PD

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

x

 

1

 

1

 

Сброс по включению питания

 

 

 

 

 

 

 

0

 

x

 

0

 

 

x

 

Недействительный -TO, если установлен -POR

 

 

 

 

0

 

x

 

x

 

0

 

Недействительный -PD, если установлен -POR

 

 

 

 

1

 

0

 

1

 

1

 

Сброс по снижению напряжения питания

 

 

 

 

1

 

1

 

0

 

 

u

 

Сброс от WDT

 

 

 

 

 

 

 

 

 

1

 

1

 

0

 

0

 

Выход из режима SLEEP от WDT

 

 

 

 

 

 

 

1

 

1

 

u

 

 

u

 

Сброс -MCLR при нормальном режиме работы

 

 

 

 

1

 

1

 

1

 

0

 

Сброс -MCLR в SLEEP режиме

 

 

 

 

 

 

 

 

Обозначения

: u = не изменяется; x = неопределенное значение

 

 

 

 

 

 

 

 

 

 

Таблица 12-5 Состояние особых регистров после сброса

 

 

 

 

 

 

 

 

 

 

 

 

Вид сброса

 

 

 

Счетчик команд

Регистр

 

Регистр PCON

 

 

 

 

 

 

 

 

 

 

 

 

 

PC

 

STATUS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сброс по включению питания

 

 

 

000h

 

0001 1xxx

 

---- --0x

 

 

 

Сброс по сигналу -MCLR в нормальном режиме

 

000h

 

000u uuuu

 

---- --uu

 

 

 

Сброс по сигналу -MCLR в SLEEP режиме

 

 

 

000h

 

0001 0uuu

 

---- --uu

 

 

 

Сброс от WDT

 

 

 

 

 

 

 

000h

 

0000 1uuu

 

---- --uu

 

 

 

Выход из режима SLEEP от WDT

 

 

 

PC + 1

 

uuu0 0uuu

 

---- --uu

 

 

 

Сброс по снижению напряжения питания

 

 

 

000h

 

0001 1uuu

 

---- --u0

 

 

 

Выход из режима SLEEP от прерываний

 

 

 

PC + 1(1)

 

uuu1 0uuu

 

---- --uu

 

Обозначения: - = не используется, читается как '0'; u = не изменяется; x = не известно.

Примечание 1. При выходе из режима SLEEP по возникновению прерывания, если GIE=1, в счетчик команд PC загружается вектор прерываний (0004h).

WWW.MICROCHIP.RU – поставки и техподдержка на русском языке

120