курсовой проект / Кабельный пробник / РАЗДЕЛ 3
.doc
3 ОБОСНОВАНИЕ ВыборА микроконтроллера
Микроконтроллеры семейств PIC (Peripheral Interface Controller) компании Microchip объединяют все передовые технологии микроконтроллеров: электрически программируемые пользователем ППЗУ, минимальное энергопотребление, высокую производительность, хорошо развитую RISC-архитектуру, функциональную законченность и минимальные размеры. Широкая номенклатура изделий обеспечивает использование микроконтроллеров в устройствах, предназначенных для разнообразных сфер применения.
Первые микроконтроллеры компании Microchip PICl6CXXX появились в конце 1980-х годов и благодаря своей высокой производительности и низкой стоимости составили серьезную конкуренцию производившимся в то время 8-разрядным МК с CISC-архитектурой.
Микроконтроллеры семейства PIC16CXXX, выполненные по технологии HCMOS представляют собой 8-разрядные микроконтроллеры на основе RlSC-процессора. выполненные по гарвардской архитектуре. Имеют встроенное ПЗУ команд объемом от 0,5 до 4 Кслов (разрядность слова команд равна 12 - Кбит). Память данных 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 линий цифрового ввода-вывода, причем каждая из них может быть независимо настроена на ввод или вывод.
Помимо памяти программ в Р1С предусмотрено несколько индивидуально прожигаемых перемычек, с помощью которых можно на этапе программирования кристалла выбрать тип тактового генератора, отключить сторожевой таймер или систему сброса, включить защиту памяти программ от копирования, а также записать серийный номер кристалла (16 бит).
С программной точки зрения PIC-контроллер представляет собой 8-разрядный RISC-процессор с гарвардской архитектурой. Число команд небольшое — от 33 до 35. Все команды имеют одинаковую длину и, кроме команд ветвления, выполняются за четыре периода тактовой частоты (в отличие, например, от 12 периодов для i87C51). Поддерживаются непосредственный, косвенный и относительный методы адресации, можно эффективно управлять отдельными битами в пределах всего регистрового файла. Стек реализован аппаратно. Его максимальная глубина составляет два или восемь уровней в зависимости от типа контроллера. Почти во всех микросхемах PIC есть система прерываний, источниками которых могут быть таймер и внешние сигналы. Система команд практически симметрична и, как следствие, легка в освоении.
Применение PIC-контроллеров целесообразно в несложных приборах с ограниченным током потребления (автономные устройства, приборы с питанием от телефонной линии и т.п.). Благодаря малому количеству компонентов, используемых при построении таких приборов, их размеры уменьшаются, а надежность увеличивается.
Типичным представителем микроконтроллеров семейства PIC16CXXX являются микроконтроллеры подгруппы PIC16F8X.
Микроконтроллеры подгруппы PIC16F8X относятся к семейству 8-разрядных КМОП микроконтроллеров группы PIC16CXXX, для которых характерны низкая стоимость, полностью статическая КМОП-технология и высокая производительность.
В состав подгруппы входят МК PICI6F83, PIC16CR83, P1C16F84 и P1C16CR84. Основные характеристики МК подгруппы PIC16F8X приведены в таблице 1.
Таблица 1 – Основные характеристики МК подгруппы PIC16F8X
Параметр |
PIC16F83 |
PIC16CR83 |
PIC16F84 |
PIC16CR84 |
Максимальная частота, МГц |
10 |
10 |
10 |
10 |
Flash-память программ, слов |
512 |
- |
1К |
- |
ПЗУ программ, слов |
- |
512 |
- |
1К |
Память данных, слов |
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 |
Все микроконтроллеры подгруппы P1C16F8X используют гарвардскую архитектуру с RISC-процессором, обладающую следующими основными особенностями:
- используются только 35 простых команд;
- все команды выполняются за один цикл (400 не при частоте 10 МГц), кроме команд перехода, которые требуют 2 циклов;
- рабочая частота 0 Гц ... 10 МГц;
- раздельные шины данных (8 бит) и команд (14 бит);
- 512 х 14 или 1024 х 14 память программ, выполненная на ПЗУ или электрически перепрограммируемой Flash- памяти;
- 15 восьмиразрядных регистров специальных функций (SFR); восьмиуровневый аппаратный стек;
- прямая, косвенная и относительная адресация данных и команд; 36 или 68 восьмиразрядных регистров общего назначения (GPR) или ОЗУ;
- четыре источника прерывания:
- 64 х 8 электрически перепрограммируемая EEPROM память данных с возможностью выполнения 1000000 циклов стирания/записи;
- сохранение данных в EEPROM в течение как минимум 40 лет.
Микроконтроллеры подгруппы PIC16F8X обладают развитыми возможностями ввода/вывода:
- 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В.
Микроконтроллеры подгруппы PIC16F8X различаются между собой только объемом ОЗУ данных, а также объемом и типом памяти программ. Наличие в составе подгруппы МК с Flash-памятью программ облегчает создание и отладку прототипов промышленных образцов изделий.
Сравним характеристики микроконтроллеров семейства PIC компании Microchip и микроконтроллеры семейства AVR фирмы Atmel.
Микроконтроллеры семейства AVR представляютт собой восьмиразрядную однокристальную микро-ЭВМ с упрощенной (сокращенной) системой команд - RISC (Restricted (Reduced) Instruction Set Computer). Большинство команд, входящих в систему команд, выбираются из памяти за один такт и выполняются за один такт работы микроконтроллера. При выполнении последовательности таких команд выборка из памяти очередной команды совмещается во времени с исполнением ранее выбранной команды. При этом число команд, выполняемых за 1 с, совпадает с тактовой частотой работы микроконтроллера. Микроконтроллеры изготавливаются по высококачественной КМОП (CMOS) технологии, содержат энергонезависимые запоминающие устройства для хранения программы и данных, выполненные по Flash и EEPROM технологиям, и отличаются низким энергопотреблением при высокой тактовой частоте. Запись программы и исходных данных в память может выполняться после установки микроконтроллера в аппаратуре, где ему предстоит работать.
Проанализируем характеристики микроконтроллера семейства AVR - AT89S8252:
- Flash-память - 8 Кбит;
- Память данных в РПЗУ (EEPROM) - 2 Кбайта;
- RAM – 256 байт;
- Максимальная частота – 24 МГц;
- Диапазон напряжений питания - 4.0 – 6.0 В;
- Корпус PDIP 40 PLCC 44 TQFP 44.
Рассмотрев параметры микроконтроллеров различных семейств производителей Microchip и AVR сделаем вывод, что наиболее подходящим микроконтроллером для нашего устройства является МК PIC16F84. Его преимуществами над остальными МК является наличие Flash-памяти программ 1К слов, память данных 68 слов. Недостатком, по сравнению с МК AT89S8252, является не достаточно большая максимальная частота, но это не столь важно в нашем устройстве. МК PIC16F84 полностью удовлетворяет требованиям рассматриваемой системы.