электронные компоненты
и
или
например MAX232 DIP16
например MAX232 ADM232
скачать прайс-лист
Новости
Программа поставок
Электронная библиотека
Форум
О компании
Контакты
WAP

Рубрики

| индикация | события | инструменты | беспроводная связь | датчики | источники питания | компоненты | корпуса | микроконтроллеры | приборы | промышленная мебель | прочее | сетевые решения | силовая электроника | средства разработки | новые технологии |

Интересные статьи

Рубрика: прочее

Микроконтроллеры Microchip проверены временем...

02.07.2008 Сегодня речь пойдет о микроконтроллерах производства Microchip. Будут рассмотрены основные семейства и структурные схемы. Это всего лишь фрагмент материала одного из 10 разделов “Энциклопедии электронных компонентов. Том 1. Большие интегральные схемы”.

Особенностью построения современных технических систем является широкая автоматизация процессов, контроля их состояния и управления их состоянием с помощью так называемых контроллеров (устройств управления). Именно для создания подобных устройств используется в настоящее время большая часть выпускаемой электронной продукции. С целью сокращения аппаратурных затрат при построении контроллеров и снижения их стоимости производятся однокристальные микроконтроллеры (МК или ОМК, MCU — MicroController Unit), выполненные в виде отдельных БИС. В отличие от микропроцессоров МК включают все устройства, необходимые для реализации цифровых систем управления минимальной конфигурации: процессор, запоминающее устройство данных, запоминающее устройство команд, внутренний генератор тактовых сигналов, а также программируемую интегральную схему для связи с внешней средой. МК позволяют добиться небольших габаритов устройств, малой потребляемой мощности, а также возможности быстрой модификации алгоритмов работы.

Наибольшей специализацией и разнообразием функций обладают микроконтроллеры, используемые во встроенных системах управления, в том числе в бытовых приборах. Общее число типов кристаллов с различными системами команд превышает 500. В настоящее время самыми распространенными и доступными (хотя и не единственными) являются МК семейств PIC (фирма Microchip) и AVR (фирма Atmel). Типовыми являются размер платы 3 x 5 см и потребляемая мощность 10–100 мВт. Для устройств, выполняющих незначительное количество функций, возможно достижение габаритов 10 x 10 мм и потребляемой мощности менее 0,1 мВт.

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

Быстрое развитие и распространение МК обусловлено их универсальностью и низкой стоимостью. Современные МК обладают всеми ресурсами для решения задач управления и при этом производятся в таком разнообразии, что могут удовлетворить практически любые потребности. Сейчас именно они являются средством реализации блочного подхода к построению устройств электронной техники.

ТЕРМИНОЛОГИЯ МК

Архитектура CISC (Complicated Instruction Set Code) — это классическая архитектура со сложным набором команд, которая применяется, как правило, в персональных компьютерах и серверах. В этих процессорах команды имеют много разных форматов и требуют для своего представления различного числа ячеек. Это обуславливает определение типа команды в ходе ее дешифрации при исполнении, что усложняет устройство управления процессора и препятствует повышению тактовой частоты до уровня, достижимого в RISC-процессорах на той же элементной базе. Архитектура RISC (Reduced Instruction Set Code) — это архитектура с сокращенным набором команд. Цель сокращения системы команд состоит в получении более компактных программ и ускорении их выполнения. Компактный код программы получается вследствие того, что все команды имеют размер в одно слово. Это предполагает, что все инструкции имеют одну длину и выбираются за один машинный цикл. Сокращенный набор команд предполагает быстрое обучение программиста. Однако следует отметить известный факт, что при изучении ассемблера для RISC программистом, привыкшим к CISC, возникают трудности, связанные с разительным отличием системы команд.

Аналого-цифровой преобразователь (АЦП, Analog-Digital Converter, ADC) — служит для ввода в микроконтроллер аналоговых сигналов напряжения с датчиков физических величин и преобразования этих сигналов в цифровой код с целью последующей программной обработки. АЦП характеризуется разрядностью, которая обычно совпадает с разрядностью МК, и числом аналоговых входов от 8 и выше.

Оперативное запоминающее устройство (ОЗУ, Random Access Memory, RAM) — резидентная память данных, то есть память для хранения переменных, организованная внутри микросхемы.

