Микроконтроллеры семейства PIC имеют очень эффективную систему команд, состоящую всего из 35 инструкций. Все инструкции выполняются за один цикл, за исключением условных переходов и команд, изменяющих программный счетчик, которые выполняются за 2 цикла. Один цикл выполнения инструкции состоит из 4 периодов тактовой частоты. Таким образом, при частоте 4 МГц, время выполнения инструкции составляет 1 мксек. Каждая инструкция состоит из 14 бит, делящихся на код операции и операнд (возможна манипуляция с регистрами, ячейками памяти и непосредственными данными).
Высокая скорость выполнения команд в PIC достигается за счет использования двухшинной Гарвардской архитектуры вместо традиционной одношинной Фон-Hеймановской. Гарвардская а архитектура основывается на наборе регистров с разделенными шинами и адресным пространством для команд и для данных. Hабор регистров означает, что все программные объекты, такие как порты ввода/вывода, ячейки памяти и таймер, представляют собой физически реализованные аппаратные регистры.
Память данных (ОЗУ) для PIC16CXX имеет разрядность 8 бит, память программ (ППЗУ) имеет разрядность 12 бит для PIC16C5X и 14 бит для PIC16CXX. Использование Гарвардской архитектуры позволяет достичь высокой скорости выполнения битовых, байтовых и регистровых операций. Кроме того, Гарвардская архитектура допускает конвейерное выполнение инструкций, когда одновременно выполняется текущая инструкция и считывается следующая. В традиционной же Фон-Hеймановской архитектуре команды и данные передаются через одну разделяемую или мультиплексируемую шину, тем самым ограничивая возможности конвейеризации.
PIC16C84 относится к семейству КМОП микроконтроллеров. Отличается тем, что имеет внутреннее 1K x 14 бит EEPROM для программ, 8-битовые данные и 64байт EEPROM памяти данных. При этом отличаются низкой стоимостью и высокой производительностью. Пользователи, которые знакомы с семейством PIC16C5X могут посмотреть подробный список отличий нового от производимых ранее контроллеров. Все команды состоят из одного слова (14 бит шириной) и исполняются за один цикл (400 нс при 10 МГц), кроме команд перехода, которые выполняются за два цикла (800 нс). PIC16C84 имеет прерывание, срабатывающее от четырех источников, и восьмиуровневый аппаратный стек. Периферия включает в себя 8-битный таймер/счетчик с 8-битным программируемым предварительным делителем (фактически 16 - битный таймер) и 13 линий двунаправленного ввода/вывода. Высокая нагрузочная способность (25 мА макс. втекающий ток, 20 мА макс. вытекающий ток) линий ввода/вывода упрощают внешние драйверы и, тем самым, уменьшается общая стоимость системы. Разработки на базе контроллеров PIC16C84 поддерживается ассемблером, программным симулятором, внутрисхемным эмулятором (только фирмы Microchiр) и программатором.
Серия PIC16C84 подходит для широкого спектра приложений от схем высокоскоростного управления автомобильными и электрическими двигателями до экономичных удаленных приемопередатчиков, показывающих приборов и связных процессоров. Наличие ПЗУ позволяет подстраивать параметры в прикладных программах (коды передатчика, скорости двигателя, частоты приемника и т.д.).
Малые размеры корпусов, как для обычного, так и для поверхностного монтажа, делает эту серию микроконтроллеров пригодной для портативных приложений. Низкая цена, экономичность, быстродействие, простота использования и гибкость ввода/вывода делает PIC16C84 привлекательным даже в тех областях, где ранее не применялись микроконтроллеры. Например, таймеры, замена жесткой логики в больших системах, сопроцессоры.
Cледует добавить, что встроенный автомат программирования EEPROM кристалла PIC16C84 позволяет легко подстраивать программу и данные под конкретные требования даже после завершения ассемблирования и тестирования. Эта возможность может быть использована как для тиражирования, так и для занесения калибровочных данных уже после окончательного тестирования.
¨ только 35 простых команд;
¨ все команды выполняются за один цикл(400ns), кроме команд перехода, выполняющихся за два цикла;
¨ рабочая частота 0 Гц ... 10 МГц (min 400 нс цикл команды);
¨ 14- битовые команды;
¨ 8- битовые данные;
¨ 1024 х 14 электрически перепрограммируемой программной памяти на кристалле (EEPROM);
¨ 36х 8 регистров общего использования;
¨ 15 специальных аппаратных регистров SFR;
¨ 64 x 8 электрически перепрограммируемой EEPROM памяти для данных;
¨ восьмиуровневый аппаратный стек;
¨ прямая, косвенная и относительная адресация данных и команд;
¨ четыре источника прерывания:
· внешний вход INT,
· переполнение таймера RTCC,
· прерывание при изменении сигналов на линиях порта B,
· по завершению записи данных в память EEPROM.
¨ 13 линий ввода-вывода с индивидуальной настройкой;
¨ втекающий/вытекающий ток для управления светодиодами.
· макс. вытекающий ток - 20 мА. ,
· макс. втекающий ток - 25 мА.,
¨ TMR0: 8 - битный таймер/счетчик RTCC с 8-битным программируемым предварительным делителем.
¨ автоматический сброс при включении;
¨ таймер включения при сбросе;
¨ таймер запуска генератора;
¨ Watchdog таймер WDT с собственным встроенным генератором, обеспечивающим повышенную надежность;
¨ EEPROM бит секретности для защиты кода;
¨ экономичный режим SLEEP;
¨ выбираемые пользователем биты для установки режима возбуждения встроенного генератора:
· RC генератор : RC;
· обычный кварцевый резонатор : XT;
· высокочастотный кварцевый резонатор : HS;
· экономичный низкочастотный кристалл : LP;
¨ встроенное устройство программирования EEPROM памяти программ и данных; используются только две ножки.
¨ экономичная высокоскоростная КМОП EPROM технология;
¨ статический принцип в архитектуре;
¨ широкий диапазон напряжений питания и температур:
· коммерческий: 2.0 ... 6.0 В, 0...+70С,
· промышленный: 2.0 ... 6.0 В, -40...+70С,
· автомобильный: 2.0 ... 6.0 В, 40...+125С;
¨ низкое потребление:
· 2 мА типично для 5В, 4МГц,
· 15 мкА типично для 2В, 32КГц,
· 1 мкА типично для SLEEP режима при 2В.
Обозначения корпусов для кристаллов PIC16C84. Тип корпуса указывается в Маркировке при заказе микросхем. Корпуса бывают только с 18 Выводами.
PDIP - Обычный пластмассовый двухрядный корпус
SOIC - Малогабаритный DIP корпус для монтажа на поверхность
Обозначение микросхем складывается из следующих полей:
Фирм.номер/Частота генератора/Темпер.диапазон/Корпус/Примеч
Фирм.номер : PIC16C84 Vdd range 4...6 V,
PIC16LC84 Vdd range 2...6 V;
Частота генератора: 04 ---> 4 mHz (большинство 4 МГц. приборов работает до 10 МГц.!),
10 ---> 10mHz;
Температурный диапазон бывает:
- от 0С до +70С,
I от-40С до +85С,
E от-40С до +125С;
Корпус обозначается:
P - обычный пластмассовый DIP,
SO -300 mil SOIC.
ПРИМЕРЫ:
PIC16C84-04/P - 4 mHz, коммерческое исполнение в PDIP корпусе, норм.диапазон Vdd
PIC16LC84-04I/SO - 4 mHz, исполнение для промышленности, расширен ный диапазон питания, корпус=SOIC
PIC16C84-10E/P - исполнение для автомобилей, 10 mHz, PDIP, норм. пи тание
Архитектура основана на концепции раздельных шин и областей памяти для данных и для команд (Гарвардская архитектура). Шина данных и память данных (ОЗУ) - имеют ширину 8 бит, а программная шина и программная память (ПЗУ) имеют ширину 14 бит. Такая концепция обеспечивает простую, но мощную систему команд, разработанную так, что битовые, байтовые и регистровые операции работают с высокой скоростью и с перекрытием по времени выборок команд и циклов выполнения. 14- битовая ширина программной памяти обеспечивает выборку 14-битовой команды в один цикл. Двухступенчатый конвейер обеспечивает одновременную выборку и исполнение команды. Все команды выполняются за один цикл, исключая команды переходов. В PIC16C84 программная память объемом 1К х 14 расположена внутри кристалла. Исполняемая программа может находиться только во встроенном ПЗУ.
Функциональное назначение выводов см.”Обозначения Выводов” или Структурную Схему. Типы корпусов PDIP и др. см. “Корпуса”.