Особенности архитектуры микроконтроллеров семейства PIC16CXXX 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Особенности архитектуры микроконтроллеров семейства PIC16CXXX



Микроконтроллеры семейства PIC16CXXX, выполненные по технологии HCMOS представляют собой восьмиразрядные микроконтроллеры на основе RISC-процессора, выполненные по гарвардской архитектуре. Имеют встроенное ПЗУ команд объемом от 0,5 до 4 Кслов (разрядность слова команд равна 12 – 14 бит). Память данных PIC -контроллеров организована в виде регистрового файла объемом 32 – 128 байт, в котором от 7 до 16 регистров отведено для управления системой и обмена данными с внешними устройствами.

Одним из основных достоинств этих устройств является очень широкий диапазон напряжений питания (2 – 6 В). Ток потребления на частоте 32768 Гц составляет менее 15 мкА, на частоте 4 МГц – 1 – 2 мА, на частоте 20 МГц 5 – 7 мА и в режиме микропотребления (режим SLEEP) – 1 – 2 мкА. Выпускаются модификации для работы в трех температурных диапазонах: от 0 до +70°С, от -40 до +85°С и от -40 до +125°С.

Каждый из контроллеров содержит универсальные (от 1 до 3) и сторожевой таймеры, а также надежную встроенную систему сброса при включении питания. Частота внутреннего тактового генератора задается либо кварцевым резонатором, либо RC-цепочкой в диапазоне 0 – 25 МГц. PIC -контроллеры имеют от 12 до 33 линий цифрового ввода-вывода, причем каждая из них может быть независимо настроена на ввод или вывод.

В устройство PIC16C64 входит широтно-импульсный модулятор, с помощью которого можно реализовать ЦАП с разрешением до 16 разрядов. Здесь есть и последовательный двунаправленный синхронно-асинхронный порт, обеспечивающий возможность организации шины I2C. Приборы PIC16C71 и PIC16C74 содержат встроенный многоканальный восьмиразрядный АЦП с устройством выборки-хранения.

Помимо памяти программ в PIC предусмотрено несколько индивидуально прожигаемых перемычек, с помощью которых можно на этапе программирования кристалла выбрать тип тактового генератора, отключить сторожевой таймер или систему сброса, включить защиту памяти программ от копирования, а также записать серийный номер кристалла (16 бит).

С программной точки зрения PIC -контроллер представляет собой восьмиразрядный RISC-процессор с гарвардской архитектурой. Число команд небольшое — от 33 до 35. Все команды имеют одинаковую длину и, кроме команд ветвления, выполняются за четыре периода тактовой частоты (в отличие, например, от 12 периодов для i87C51). Поддерживаются непосредственный, косвенный и относительный методы адресации, можно эффективно управлять отдельными битами в пределах всего регистрового файла. Стек реализован аппаратно. Его максимальная глубина составляет два или восемь уровней в зависимости от типа контроллера. Почти во всех микросхемах PIC есть система прерываний, источниками которых могут быть таймер и внешние сигналы. Система команд практически симметрична и, как следствие, легка в освоении.

Применение PIC -контроллеров целесообразно в несложных приборах с ограниченным током потребления (автономные устройства, приборы с питанием от телефонной линии и т.п.). Благодаря малому количеству компонентов, используемых при построении таких приборов, их размеры уменьшаются, а надежность увеличивается.

Типичным представителем микроконтроллеров семейства PIC16CXXX являются микроконтроллеры подгруппы PIC16F8X.

 

Микроконтроллеры подгруппы PIC16F8X

Основные характеристики

Микроконтроллеры подгруппы PIC16F8X относятся к семейству восьмиразрядных КМОП микроконтроллеров группы PIC16CXXX, для которых характерны низкая стоимость, полностью статическая КМОП-технология и высокая производительность.

В состав подгруппы входят МК PIC16F83, PIC16CR83, PIC16F84 и PIC16CR84. Основные характеристики МК подгруппы PIC16F8X приведены в таблице 40.1.

Все микроконтроллеры подгруппы PIC16F8X используют гарвардскую архитектуру с RISC-процессором, обладающую следующими основными особенностями:

1) используются только 35 простых команд;

2) все команды выполняются за один цикл (400 нс при частоте 10 МГц), кроме команд перехода, которые требуют 2 цикла;

3) рабочая частота 0 Гц... 10 МГц;

4) раздельные шины данных (8 бит) и команд (14 бит);

5) 512 х 14 или 1024 х 14 память программ, выполненная на ПЗУ или электрически перепрограммируемой Flash- памяти;

6) 15 восьмиразрядных регистров специальных функций (SFR);

7) восьмиуровневый аппаратный стек;

8) прямая, косвенная и относительная адресация данных и команд;

9) 36 или 68 восьмиразрядных регистров общего назначения (GPR) или ОЗУ;

10) четыре источника прерывания:

- внешний вход RB0/INT;