Постоянное запоминающее устройство (ПЗУ, Read-Only Memory, ROM) — резидентная память программ, то есть память для хранения команд программы, организованная непосредственно в микросхеме.

Программируемое ПЗУ (ППЗУ) — разновидность ПЗУ, содержимое которой можно изменять в процессе использования. Существуют следующие разновидности ППЗУ:

  • EEPROM (Electrically Erasable Programmable ROM, ЭСППЗУ) — электрически стираемое ППЗУ;
  • EPROM (Erasable Programmable ROM, УФППЗУ) — ППЗУ с ультрафиолетовым стиранием информации;
  • Flash — ППЗУ с принципом работы, основанном на EEPROM. Отличие заключается в том, что доступ к данным осуществляется блоками.

Разрядность МК определяется разрядностью данных, которые он может обрабатывать. На данный момент основную массу составляют 8- и 16-разрядные МК.

Режим Idle — один из режимов работы МК с пониженным потреблением. В этом режиме на АЛУ перестают поступать тактовые импульсы, а остальные устройства продолжают работать. Вывод МК из этого режима осуществляется аппаратным прерыванием или сбросом МК.

Режим Power Down — один из режимов работы МК с пониженным потреблением. В этом режиме тактовый генератор МК останавливается, а все схемы переводятся в статический режим. Из этого режима процессор выводится операцией сброса или внешним прерыванием.

Сторожевой таймер (WatchDog Timer, WDT) — это устройство, отслеживающее, работает ли система или зависла. В его счетчик загружается некоторое значение, соответствующее заданному временному интервалу. После инициализации таймер начинает обратный отсчет времени, равный этому временному интервалу. Если до конца заданного интервала процессор не перезагрузит счетчик таймера, то последний вызовет процедуру перезагрузки системы.

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

Широтно-импульсный (ШИМ, PWM) генератор предназначен для формирования выходных сигналов с фиксированной, заданной пользователем несущей частотой и регулируемой скважностью. ШИМ-генераторы применяются как для прямого цифрового управления ключами силовых преобразователей для двигателей, так и для простых схем цифро-аналоговых преобразователей. ШИМ характеризуются разрядностью, обычно совпадающей с разрядностью МК, и числом выводов от 1 до 8.

СЕМЕЙСТВО MICROCHIP PIC10

Семейство PIC10 — дешевые и экономичные 8-разрядные МК, ориентированные на простые задачи. Тактовая частота этого семейства — 4 МГц, при этом их производительность доходит до 1 MIPS. Семейство характеризуется 12-битным словом команд и двухуровневой глубиной стека. При этом МК семейства PIC10 чрезвычайно компактны: за счет использования последовательного интерфейса число контактов ИМС удалось уменьшить до 6. При этом в PIC10 встроен блок внутрисхемного программирования, а также блок внутрисхемной отладки. В качестве ПЗУ в МК семейства PIC10 применяется Flash, а низкое энергопотребление позволяет использовать эти МК в изделиях с питанием от батарей.

Как и все микроконтроллеры PICmicro, семейство PIC10 построено по RISC-архитектуре. В совокупности с гарвардской архитектурой и очередью команд это позволило добиться очень высокого быстродействия и получить очень компактный код. Все команды микроконтроллера, за исключением команд перехода, выполняются за один машинный цикл, который составляет 4 периода тактового генератора. МК PICmicro, в том числе и PIC10, не требуют традиционных внешних цепей для формирования сигнала сброса, так как вырабатывают его автоматически при включении питания или при подаче внешнего сигнала сброса.

Структурная схема МК семейства PIC10 приведена на рис. 1.

Рис. 1. Структурная схема микроконтроллера семейства PIC10

Рис. 1. Структурная схема микроконтроллера семейства PIC10

ПЗУ (ROM) в МК серии PIC10 имеет объем 256 или 512 слов (регистров). Разрядность одного слова составляет 12 бит. ОЗУ (RAM) организовано в виде регистрового файла. Этот файл разделен на две функциональные группы: регистры специального назначения (SFR) и регистры общего назначения (GPR). Регистры специального назначения на структурной схеме показаны отдельно от ОЗУ и включают:

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

Регистры общего назначения используются для хранения данных. Доступ к ним осуществляется с помощью инструкций программы и регистра-указателя.

