Микроконтроллер PIC16F84A относится к семейству 8-разрядных КМОП микроконтроллеров, для которых характерны низкая стоимость, полностью статическая КМОП-технология и высокая производительность.
Основные характеристики МК PIC16F84A приведены ниже.
Микроконтроллер PIC16F84А использует гарвардскую архитектуру с RISC-процессором, обладающую следующими основными особенностями:
- используются только 35 простых команд;
- все команды выполняются за один цикл (400 нс при частоте 10 МГц), кроме команд перехода, которые требуют 2 цикла;
- рабочая частота 0 Гц... 10 МГц;
- раздельные шины данных (8 бит) и команд (14 бит);
- 1024х14 память программ, выполненная по технологии электрически перепрограммируемой Flash- памяти;
- 15 восьмиразрядных регистров специальных функций (SFR);
- восьмиуровневый аппаратный стек;
- прямая, косвенная и относительная адресация данных и команд;
- 68 восьмиразрядных регистров общего назначения (GPR) или ОЗУ;
- четыре источника прерывания:
- внешний вход RB0/INT;
- переполнение таймера TMR0;
- изменение сигналов на линиях порта B;
- завершение записи данных в память EEPROM;
- 64x8 электрически перепрограммируемая EEPROM память данных с возможностью выполнения 1000000 циклов стирания/записи;
- сохранение данных в EEPROM в течение как минимум 40 лет.
Параметр | Значение |
Максимальная частота, МГц | |
Flash-память программ, слов | 1K |
ПЗУ программ, слов | - |
Память данных, байт | |
Память данных в РПЗУ (EEPROM), байт | |
Таймеры | TMR0 |
Число источников прерываний | |
Число линий ввода/вывода | |
Диапазон напряжений питания, В | 2,0 – 6,0 |
Число выводов и тип корпуса | 18 DIP, SOIC |
Упрощенная структурная схема микроконтроллера и цоколевка ИМС PIC16F84A приведена на рис. 8.
|
Рис. 8 – Структурная схема МК PIC16F84A и цоколевка ИМС
Микроконтроллер PIC16F84А обладает развитыми возможностями ввода/вывода:
- 13 линий ввода-вывода с индивидуальной установкой направления обмена;
- высокий втекающий/вытекающий ток, достаточный для управления светодиодами:
- максимальный втекающий ток – 25 мА;
- максимальный вытекающий ток – 20 мА;
- 8-битный таймер/счетчик TMR0 с 8-битным программируемым предварительным делителем.
Специализированные микроконтроллерные функции включают следующие возможности:
- автоматический сброс при включении (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В.
Архитектура основана на концепции раздельных шин и областей памяти для данных и для команд (гарвардская архитектура). Шина данных и память данных (ОЗУ) – имеют ширину 8 бит, а программная шина и программная память (ПЗУ) имеют ширину 14 бит. Такая концепция обеспечивает простую, но мощную систему команд, разработанную так, что битовые, байтовые и регистровые операции работают с высокой скоростью и с перекрытием по времени выборок команд и циклов выполнения. 14-битовая ширина программной памяти обеспечивает выборку 14-битовой команды в один цикл. Двухступенчатый конвейер обеспечивает одновременную выборку и исполнение команды. Все команды выполняются за один цикл, исключая команды переходов.
|
Микроконтроллер может прямо или косвенно обращаться к регистрам или памяти данных. Все регистры специальных функций, включая счетчик команд, отображаются на память данных. Ортогональная (симметричная) система команд позволяет выполнять любую команду над любым регистром с использованием произвольного метода адресации.
Алгоритм работы управляющей программы для микроконтроллера будет следующим (рис. 9).
Рис. 9 – Алгоритм работы управляющей программы для МК