- переполнение таймера TMR0;

- изменение сигналов на линиях порта B;

- завершение записи данных в память EEPROM;

11) 64 x 8 электрически перепрограммируемая EEPROM память данных с возможностью выполнения 1000000 циклов стирания/записи;

12) сохранение данных в EEPROM в течение как минимум 40 лет.

 


Таблица 40.1 - Основные характеристики МК подгруппы PIC16F8X.

Параметр PIC16F83 PIC16CR83 PIC16F84 PIC16CR84
Максимальная частота, МГц 10 10 10 10
Flash-память программ, слов 512 - 1K -
ПЗУ программ, слов - 512 - 1K
Память данных, байт 36 36 68 68
Память данных в РПЗУ (EEPROM), байт 64 64 64 64
Таймеры TMR0 TMR0 TMR0 TMR0
Число источников прерываний 4 4 4 4
Число линий ввода/вывода 13 13 13 13
Диапазон напряжений питания, В 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0
Число выводов и тип корпуса 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC

 

Микроконтроллеры подгруппы PIC16F8X обладают развитыми возможностями ввода/вывода:

- 13 линий ввода-вывода с индивидуальной установкой направления обмена;

- высокий втекающий/вытекающий ток, достаточный для управления светодиодами:

- максимальный втекающий ток – 25 мА;

- максимальный вытекающий ток – 20 мА;

- восьмибитный таймер / счетчик TMR0 с восьмибитным программируемым предварительным делителем.

Специализированные микроконтроллерные функции включают следующие возможности:

- автоматический сброс при включении (Power-on-Reset);

- таймер включения при сбросе (Power-up Timer);

- таймер запуска генератора (Oscillator Start-up Timer);

- сторожевой (Watchdog) таймер WDT с собственным встроенным генератором, обеспечивающим повышенную надежность;

- EEPROM бит секретности для защиты кода;

- экономичный режим SLEEP;

- выбираемые пользователем биты для установки режима возбуждения встроенного генератора;

- последовательное встроенное устройство программирования Flash / EEPROM памяти программ и данных с использованием только двух выводов.

КМОП технология обеспечивает МК подгруппы PIC16F8X дополнительные преимущества:

- статический принцип работы;

- широкий диапазон напряжений питания: 2,0... 6,0 В;

- низкое энергопотребление:

- менее 2 мА при 5В и 4МГц;

- порядка 15 мкА при 2В и 32КГц;

- менее 1 мкА для SLEEP -режима при 2В.

Микроконтроллеры подгруппы PIC16F8X различаются между собой только объемом ОЗУ данных, а также объемом и типом памяти программ. Наличие в составе подгруппы МК с Flash-памятью программ облегчает создание и отладку прототипов промышленных образцов изделий.

 


Особенности архитектуры

Упрощенная структурная схема МК подгруппы PIC16F8X приведена на риунке 40.1.

Рисунок 40.1 - Структурная схема МК подгруппы PIC16F8X.

 

Архитектура основана на концепции раздельных шин и областей памяти для данных и для команд (гарвардская архитектура). Шина данных и память данных (ОЗУ) – имеют ширину 8 бит, а программная шина и программная память (ПЗУ) имеют ширину 14 бит. Такая концепция обеспечивает простую, но мощную систему команд, разработанную так, что битовые, байтовые и регистровые операции работают с высокой скоростью и с перекрытием по времени выборок команд и циклов выполнения. 1четырехбитовая ширина программной памяти обеспечивает выборку 1четырехбитовой команды в один цикл. Двухступенчатый конвейер обеспечивает одновременную выборку и исполнение команды. Все команды выполняются за один цикл, исключая команды переходов.

Микроконтроллеры PIC16F83 и PIC16CR83 адресуют 512х14 памяти программ, а PIC16F84 и PIC16CR84 – 1Кх14 памяти программ. Вся память программ является внутренней.

Микроконтроллер может прямо или косвенно обращаться к регистрам или памяти данных. Все регистры специальных функций, включая счетчик команд, отображаются на память данных. Ортогональная (симметричная) система команд позволяет выполнять любую команду над любым регистром с использованием произвольного метода адресации. Ортогональная архитектура и отсутствие специальных исключений делает программирование МК группы PIC16F8X простым и эффективным.

Микроконтроллер содержит восьмиразрядное АЛУ и рабочий регистр W. АЛУ является арифметическим модулем общего назначения и выполняет арифметические и логические функции над содержимым рабочего регистра и любого из регистровконтроллера. АЛУ может выполнять операции сложения, вычитания, сдвига и логические операции. Если не указано иное, то арифметические операции выполняются в дополнительном двоичном коде.

В зависимости от результата операции, АЛУ может изменять значения бит регистра STATUS: C (Carry), DC (Digit carry) и Z(Zero).

 



Поделиться:


Последнее изменение этой страницы: 2021-02-07; просмотров: 204; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.133.144.197 (0.016 с.)