Регистр-указатель (File Select Register, FSR) предназначен для выбора активного банка ОЗУ. В МК PIC также предусмотрен регистр непрямой адресации (Indirect Data File, INDF), неразрывно связанный с регистром-указателем. Физически регистра INDF не существует, однако попытка доступа к нему приведет к работе с регистром, адрес которого размещен в регистре-указателе.

Программный счетчик (Program Counter, PC). Следует отметить, что в PIC10 программный счетчик имеет на один разряд больше, чем требуется для полноценной адресации в пределах ПЗУ программ. Например, если на кристалле расположено 256 слов ПЗУ, то счетчик является 9-разрядным и способен адресовать область памяти в 512 слов. При этом попытка доступа в области с 256 по 511 слово приведет к переходу в начало ПЗУ (в англоязычной литературе — wraparound), то есть вместо 256-го слова будет получен доступ к нулевому, вместо 257-го — к первому и т.д.

Рабочий регистр (W Register). Этот регистр используется для операций, проводимых АЛУ. Многие блоки МК имеют доступ к этому регистру, однако он не является адресуемым регистром и, соответственно, недоступен для программиста. Регистр калибровки осциллятора (Oscillator Calibration Register, OSCCAL) используется для настройки внутреннего тактового генератора. Менять значение, записанное туда, нельзя, так как это приведет к некорректной работе контроллера. При этом сброс МК очищает этот регистр, поэтому его значение следует сохранять заранее.

Компаратор (Comparator) представляет собой аналоговый компаратор, управляемый соответствующим регистром. Входы и выход компаратора мультиплексированы с линиями общего назначения с целью снижения числа контактов ИМС. Таймер сброса устройства (Device Reset Timer, DRT). Этот таймер запускается при включении МК и работает с внутренним тактовым генератором. Пока DRT остается активным, МК находится в режиме сброса. Это необходимо для того, чтобы внутренний тактовый генератор успел стабилизироваться, а уровень питания VDD — превысить VDDMIN. Длительность периода, в течение которого работает таймер, может меняться, при этом типовой период для PIC10 составляет 18 мс.

СЕМЕЙСТВО MICROCHIP PIC12

Как и предыдущее семейство, МК PIC12 ориентированы на несложные задачи и являются очень дешевым. Однако производительность этих МК существенно выше и доходит до 5 MIPS. Слово команд расширено до 14 бит, а в стеке теперь восемь уровней. МК этого семейства также обзавелись интегрированным 10-канальным АЦП и набором таймеров, при этом не слишком изменившись в размерах — всего лишь до 8 контактов. В качестве ПЗУ в МК этого семейства может применяться как EEPROM, так и Flash. Аналогично PIC10, семейство PIC12 имеет невысокое энергопотребление, но при этом еще и допускает широкий диапазон питающих напряжений (с понижением питания до 2,5 В). Эти свойства делают PIC12 хорошим выбором при создании устройств, работающих с батареями.

Этот МК позволяет также использовать встроенный модуль передатчика на диапазон 433 МГц с мощностью излучения 5 мВт. Cтруктура МК семейства PIC12 имеет много общего со структурой PIC10. Отличия можно разделить на две группы: количественные отличия и структурные отличия.

К количественным отличиям относятся:

  • увеличение разрядности шины программ;
  • увеличение глубины стека;
  • увеличение количества регистров общего назначения (и, соответственно, размера ОЗУ);
  • увеличение количества линий ввода/вывода.

Теперь рассмотрим структурные отличия.

ЭСППЗУ (EEPROM) предназначено для хранения данных и может быть перезаписано в ходе выполнения программы. Оно не входит в адресное пространство МК, соответственно, доступ осуществляется через четыре специализированных регистра:

  • регистр EEDAT — содержащий данные для чтения/записи;
  • регистр EEADR — содержащий адрес ячейки в ЭСППЗУ;
  • регистр EECON1 (не входит в схему) — хранящий данные о направлении обмена;
  • регистр EECON2 (не входит в схему, физически не существует) — используемый исключительно в ходе записи данных в ЭСППЗУ.

Блок сброса по превышению питания (Brown-Out Detect). Назначением этого блока является защита ИМС от выгорания при превышении допустимого уровня питания. Если напряжение питания превышает заданный порог, этот блок генерирует сигнал сброса.

Внутренний тактовый генератор (Internal Oscillator Block) — это управляемый генератор колебаний. Некоторые модели МК могут иметь несколько таких генераторов. Они применяются в качестве внутреннего источника колебаний или в качестве “резерва” на случай остановки внешнего генератора. Логика МК способна переключаться между внутренними и внешними источниками колебаний.

Модуль захвата, сравнения и ШИМ (Capture/Compare/PWM Module) содержит 16-разрядный регистр CCPR1, имеющий следующие применения:

  • регистр захвата;
  • регистр сравнения;
  • регистр управления ШИМ.

В качестве ввода/вывода этого модуля используется контакт CCP1.

АЦП (Analog-to-Digital Converter, ADC) — это микроконтроллеры семейства PIC12, в отличие от младшего семейства PIC10, обладают интегрированным АЦП. Аналоговые входы АЦП мультиплексированы. В качестве эталонного постоянного напряжения может использоваться как напряжение питания ИМС VDD, так и отдельный сигнал эталонного напряжения VREF. Таймер запуска осциллятора (Oscillator Start-Up Timer, OST). Этот таймер включается по окончании периода работы таймера сброса устройства, а также при изменении тактовой частоты. Он отчитывает 1024 такта, используя вход OSC1, чтобы дать тактовому генератору время для запуска и стабилизации. В ходе этих 1024 тактов программный счетчик не изменяет свое состояние и выполнение команд приостанавливается.

СЕМЕЙСТВО MICROCHIP PIC14

Это семейство является обособленным — в него входит всего один микроконтроллер PIC14000.

Его структура схожа со структурой PIC12, однако PIC14000 имеет значительно большее количество контактов, а также существенные отличия в области периферийных устройств. В частности, в PIC14000 используется 16-разрядный дифференциальный АЦП, встроенный сенсор температуры, а также опорные генераторы, управляемые программно. Также следует обратить внимание, что в этом МК сторожевой таймер использует свой собственный генератор тактовой частоты на случай проблем с основным, также управляемым программно. PIC14000 ориентирован на цифровую обработку сигналов, измерение температуры, обмен данными через последовательные интерфейсы и на применение в приложениях с пониженным энергопотреблением. Основной недостаток — отсутствие Flash-памяти, то есть возможно только однократное программирование.

Cтруктура PIC14 основана на структуре младших семейств PICmicro. При этом разрядность шин и глубина стека МК семейства PIC14 аналогичны параметрам семейства PIC12, а объем ПЗУ и ОЗУ больше, чем в PIC12.

Рассмотрим структурные отличия между PIC14 и младшими семействами PICmicro.

Порты (I/O Ports) — вместо блока ввода/вывода, используемого в младших семействах, в PIC14 обмен данными осуществляется через набор портов. При этом отдельные линии могут работать в качестве аналоговых входов и присоединены к АЦП.

Таймер подачи питания (Power-Up Timer, PWRT) — это таймер, функция которого практически идентична функции таймера сброса устройства. Этот таймер запускается при подаче питания на МК и, пока он активен, ИМС находится в состоянии сброса. В серии PIC14 этот состояние длится около 72 мс.

Программируемые опорные генераторы (Programmable References) предназначены для выдачи эталонного сигнала с заданным уровнем напряжения. Каждый из этих генераторов построен с применением матрицы резисторов и синхронизирован с опорным генератором.

Регулятор напряжения (Voltage Regulator Support) используется в дешевых устройствах и позволяет получить нужный ИМС уровень питания, если таковой недоступен. При этом VREG присоединяется к внешнему резистору.

Дифференциальный АЦП (Slope A/D) — МК серии PIC14 содержат набор аналоговых компонентов для создания дифференциального АЦП. В этот набор входят:

  • компаратор;
  • программируемый (4 разряда) источник тока;
  • 16-канальный аналоговый мультиплексор;
  • 16-канальный таймер с регистром захвата.

Каждый канал при этом преобразуется независимо.

Датчик температуры (Temp Sensor) представляет собой интегрированный измеритель температуры, подключаемый к одному из каналов АЦП. Данные о калибровке датчика температуры хранятся в ПЗУ. Обычно 25°С соответствует напряжение около 1,05 В, а температурный коэффициент составляет примерно 3,7 мВ/°С.

Опорный генератор (Bandgap Reference) предназначен для генерации постоянного напряжения, используемого АЦП в качестве эталонного. Данные об уровне напряжения хранятся в ПЗУ МК.

Контроллер I2C (I2C Serial Port) применяется для передачи данных через интерфейс I2C. Таким образом PIC14 несложно запрограммировать на обмен данными с другими МК, последовательными ПЗУ, регистрами сдвига, внешними АЦП и другими устройствами через этот двухпроводной интерфейс.

СЕМЕЙСТВО MICROCHIP PIC16

Это семейство, напоминающее PIC12, — универсальные МК с хорошей производительностью и богатым ассортиментом функциональных возможностей. Семейство PIC16 является самым многочисленным представителем PICmicro, и ему свойственна самая разнообразная номенклатура корпусов и периферии. Одно слово команд, по-прежнему, имеет размер 14 бит, а стек — 8 уровней. Однако ОЗУ в этих МК организовано в виде регистрового файла. Максимальная скорость выполнения команд составляет 5 MIPS на частоте 20 МГц, система команд включает 35 инструкций. В качестве периферийных устройств в этом семействе присутствуют ОЗУ (до 384 байт), двунаправленные порты ввода/вывода с током нагрузки до 25 мА, таймеры-счетчики, компараторы, 8-битные АЦП, последовательные интерфейсы (I2C и SPI), устройства выборки и сравнения (компараторы), генераторы сигналов с ШИМ, контроллер ЖКИ, параллельный порт, программируемые источники опорного напряжения, сторожевой таймер и т.д . Допускаетс я широкий д иапазон питающих напряжений с нижней границей напряжения — 2,0 В.

Структура PIC16 построена по тем же принципам, что и у младших семейств PICmicro. Как и в случае с другими семействами, в PIC16 увеличена тактовая частота, а также объем ПЗУ и ОЗУ, добавлены новые управляющие регистры. Существует также и ряд структурных особенностей этого семейства.

Порты (I/O Ports). Как и в PIC14, обмен данными между МК и внешними устройствами осуществляется через набор портов. При этом отдельные линии могут работать в качестве аналоговых входов и присоединены к АЦП. При этом в отличие от младших семейств PICmicro все порты PIC16 являются двунаправленными.

Синхронный последовательный порт (Synchronous Serial Port, SSP) — это блок, объединяющий в себе контроллеры I2C и SPI. Назначение его аналогично назначению контроллера I2C в PIC14, однако наличие интерфейса SPI позволяет расширить функциональные возможности этого МК.

Контроллер ЖКИ (LCD Module) генерирует тактирующие и управляющие сигналы для внешнего ЖК-ин-дикатора. Для управления контроллером МК использует управляющие регистры LCDON, LCDSE и LCDPS, а также регистры данных LCD[00:15], содержащие информацию об изображении на индикаторе.

В рамках данной статьи ограничимся уже сказанным, но в “Энциклопедии электронных компонентов. Том 1” можно получить более подробную информацию и по семействам других производителей МК, например, производства Intel и Motorola. А также познакомиться с цифровыми квадратурными преобразователями, ПЛИСами, цифровыми сигнальными процессорами и многими другими классами БИС.

www.chip-news.ru (c)

другие статьи другие статьи

Комментарии

Комментариев нет. Ваш комментарий будет первым.


Чтобы оставить свой комментарий Вам необходимо зарегистрироваться.



Моя корзина
ваша корзина пуста
Розничные заказы:
(3822) 566-300
(3822) 562-300
Оптовые заказы:
(3822) 55-65-30
(3822) 55-95-73
Факс:
(3822) 56-08-97

Полезные ссылки

Все статьи
Техническая документация
FTP-сервер
Каталог продукции

| Новости | Программа поставок | Электронная библиотека | Форум | О компании | Контакты | WAP |

Платан - официальный поставщик Поиск электронных компонентов ChipFind: поисковая система по поставщикам радиокомпонентов Поиск электронных компонентов CATALOG.METKA.RU
дизайн: Анна Кубарева программирование: Дмитрий Завражнов © ООО Элград 2007-2010