Характеристика микроконтроллера одного из семейств

 

Министерство образования и науки Калужской области

Государственное бюджетное образовательное учреждение среднего профессионального образования Калужской области

«Сосенский радиотехнический техникум»

(ГБОУ СПО «СРТ»)










КУРСОВОЙ ПРОЕКТ

по дисциплине МДК 02.01 «Микропроцессорные системы»

На тему: Характеристика микроконтроллера одного из семейств




Разработал: Верхоламов Павел Михайлович

Группа: КСК31- 12

Специальность: 230113 «Компьютерные системы и комплексы»








Введение


Микроконтроллер (англ. Micro Controller Unit, MCU) - микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает на одном кристалле функции процессора и периферийных устройств, содержит ОЗУ и (или) ПЗУ. По сути, это однокристальный компьютер, способный выполнять относительно простые задачи. С появлением однокристальных микро-ЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления. По-видимому, это обстоятельство и определило термин «контроллер» (англ. controller - регулятор, управляющее устройство).

В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» (МК) вытеснил из употребления ранее использовавшийся термин «однокристальная микро-ЭВМ». Первый патент на однокристальную микро-ЭВМ был выдан в 1971 году инженерам М. Кочрену и Г. Буну, сотрудникам американской Texas Instruments. Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода. В 1976 году американская фирма Intel выпускает микроконтроллер i8048. В 1978 году фирма Motorola выпустила свой первый микроконтроллер MC6801, совместимый по системе команд с выпущенным ранее микропроцессором MC6800. Через 4 года, в 1980 году, Intel выпускает следующий микроконтроллер: i8051.

Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием - в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086. На сегодняшний день (10 октября 2013) существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов.

Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры, архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства. Несмотря на популярность в России микроконтроллеров упомянутых выше, по данным Gartner Grup от 2009 года мировой рейтинг по объёму продаж выглядит иначе: первое место с большим отрывом занимает Renesas Electronics на втором Freescale, на третьем Samsung, затем идут Microchip и TI, далее все остальные. В СССР велись разработки оригинальных микроконтроллеров, также осваивался выпуск клонов наиболее удачных зарубежных образцов.

В 1979 году в СССР НИИ ТТ разработали однокристальную 16-разрядную ЭВМ К1801ВЕ1, микроархитектура которой называлась «Электроника НЦ». При проектировании микроконтроллеров приходится соблюдать баланс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно. Поэтому существует огромное количество типов микроконтроллеров, отличающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т. д.

В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных и команд в ОЗУ и ПЗУ соответственно. Кроме ОЗУ, микроконтроллер может иметь встроенную энергонезависимую память для хранения программы и данных. Во многих контроллерах вообще нет шин для подключения внешней памяти. Наиболее дешёвые типы памяти допускают лишь однократную запись. Такие устройства подходят для массового производства в тех случаях, когда программа контроллера не будет обновляться. Другие модификации контроллеров обладают возможностью многократной перезаписи энергонезависимой памяти. Ограничения по цене и энергопотреблению сдерживают также рост тактовой частоты контроллеров. Хотя производители стремятся обеспечить работу своих изделий на высоких частотах, они, в то же время, предоставляют заказчикам выбор, выпуская модификации, рассчитанные на разные частоты и напряжения питания. Во многих моделях микроконтроллеров используется статическая память для ОЗУ и внутренних регистров. Это даёт контроллеру возможность работать на меньших частотах и даже не терять данные при полной остановке тактового генератора.

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

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

Используются также встроенные интерпретаторы Бейсика. Для отладки программ используются программные симуляторы (специальные программы для персональных компьютеров, имитирующие работу микроконтроллера), внутрисхемные эмуляторы (электронные устройства, имитирующие микроконтроллер, которые можно подключить вместо него к разрабатываемому встроенному устройству) и интерфейс JTAG

Цель курсового проекта: закрепить знания по данной теме.

Задача: изучить характеристику микроконтроллера одного из семейств


1. Основная часть


.1 Семейство XC166


В семейство XC166 входят шестнадцатиразрядные микроконтроллеры, которые могут совместно выполнять функции встроенного управляющего устройства и цифрового сигнального процессора (DSP). В состав семейства входят микроконтроллеры семи типов (апрель 2005г.). Типы микроконтроллеров перечислены в таблице 1 в порядке возрастания их функциональной сложности


Таблица 1

Тип МКPinExMPPI/0CANIICSDLMCCUCCU6ADCXC164CM64 447+ 10+14XC164N100+779 12+ XC164D100+779+ 12+ XC164S100+779 12+14XC164CS100+779+ 12+14XC161CJ144+1099+++32 12XC167CI144+10103++ 32+16

В таблице указано число выводов корпуса (Pin), отмечены возможность подключения внешней памяти (ExM) и наличие различных периферийных устройств и приведены их основные характеристики у микроконтроллеров разных типов. Устройства, которые имеются у микроконтроллеров всех типов, в таблице не указаны. Микроконтроллер семейства XC166 имеет процессорное ядро С166S V2. Выборка команд из памяти программ выполняется по принципу двухэтапного конвейера, при этом команды перехода выполняются без затраты специальных тактов в ходе программы (Zero-Cycle Jump Execution). Выполнение команд организовано по принципу пятиэтапного конвейера, при этом расчетное время выполнения команды для определения быстродействия процессора оказывается равным длительности одного периода тактового сигнала. Выпускаются микроконтроллеры, которые могут работать с тактовой частотой до 20 МГц и до 40 МГц. В качестве памяти программ используется запоминающее устройство Flash-типа емкостью 128 КВ или 64 КВ. Микроконтроллеры семейства XC164CS выпускаются в двух модификациях - с памятью типа Flash и типа MaskROM.

Для хранения данных и части программы используются статические оперативные запоминающие устройства суммарной емкостью 6 КВ или 8 КВ. К микроконтроллерам всех типов кроме XC164CM могут подключаться внешние запоминающие устройства общей емкостью до 12 МВ.

Для ввода и вывода данных у микроконтроллеров имеются:

1)четыре, семь или десять параллельных портов (РР) с суммарным числом входов-выходов (I/0) от 47 до 103,

2)два асинхронных канала ASC0 и ASC1, каждый из которых представляет собой универсальный синхронно-асинхронный приемопередатчик (USART),

)два синхронных последовательных канала SSC0 и SSC1, выполняющие обмен данными по интерфейсу SPI (Serial Peripheral Interface).

У микроконтроллеров некоторых типов имеются дополнительные устройства для ввода и вывода данных:

1)модуль, содержащий два блока приема и передачи сообщений в сети, работающей по CAN-протоколу (Twin CAN Module),

2)блок последовательного обмена данными по протоколу IIC (Inter Integrated Circuit),

)модуль SDLM (Serial Data Link Module) для последовательного обмена данными в сети, работающей по протоколу J1850.

Для формирования выходных импульсных сигналов и определения характеристик входных импульсных сигналов у микроконтроллеров имеются один или два блока захвата-сравнения CCU (Capture - Compare Unit) с суммарным числом входов и выходов от 10 до 32 и блок захвата-сравнения CCU6, имеющий 7 выводов. С использованием блока CCU6 может формироваться трехфазный сигнал PWM. У микроконтроллеров некоторых типов имеется аналого-цифровой преобразователь (ADC) с числом входов от 12 до 16, формирующий десятиразрядный или восьмиразрядный двоичный код.

Кроме того, у микроконтроллеров всех типов имеются:

1)пять таймеров общего назначения, входящих в состав блока таймеров общего назначения (GPT),

2)таймер реального времени (RTC),

)сторожевой таймер (WDT),

)сторожевой генератор (OWD).

Для проведения отладки программы у микроконтроллеров всех типов имеется блок OCDS (On-Chip Debug Support). Выводы блока подключаются к внешнему устройству, управляющему отладкой, по интерфейсу JTAG.

У микроконтроллеров типа XC161CJ и XC164CS на кристалле имеются дополнительные выводы (Emulator interface), с использованием которых в заводских условиях выполняется соединение кристалла с другим кристаллом NETCarrier Chip. После соединения оба кристалла помещаются в общий корпус. Полученное изделие (Emulation Device, ED) устанавливается на плате вместо обычного микроконтроллера. При этом отладка программы выполняется по новой эмуляционной технологии (NET). В систему команд микроконтроллеров семейства XC166 входят все команды системы команд микроконтроллеров семейства С166 и дополнительные команды, по которым выполняются операции DSP и дополнительные операции управления ходом программы.


.2 Средства разработки программ


Для приобретения начальных навыков разработки программ для микроконтроллеров семейства ХС166 фирма Infineon предлагает набор аппаратных и программных средств. В набор входят:

1)отладочная плата (Evaluation board) XC16Board REV200 с установленным на ней микроконтроллером типа XC161CJ или XC164CS или XC167CI,

2)компакт-диск SK-XC16x-V20 фирмы Infineon с техническими описаниями отладочной платы и микроконтроллеров, которые могут быть на ней установлены,

)компакт-диск Taskingcd фирмы Altium с программной системой Tasking EDE (Embedded Development Environment),

)компакт-диск Ude V1 80 фирмы pls с программной системой UDE (Universal Debug Engine),

)компакт-диск hitex фирмы hitex с программной системой HiTOP,

)компакт-диск Trace 32 - infxc 164 фирмы LAUTERBACH с программной системой TRACE 32.

Все предлагаемые программные системы предназначены для разработки программ для микроконтроллеров многих типов, выпускаемых различными фирмами. Все представленные на дисках программные системы являются демонстрационными версиями соответствующих программных систем. При разработке программ для микроконтроллеров семейства XC166 также может быть использован компакт-диск Infineon-10-2005 фирмы ЭФО. На диске представлены технические описания (Users Manuals и Data Sheets) микроконтроллеров семейства XC166 и программная система DAvE фирмы Infineon.


2. Семейство 16-разрядных микроконтроллеров Motorola 68HC12


В конце 1997 года компания Motorola начала выпуск нового семейства 16-разрядных микроконтроллеров 68HC12. Оно имеет ряд специфических особенностей, заинтересовавших многих производителей электронной аппаратуры различного назначения. К числу особенностей 68HC12 относятся:

1)архитектурная совместимость с широко используемым семейством 8-разрядных микроконтроллеров 68HC11

2)расширенный набор команд и способов адресации, обеспечивающих реализацию управления с использованием 'нечеткой логики', поддержку языков высокого уровня и ряд других дополнительных возможностей;

3)улучшенные технические характеристики: высокая производительность, пониженное энергопотребление, расширенный объём адресуемой памяти, введение сложнофункциональных периферийных устройств;

)наличие встроенных средств отладки, существенно упрощающих процесс разработки систем на базе этих микроконтроллеров.

Семейство 68HC12 интенсивно расширяется. В настоящее время в него входят семь моделей микроконтроллеров, отличающихся объёмом внутренней памяти и номенклатурой размещённых на кристалле периферийных устройств (таблица 1).

Микроконтроллеры 68HC12A0, не имеющие внутренней памяти программ, ориентированы на применение в системах, использующих для хранения программ внешнюю память. Модель 68HC12BE32 с масочно-программируемой внутренней памятью ёмкостью 32 Кбайт предназначена для производства изделий массовых серий. Модель 68HC812A4 отличается большим количеством портов ввода/вывода и использованием внутренней электрически-репрограммируемой памяти ёмкостью 4 Кбайт, которая служит обычно для хранения программ или их фрагментов. В последние годы широкое распространение получили модели серии 68HC912, содержащие на кристалле Flash-память ёмкостью от 32 до 128 Кбайт. Все микроконтроллеры содержат на кристалле статическую память SRAM ёмкостью от 1 до 8 Кбайт для хранения данных. Большинство моделей имеют также блок энергонезависимой памяти EEPROM ёмкостью от 768 байт до 4 Кбайт. Для связи с внешними устройствами микроконтроллеры имеют от 8 до 12 параллельных портов и различные виды последовательных интерфейсов.

Микроконтроллеры семейства 68НС12 имеют модульную структуру, которая реализуется из набора отдельных функциональных модулей, взаимодействующих с помощью стандартизованной межмодульной шины. Набор этих модулей включает:

) 8-канальный таймерный модуль;

) модуль формирования ШИМ-сигналов с 2 или 4 выходными каналами;

) модуль последовательного обмена, включающий один или два асинхронных интерфейса (SCI) и синхронный интерфейс (SPI);

) модуль интерфейса CAN-шины;

) модуль интерфейса I2C-шины;

) модуль последовательного обмена по протоколу J1850;

) многоканальный АЦП.


.1 Структура и функционирование микроконтроллеров HC12


Микроконтроллеры семейства 68HC12 содержат на кристалле 16-разрядный процессор (CPU12), внутреннюю память одного или нескольких типов (ROM, FLASH, EEPROM, SRAM), модуль интеграции (LIM) и некоторый набор периферийных модулей. В качестве примера на рисунке 1 представлена структура микроконтроллера МС68НС812А4.

Рисунок 1


В системах и устройствах микроконтроллеры могут работать в однокристальном (Single-Chip) или расширенном (Expanded) режимах. В однокристальном режиме микроконтроллер использует для хранения программ и данных только внутреннюю память. В расширенном режиме к микроконтроллеру подключается внешняя память, обмен с которой производится по 8- или 16-разрядной системной шине данных. При этом 8-разрядные порты ввода/вывода A и B служат для выдачи 16 разрядов адреса ADDR15-0, порты C и D - для пересылки 16 разрядов данных DATA15-0 (при 8-разрядной системной шине используется только порт C), порт E - для передачи сигналов управления обменом.

Таким образом, в расширенном режиме количество портов для обмена данными с внешними устройствами значительно сокращается. Микроконтроллеры 68НС12А0 и 68НС812А4 при работе в расширенном режиме обеспечивают возможность увеличения адресного пространства до 4 Мб памяти команд и 1 Мб памяти данных. Кроме того, микроконтроллеры реализуют четыре различных специальных режима, которые используются на стадиях отладки программы и тестирования кристалла. CPU12 является высокопроизводительным 16-разрядным процессором, который выполняет обработку битовых, 8- и 16-разрядных операндов. Регистровая модель CPU12 полностью аналогична модели процессорного ядра микроконтроллеров 68HC11 и содержит семь программно-доступных регистров (рисунке 2).

Два 8-разрядных регистра-аккумулятора A и B используются для хранения операндов и результата операции. При выполнении действий над 16-разрядными операндами эти регистры объединяются в один 16-разрядный аккумулятор D. Два 16-разрядных индексных регистра X и Y используются для формирования адреса операнда при выполнении операций с индексной адресацией. Указатель стека SP содержит 16 разрядов и может использоваться не только для работы со стеком, но и для реализации индексной адресации. Программный счётчик PC содержит адрес следующей выполняемой команды. Этот регистр также служит для формирования адреса операнда в ряде вариантов индексной адресации.

Регистр условий CCR содержит значения признаков переноса (С), переполнения (V), нуля (Z), отрицательного результата (N) и переноса между тетрадами (H), устанавливаемых по результатам выполнения операции. Также CCR содержит биты маскирования прерываний I и X и управляющий бит S, который при установке значения S = 1 запрещает перевод микроконтроллера в режим останова по команде STOP


Рисунок 2


Внутренняя шина адреса микроконтроллеров семейства 68НС12 позволяет линейно адресовать 64 К памяти. В этом адресном пространстве располагаются блок ОЗУ, блок ПЗУ (EEPROM, FLASH или ROM) и блок регистров периферийных устройств и служебных регистров ёмкостью 512 байт. Остальное адресное пространство отводится для работы с внешней памятью. Распределение адресного пространства между различными блоками памяти зависит от режима функционирования микроконтроллера (рисунке 3). Пользователь может изменить положение блоков внутренней памяти в адресном пространстве путём записи нового значения в специальные регистры, содержащие начальные адреса этих блоков.


Рисунок 3


Ряд микроконтроллеров семейства (МС68НС12А0, МС68НС812А4) имеет возможность увеличить адресное пространство в расширенном режиме до 4 Мб памяти команд и 1 Мб памяти данных. Увеличение объёма адресуемой памяти осуществляется путём использования окон расширения, расположенных в стандартном 64-Кб пространстве памяти, и шести дополнительных адресных линий ADDR21-16. Адресация внешней памяти объёмом свыше 64 Кб осуществляется посредством механизма страничной трансляции, для чего каждое окно расширения имеет свой регистр, содержащий адрес текущей страницы. При обращении по адресу, попадающему в окно расширения, соответствующие разряды этого регистра выводятся на старшие линии шины адреса ADDR21-16.

Для организации банков внешней памяти наряду со страничной адресацией микроконтроллеры могут формировать сигналы выборки кристалла CS. Эти сигналы становятся активными при обращении по адресам, расположенным в определённых разделах адресного пространства. Для вывода сигналов CS используются линии порта F. Микроконтроллеры семейства 68HC12 могут работать в специальном режиме отладки BDM (Background Debug Mode), который обеспечивает выполнение основных процедур отладки - просмотр и модификацию содержимого регистров и ячеек памяти и ряд других функций.

Вход в режим BDM обеспечивается с помощью команды BGND и может быть осуществлён из любого режима функционирования. Часть команд BDM может выполняться без перевода микроконтроллера в режим отладки. После перевода микроконтроллера в этот режим процессор работает под управлением программы-отладчика, хранящейся во внутреннем ПЗУ, которое отображается на карту памяти только в режиме BDM (рисунок 3). Отличительные черты BDM для данного семейства: простой набор команд отладки и использование однопроводного интерфейса для взаимодействия с системой отладки. Процессор CPU12 реализует ряд прерываний, для каждого из которых задается 16-разрядный вектор, указывающий адрес входа в соответствующую процедуру обработки. Таблица векторов прерываний занимает старшие 128 байт адресного пространства (таблица 2).

Старшие шесть позиций таблицы отведены под векторы начальной загрузки и немаскируемых прерываний, а остальные распределяются между маскируемыми источниками прерываний. При переходе к обслуживанию прерываний в стеке сохраняется содержимое регистров PC, Y, X, A, B, CCR, которое восстанавливается при возврате из подпрограммы обслуживания по команде RTI.


Таблица 1

Адрес вектораВид прерыванияМаскирование$FFFE-FУстановка в начальное состояние (Reset)нет$FFFC-DПрерывание от схемы контроля тактового сигналанет$FFFA-BПрерывание от сторожевого таймеранет$FFF8-9Неправильный код операциинет$FFF4-5Внешний запрос на входе XIRQбит X

Таблица 2

Адрес вектораВид прерыванияМаскированиеАдрес вектораВид прерыванияМаскирование$FFF2-3Внешний запрос на входе IRQ или сигнал на линии порта Dбит I$FFDE-FПереполнение таймерабит I$FFF0-1Периодическое прерывание от таймерабит I$FFDC-DПереполнение счётчика импульсовбит I$FFEE-FЗапрос от таймера (канал 0)бит I$FFDA-BСигнал на входе счётчика импульсовбит I$FFEC-DЗапрос от таймера (канал 1)бит I$FFD8-9Запрос от SPIбит I$FFEA-BЗапрос от таймера (канал 2)бит I$FFD6-7Запрос от SCI 0бит I$FFE8-9Запрос от таймера (канал 3)бит I$FFD4-5Запрос от SCI 1бит I$FFE6-7Запрос от таймера (канал 4)бит I$FFD2-3Запрос от АЦПбит I$FFE4-5Запрос от таймера (канал 5)бит I$FFD0-1Внешний сигнал на линии порта Jбит I$FFE2-3Запрос от таймера (канал 6)бит I$FFCE-FВнешний сигнал на линии порта Hбит I$FFE0-1Запрос от таймера (канал 7)бит I$FF80-DЗарезервировано

К немаскируемым источникам прерываний относятся: сигнал сброса на входе Reset, прерывание от схемы контроля частоты тактового сигнала, прерывание от сторожевого таймера, попытка выполнить неправильную команду, программное прерывание по команде SWI, внешний сигнал прерывания на входе XIRQ. Эти прерывания перечислены в порядке убывания приоритета их обслуживания. Обращение к одному из первых трёх векторов вызывает выполнение процедуры начальной загрузки микроконтроллера. Обслуживание запроса прерывания XIRQ производится в том случае, если в регистре CCR установлено значение бита X = 0. Разрешение обслуживания маскируемых прерываний осуществляется путём установки в 0 бита I в регистре CCR. К маскируемым источникам прерываний относятся: внешний сигнал прерывания на входе IRQ, прерывания от таймера, прерывания от блока последовательного интерфейса и от АЦП. В отличие от немаскируемых прерываний приоритет их обслуживания можно изменить с помощью специального регистра установки приоритетов. Микроконтроллеры семейства 68HC12 работают на тактовой частоте до 8 МГц и выпускаются в двух модификациях: для работы при напряжении питания 4,5-5,5 и 2,7-3,3 В. Блок фазовой автоподстройки частоты (ФАПЧ), расположенный на кристалле микроконтроллера, позволяет программно задавать частоту системы. Схема контроля тактового сигнала вызывает перезапуск (начальную загрузку) микроконтроллера, если его тактовая частота оказывается ниже 100 КГц. Перезапуск осуществляется также по сигналу сторожевого таймера, контролирующего выполнение программы.

Значительное снижение энергопотребления микроконтроллеров обеспечивается в режимах ожидания (Wait Mode) и останова (Stop Mode), в которые микроконтроллер переходит по командам WAIT и STOP соответственно. В режиме ожидания останавливается работа процессора, но продолжается функционирование периферийных модулей: таймера, последовательного интерфейса, АЦП, сторожевого таймера, а также схемы контроля прерываний. Выход из режима ожидания обеспечивается при поступлении запроса прерывания или внешнего сигнала начальной загрузки (Reset). В режиме останова полностью прекращается функционирование процессора и периферийных модулей. При этом возврат в рабочий режим осуществляется внешними сигналами Reset или IRQ. Кроме того, для возврата из режимов ожидания и останова можно использовать сигналы KWD7-0, KWJ7-0, KWH7-0, поступающие на выводы портов D, J, H, запрограммированные соответствующим образом. В режиме ожидания потребление мощности составляет 40-50% от мощности, потребляемой в рабочем режиме. В режиме останова ток питания снижается до нескольких десятков микроампер.


.2 Способы адресации и система команд


Микроконтроллеры семейства 68НС12 являются 16-разрядным развитием 8-разрядного семейства 68HC11. Программный код 68НС12 снизу вверх совместим с кодом 68HC11 на уровне исходного текста. Поэтому разработчики, применяющие в качестве элементной базы представителей этого популярного 8-разрядного семейства, могут без особых проблем перейти на 16-разрядные микроконтроллеры, используя имеющиеся средства программирования для 68HC11 и ранее разработанное программное обеспечение. Процессор CPU12 поддерживает все способы адресации, используемые семейством 68НС11, и реализует 7 дополнительных вариантов индексной адресации. Обеспечиваются следующие способы адресации:

1)регистровая (операнд располагается в одном из регистров процессора);

2)непосредственная (8- или 16-разрядный операнд располагается во втором и третьем байтах команды);

)прямая (8-разрядный адрес операнда задаётся во втором байте команды);

)расширенная (16-разрядный адрес операнда располагается во втором и третьем байтах команды);

)относительная (адрес операнда образуется путём сложения содержимого программного счётчика PC и заданного в команде 8- или 16-разрядного смещения);

)индексная с 5-разрядным смещением (адрес операнда образуется путём сложения содержимого регистра X, Y, SP или PC с 5-разрядным смещением);

)индексная с преддекрементом (перед выборкой операнда содержимое заданного в команде регистра X, Y или SP уменьшается на число от 1 до 8);

)индексная с прединкрементом (перед выборкой операнда содержимое заданного регистра X, Y или SP увеличивается на число от 1 до 8);

)индексная с постдекрементом (после выборки операнда содержимое заданного регистра X, Y или SP уменьшается на число от 1 до 8);

)индексная с постинкрементом (после выборки операнда содержимое заданного регистра X, Y или SP увеличивается на число от 1 до 8);

)индексная со смещением, расположенным в аккумуляторе (адрес операнда образуется путём сложения содержимого заданного регистра X, Y, SP или PC с содержимым одного из аккумуляторов);

)индексная с 9-разрядным смещением (адрес операнда образуется путём сложения содержимого заданного регистра X, Y, SP или PC с 9-разрядным смещением);

)индексная с 16-разрядным смещением (адрес операнда образуется путём сложения содержимого заданного регистра X, Y, SP или PC с 16-разрядным смещением);

)косвенно-индексная с 16-разрядным смещением (адрес операнда располагается в ячейке памяти с адресом, который получается путем сложения содержимого заданного регистра X, Y, SP или PC с 16-разрядным смещением);

)косвенно-индексная со смещением, расположенным в регистре D (адрес операнда располагается в ячейке памяти с адресом, который получается путём сложения содержимого заданного регистра X, Y, SP или PC с содержимым регистра D).

Процессор CPU12 выполняет набор из 208 команд над операндами, расположенными в регистрах и ячейках памяти. Система команд CPU12 является расширенным набором команд семейства 68HC11 и включает в себя команды пересылки данных, команды арифметических и логических операций, сравнения и сдвигов, битовые команды, команды управления программой и управления процессором, а также группу дополнительных команд для обработки табличных данных и реализации 'нечёткой логики'.

Группа команд пересылки включает в себя команды загрузки регистров процессора (LDAA, LDAB, LDD, LDS, LDX, LDY), сохранения их содержимого в памяти (STAA, STAB, STD, STS, STX, STY) и команды пересылки и обмена данными между различными регистрами (TAB, TAP, TBA, TFR, TPA, TSX, TSY, TXS, TYS, EXG, XGDX, XGDY). К этой группе относятся также команды, выполняющие запись содержимого регистров A, B, C, D в стек (PSHA, PSHB, PSHX, PSHY) и загрузку этих регистров из стека (PULA, PULB, PULX, PULY). Команды очистки устанавливают в 0 содержимое регистров-аккумуляторов и ячеек памяти (CLRA, CLRB, CLR).

Дополнительно введены команды MOVB и MOVW, позволяющие осуществлять пересылку 8- и 16-разрядных данных из памяти в память, команды LEAS, LEAX, LEAY, выполняющие вычисление эффективного адреса и его загрузку в регистры SP, X или Y, а также команды для записи содержимого регистров D, CCR в стек (PSHD, PSHC) и их загрузки из стека (PULD, PULC). Группа команд арифметических операций позволяет выполнять сложение и вычитание содержимого двух регистров или регистра и ячейки памяти с учётом или без учёта признака переноса (ABA, ABX, ABY, ADCA, ADCB, ADDA, ADDB, ADDD, SBA, SBCA,SBCB, SUBA, SUBB, SUBD), производить коррекцию результата сложения двоично-десятичных чисел (DAA), выполнять инкремент и декремент содержимого ячейки памяти или регистра (DEC, DECA, DECB, DES, DEX, DEY, INC, INCA, INCB, INS, INX, INY), изменять его знак (NEG, NEGA, NEGB).

К командам умножения 8х8 (MUL) и деления 16/8 (FDIV, IDIV, IDIVS), имеющимся в микроконтроллерах семейства 68HC11, добавлены команды 16-разрядного умножения 16x16 (EMUL, EMULS), умножения 16x16 с накоплением (EMACS), деления 32/16 (EDIV, EDIVS) и знакового расширения (SEX). Команды сравнения выполняют установку признаков N, Z, V, C в регистре CCR в соответствии с результатом вычитания содержимого двух операндов, хранящихся в регистрах-аккумуляторах или регистре и ячейке памяти (CBA, CMPA, CMPB, CPD, CPS, CPX, CPY). Команды тестирования устанавливают значения признаков N, Z в соответствии с содержимым ячейки памяти или регистра-аккумулятора (TST, TSTA, TSTB). Команды побитового тестирования устанавливают признаки N, Z в соответствии с результатом логической операции И над содержимым регистра-аккумулятора и ячейки памяти (BITA, BITB).

Команды логических операций реализуют побитовые операции И, ИЛИ, Исключающее ИЛИ над содержимым регистра и ячейки памяти (ANDA, ANDB, ANDCC, EORA, EORB, ORAA, ORAB, ORCC) и инвертирование содержимого регистра или ячейки памяти (COM, COMA, COMB). Группа команд сдвига включает команды одноразрядных арифметических, логических и циклических сдвигов, выполняемых над содержимым регистров-аккумуляторов и ячейки памяти (ASLA, ASLB, ASLD, ASRA, ASRB, LSRA, LSRB, LSRD, ROLA, ROLB, RORA, RORB, ASL, ASR, LSR, ROL, ROR). Команды битовых операций обеспечивают установку в 0 или 1 заданного бита в ячейке памяти (BCLR, BSET) и установку требуемого значения признаков C, I, V в регистре CCR (CLC, CLI, CLV, SEC, SEI, SEV). Команды управления программой реализуют условные и безусловные ветвления (JMP, Bcc, LBcc, BRA, LBRA, BRCLR, BRSET), организацию циклов (DBNE, DBNQ, IBNE, IBNQ), вызов подпрограмм (JSR) и выход из подпрограммы (RTS) или процедуры обработки прерывания (RTI).

Условиями ветвления могут быть значения признаков Z (нулевой или ненулевой результат), N (положительный или отрицательный результат), результаты выполнения команд сравнения операндов со знаком или без знака (>, >=, <, <=). В эту группу входит также команда программного прерывания (SWI). Для управления процессором служат команды, переводящие его в режим ожидания и останова (WAIT, STOP), в режим отладки (BGND), а также команда отсутствия операций (NOP). В дополнительную группу команд, реализуемых процессором CPU12, входят команды интерполяции табличных данных (ETBL, TBL), которые позволяют вычислить значение линейной функции в заданной промежуточной точке. При обработке табличных данных обычно используются также команды, позволяющие выбрать минимальное или максимальное из двух чисел, расположенных в регистре-аккумуляторе и ячейке памяти (EMIND, EMINM, MINA, MINM, EMAXD, EMAXM, MAXA, MAXM).

Процессор CPU12 аппаратно поддерживает операции 'нечеткой логики', что позволяет эффективно реализовывать на базе микроконтроллеров семейства HC12 соответствующие системы контроля. Группа команд 'нечёткой логики' включает четыре команды. Команда MEM производит фазификацию, выполняя преобразование точных значений входных переменных в значения лингвистических переменных в соответствии с функциями принадлежности из базы знаний. Далее с помощью команд REVW и REV проводится непосредственно обработка полученных значений по заданному алгоритму с учётом или без учёта весовых коэффициентов правил обработки.

С помощью команды WAV осуществляется дефазификация, в результате которой осуществляется переход от нечётких значений выходной переменной к точным выходным значениям, обеспечивающим требуемое управление системой. Команды имеют длину от 1 до 6 байт. Выполнение большинства команд занимает от 2 до 6 тактов. Большее время выполнения имеют команды деления (11-12 тактов), умножения с накоплением (13 тактов) и прерывания (8-11 тактов)


.3 Набор периферийных устройств


Из периферийных устройств микроконтроллеры семейства 68HC12 содержат модули параллельного и последовательного ввода/вывода данных, таймерный модуль, многоканальный аналого-цифровой преобразователь (АЦП), модуль формирования сигналов с широтно-импульсной модуляцией (ШИМ). Процессор CPU12 взаимодействует с этими модулями, обращаясь к их регистрам, которые после начальной загрузки микроконтроллера расположены в первых 512 позициях адресного пространства (рисунок 3)


.4 Порты ввода/вывода


Микроконтроллеры семейства 68НС12 имеют в своём составе от 8 до 12 параллельных портов ввода/вывода. Эти порты могут служить для обмена данными с внешними устройствами или выполнять определённые служебные функции. Например, при работе микроконтроллера в расширенном режиме порты A, B, C, D, E служат для организации обмена с внешней памятью. При использовании порта для ввода/вывода данных направление передачи для каждого отдельного вывода программируется путём загрузки соответствующего содержимого в регистр управления этого порта. Выходные буферные каскады портов могут программироваться на работу со стандартной или повышенной задержкой переключения. При увеличении задержки переключения достигается снижение потребления мощности и шумов на линиях. Можно также запрограммировать подключение 'подтягивающих' резисторов к выводам порта, используемым в качестве входов

2.5 Модуль последовательного интерфейса


Для организации последовательного обмена в состав микроконтроллеров включен модуль последовательного интерфейса, который состоит из одного или двух блоков асинхронного обмена SCI и блока синхронного обмена SPI. В состав этого модуля входит 8-разрядный порт S, отдельные линии которого служат для реализации последовательного обмена, а неиспользуемые линии могут служить для параллельного ввода/вывода данных. Блок SCI позволяет осуществлять обмен 8- или 9-разрядными данными по линиям связи с помощью протокола, совместимого с RS-232. Скорость передачи программируется и может достигать 38400 бит/c при тактовой частоте 8 МГц. Блок SPI обычно используется для обмена с периферийными устройствами и другими микроконтроллерами. В некоторых моделях микроконтроллеров имеются дополнительные модули последовательного обмена, реализующие протоколы CAN, I2C или J1850 (таблица 1)


.6 Таймерный модуль


Этот модуль содержит 16-разрядный счётчик с программируемым делителем частоты, 8 каналов, индивидуально настраиваемых на работу в режиме захвата или в режиме сравнения, и 16-разрядный счётчик внешних импульсов. Сигналы захвата-сравнения поступают на выводы 8-разрядного порта T. Неиспользуемые линии этого порта могут служить для ввода/вывода данных. Таймерный модуль может использоваться для генерации периодических прерываний, измерения параметров входных сигналов или генерации выходных сигналов с широтно-импульсной модуляцией (ШИМ) без вмешательства центрального процессора


2.7 Модуль формирования ШИМ-сигналов


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


.8 Модуль АЦП


В состав микроконтроллеров семейства 68НС12 входит 8- или 10-разрядный АЦП последовательного приближения, который имеет 8 или 16 входных каналов. АЦП реализует 8 различных режимов преобразования. При работе в режимах без сканирования каналов АЦП отключается по окончании процесса преобразования. В режимах со сканированием каналов АЦП функционирует непрерывно, последовательно обслуживая входные каналы. Для работы АЦП не требуется подключение дополнительных внешних цепей. Опорное напряжение подаётся на соответствующие выводы процессора. Имеется также возможность подачи напряжения питания АЦП от отдельного стабилизированного источника


.9 Средства отладки и программирования микроконтроллеров 68НС12


Для микроконтроллеров семейства 68НС12 существует достаточное количество средств разработки, поставляемых как компанией Motorola, так и третьими фирмами. Компания Motorola предлагает два вида программно-аппаратных средств отладки: набор отладочных плат и устройство для внутрисхемной отладки по последовательному интерфейсу SDI. Отладочные платы, выпускаемые для каждой модели микроконтроллера, предназначены для макетирования разрабатываемой системы и отладки программ пользователя, написанных для данного микроконтроллера. В качестве примера можно указать платы 68EVB912B32, M68HC812A4EVB и M68KIT912DG128, предназначенные для работы с микроконтроллерами 68HC912B32, 68HC812A4 и 68HC912DG128, соответственно. Они содержат микроконтроллер, набор периферийных модулей и встроенный монитор, с помощью которого осуществляется связь отладочной платы с терминалом через один из последовательных портов микроконтроллера. Платы могут использоваться в качестве прототипной системы, для чего на них имеется монтажное поле. Интерфейс SDI использует внутренние средства отладки (режим BDM), реализованные в микроконтроллерах семейства 68HC12.

В состав интерфейса входят кабель с адаптером, который подключается к BDM-порту микроконтроллера и COM-порту компьютера. Программное обеспечение интерфейса позволяет выполнять внутрисхемную отладку и программирование микроконтроллера. Аналогичные средства отладки поставляются рядом других фирм. Например, немецкая фирма Electronic Laden поставляет микроконтроллерные платы (например, Card12.D60), которые содержат различные модели микроконтроллеров семейства 68HC12 и схемы, необходимые для реализации необходимых интерфейсов. Среди производителей программных средств отладки для семейства 68HC12 cледует отметить компании Cosmic Software и Hiware.

Компания Cosmic Software предлагает кросс-компилятор Си и отладчик ZAP. Эти программы имеют удобный интерфейс пользователя и работают в среде Windows95/98. Компания Hiware предлагает макроассемблеры (HI300301), компиляторы языков Си (HI200301) и Си++ (HI200311), симуляторы (HI400816, HI400843, HI400844) и отладчики (HI400800, HI400801 HI400822), работающие с аппаратными средствами различных производителей. Эффективным и недорогим средством разработки и отладки систем на базе микроконтроллеров семейства 68HC12 является аппаратно-программный комплекс 68HC12DK, разработанный в научно-методическом центре Моторола-Микропроцессорные системы МИФИ.

Основой комплекса является BDM-адаптер, который обеспечивает взаимодействие системы отладки, реализованной на базе компьютера, и платы пользователя. Адаптер подключается к компьютеру по интерфейсу RS-232 и выполняет трансляцию команд системы отладки в команды BDM-режима, которые управляют работой отлаживаемой системы, реализуемой на базе микроконтроллера 68НС12. Интегрированный отладчик HC12Debug, входящий в состав комплекса, отображает в удобной форме все ресурсы процессора и содержимое ячеек внешней памяти при работе в расширенном режиме. Содержимое регистров процессора и памяти отображается в отдельных окнах, число которых ограничено только возможностями подсистемы памяти компьютера. Пользователь может изменять содержимое регистров или ячеек памяти. Являясь интегрированной оболочкой, HC12Debug обеспечивает возможность редактирования исходного текста на языке ассемблера и его компиляции.

Вместе с комплексом поставляется стандартный ассемблер, однако при желании, к HC12Debug можно подключить любой другой ассемблер. После компиляции производится загрузка программы в память микроконтроллера или в микросхемы внешней памяти, установленные в системе, для её дальнейшей отладки. Комплекс обеспечивает стандартный набор функций отладки: прогон программы, отладка по шагам, использование точек останова и другие. В экранных окнах отображается состояние ресурсов процессора, дизассемблированный код программы, значения переменных. Для повышения эффективности и ускорения процесса разработки систем на базе семейства 68HC12 служит плата развития 68HC812A4DB, которая в совокупности с BDM-адаптером и HC12Debug позволяет производить макетирование систем и отладку аппаратного и программного обеспечения.

Плата размером 130x110 мм. содержит микроконтроллер МС68НС812А4, внешнюю память объёмом до 2 Мб (ОЗУ, ПЗУ или смешанная), два порта, обеспечивающих обмен по интерфейсу RS-232, и микросхему программируемой логики EPM7032SLC44, реализующую необходимые системные сигналы. Для удобства подключения периферийных устройств все основные сигналы микроконтроллера выведены на внешние разъёмы, что даёт возможность использовать плату 68HC812A4DB в качестве модуля управления в разрабатываемой системе. В режиме отладки плата развития соединяется с системой отладки посредством BDM-адаптера Установка требуемого режима микроконтроллера осуществляется с помощью перемычек, расположенных на плате. На рисунке 5 показан внешний вид платы 68HC812A4DB в процессе отладки разрабатываемой системы. Вместе со средствами программного контроля состояния системы при отладке используются специализированные инструментальные средства - осциллограф смешанных сигналов HP5464D и программируемый генератор сигналов HP33120A производства компании Agilent Technologies.

Осциллограф HP5464D, который содержит синхронно работающие двухканальный цифровой осциллограф с полосой пропускания 100 МГц и 16-канальный логический анализатор с частотой дискретизации 400 МГц и глубиной контроля до 2 М точек, обеспечивает одновременный контроль логического состояния и значений аналоговых сигналов в различных точках системы. Этот прибор позволяет определять причины возникновения помех на шинах питания, выявлять наличие импульсных помех в линиях связи, контролировать совместную работу аналоговых и цифровых устройств, отлаживать процедуры последовательного обмена данными при искажении формы передаваемых сигналов, а также решать многие другие проблемы, которые трудно разрешимы другими способами.

Аппаратно-программный комплекс 68HC12DK является универсальным средством, который можно эффективно использовать для создания прототипов проектируемых систем на базе микроконтроллеров 68HC12, разработки и отладки их программного обеспечения. Комплекс может также служить для изучения микроконтроллеров этого семейства и практического освоения работы с ними, а плата развития 68HC812A4DB может применяться в качестве одного из рабочих модулей разрабатываемой системы.


Рисунок 4

микроконтроллер программирование сигнал


3. Семейство микроконтроллеров Intel


.1 Микроконтроллеры семейства MCS-51


У истоков производства микроконтроллеров стоит фирма Intel с семействами восьмиразрядных микроконтроллеров 8048 и 8051. Архитектура MCS-51 получила свое название от первого представителя этого семейства - микроконтроллера 8051, выпущенного в 1980 году на базе технологии HMOS. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке.

С точки зрения технологии микроконтроллер 8051 являлся для своего времени очень сложным изделием - в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре 8086. Именно этот микроконтроллер наиболее хорошо известен разработчикам и является популярным средством управления в устройствах самого широкого круга. Имеется множество эмуляторов, отладчиков и программаторов микросхем 8051, поэтому с разработкой программного обеспечения нет никаких трудностей.

Следующим принципиальным шагом в развитии MCS-51 стал перевод технологии изготовления на CHMOS. Это позволило реализовать режимы Idle и Power Down, позволившие резко снизить энергопотребление кристалла и открывшие дорогу к применению микроконтроллера в энергозависимых приложениях, например, в автономных приборах с батарейным питанием. И последним принципиальным этапом развития этого направления фирмой Intel в рамках 8-битной архитектуры стал выпуск микроконтроллеров 8xC51FA/FB/FC, которые для краткости часто обозначаются как 8xC51FX. Главной отличительной особенностью этой группы кристаллов является наличие у них массива программируемых счетчиков (PCA). Структурная схема PCA представлена на рисунке 6

Рисунок 6


Выполнение всех перечисленных функций происходит в PCA на аппаратном уровне и не загружает центральный процессор, что позволяет повысить общую пропускную способность системы, повысить точность измерений и отработки сигналов и снизить время реакции микроконтроллера на внешние события, что особенно важно для систем реального времени. Реализованный в 8xC51FX PCA оказался настолько удачным, что архитектура микроконтроллеров FX стала промышленным стандартом де-факто, а сам PCA многократно воспроизводился в различных модификациях микроконтроллеров разных фирм.


.2 Микроконтроллеры семейства MCS-251


Изначально наиболее "узкими" местами архитектуры MCS-51 были 8-разрядное АЛУ на базе аккумулятора и относительно медленное выполнение инструкций (для выполнения самых быстрых инструкций требуется 12 периодов тактовой частоты). Это ограничивало применение микроконтроллеров семейства в приложениях, требующих повышенного быстродействия и сложных вычислений (16- и 32- битовых). Насущным стал вопрос принципиальной модернизации старой архитектуры. Проблема модернизации осложнялась тем, что к началу 90-х годов уже была создана масса наработок в области программного и аппаратного обеспечения, и одной из основных задач разработки новой архитектуры была реализация аппаратной и программной совместимости со старыми разработками на базе MCS-51. Для решения этой задачи была создана совместная группа из специалистов компаний Intel и Philips.

В результате в 1995г. появилось 2 существенно отличающихся семейства: MCS-251/151 у Intel и 51XA у Philips (на последнем мы остановимся ниже) Перед использованием микроконтроллера его необходимо сконфигурировать, т.е. с помощью программатора "прожечь" конфигурационные байты, определяющие, какой из наборов инструкций станет активным после включения питания. Если установить набор инструкций MCS-51, то в этом случае MSC-251 будет совместим с MCS-51 на уровне двоичного кода. Такой режим называется Binary Mode. Однако расширенные инструкции в этом режиме также доступны через "форточку" - зарезервированный код инструкции 0A5h. Естественно, длина каждой расширенной инструкции увеличивается в таком случае на 1 байт. Если же изначально установить набор расширенных инструкций, то в этом случае программы, написанные для MCS-51 потребуют перекомпиляции на кросс-средствах для MCS-51, т.к. теперь уже стандартные инструкции будут доступны через ту же "форточку" 0A5h и длина их также увеличится на 1 байт. Такой режим называется Source Mode.

Он позволяет с максимальной эффективностью использовать расширенные инструкции и достигнуть наибольшего быстродействия, но требует переработки программного обеспечения Для пользователей, ориентированных на применение микроконтроллеров MCS-251 в качестве механической замены MCS-51 фирма Intel выпускает микроконтроллеры MCS-251 с уже запрограммированными битами конфигурации в состоянии Binary Mode. Такие микроконтроллеры получили индекс MCS-151. Помимо самой Intel микроконтроллеры MCS-251 по ее лицензии выпускает компания Temic Semiconductors


3.3 Микроконтроллеры семейства MCS-96


фирмы Intel предназначены для использования в контрольно-измерительных системах и приборах в качестве встраиваемых микропроцессорных устройств. Основными достоинствами микроконтроллеров семейства MCS-96, является:

) Расширенная Разрядная сетка, позволяющая выполнять операции с данными, представленными в формате "байт" (8 бит) и формате "слово" (16 бит), а некоторые операции - в формате "двойное слово" (32 бита);

) Для чисел со знаком и без знака при разных форматах представления данных, операции сдвига на заданное число разрядов, операции групповой пересылки;

) Совершенная система команд, имеющая в своем составе двухадресные и трехадресные команды арифметических и логических операций с различными способами адресации, что позволяет создавать компактные и быстродействующие программы;

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

) Наличие большого число программных и программно-аппаратных средств поддержки разработки аппаратуры на базе микроконтроллеров семейства MCS-96


.4 Микроконтроллеры INTEL MCS 196/296


Высокопроизводительные 16-разрядные микроконтроллеры для решения задач встроенного управления оборудованием: от изделий бытовой техники, периферийных устройств ЭВМ до автомобильной и самолетной электроники. В семейство MCS-196 фирмы Intel (иногда используется и название 80C196) входит более 30 разновидностей микроконтроллеров. Это 16-разрядные, быстродействующие ИС высокой степени интеграции, ориентированные на решение задач управления процессами в реальном масштабе времени. Типичные области применения для этих микроконтроллеров - управление двигателями, модемы, тормозные системы, контроллеры жестких дисков, медицинское оборудование.

История MCS-196 насчитывает более 12 лет. За это время специалисты фирмы Intel увеличили адресное пространство с 64 КБайт до 6 Мбайт, повысили тактовую частоту с 10 до 50 МГц, улучшили быстродействие в 16 раз и добились понижения цены на кристалл примерно в 4 раза. Микроконтроллеры 80C196 фактически стали индустриальным стандартом для 16-разрядных встроенных систем управления, обеспечивая сочетание высоких технических показателей и экономической эффективности. Например, именно благодаря этим микроконтроллерам, установленным в системе управления зажиганием, специалистам концерна Ford удалось существенно снизить потребление топлива, уменьшить выбросы вредных веществ и одновременно повысить скоростные характеристики своих машин


.5 Особенности микроконтроллеров семейства MCS-196 фирмы INTEL


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

Итак, если некоторая прикладная задача может быть решена при помощи 8-разрядного микроконтроллера, то ее можно решить и при помощи 80C196, работающего на пониженной тактовой частоте. При этом энергопотребление 80C196 будет слабо отличаться от потребления 8-разрядного микроконтроллера, работающего на своей номинальной частоте, и может быть даже меньшим.


.6 Почему 80C196 быстрее, чем 8051


Все 232 внутренних регистра 80C196 имеют статус "аккумуляторов" - к ним можно непосредственно применять все необходимые арифметические и логические операции. У 8051 для достижения тех же результатов зачастую необходимо выполнять дополнительные пересылки в аккумулятор и из него. У 80C196 можно использовать 16-разрядную внешнюю шину. Кроме того, цикл шины 80C196 в 3-4 раза короче, чем у 8051. В результате, 80C196 в 6-8 раз быстрее работает с внешней памятью. Отметим, что, для того, чтобы снизить стоимость изделий, можно вводить в шину циклы ожидания и сократить ее ширину до 8-ми бит; но даже в этом случае 80C196 будет иметь преимущество в 2-3 раза.

В задачах, требующих 16- и 32-разрядных вычислений, 80C196 примерно на порядок быстрее, поскольку имеет полноценный набор 16-разрядных арифметических инструкций. Одним из самых эффективных способов сокращения времени разработки программ для микроконтроллеров является применение языка Си. Язык Си базируется на широком использовании стека и указателей. Однако для 8051 использование Си затруднено и ведет к большим накладным расходам, и вот почему.

Поскольку 8051 имеет небольшой стек, Си-компиляторы для 8051 генерируют дополнительный код, эмулирующий большой стек во внешней памяти данных. Вдобавок 8051 имеет всего один 16-разрядный указатель - DPTR, и компиляторам также приходится генерировать дополнительный код, чтобы компенсировать этот недостаток. Все это приводит к замедлению программ и увеличению их размера. У 80C196 таких проблем нет - стек имеет размер до 64 КБайт, а в качестве указателя можно использовать любое из 116 слов встроенной регистровой памяти.


.7 Семейство контроллеров Универсальной последовательной шины 8x930


Универсальная последовательная шина (Universal Serial Bus или USB), распространяет технологию Plug-and-Play на внешние устройства ввода/вывода, применяемые на современных высокопроизводительных персональных компьютерах. Для того, чтобы обеспечить возможность подключения разнообразных периферийных устройств, в стандарте USB определены четыре режима передачи: Управляющий, Изохронный, Импульсный и передача массивов. Каждое периферийное устройство должно поддерживать управляющий режим для передачи параметров конфигурации, команд и информации о состоянии устройства.

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


Заключение


Цель курсовой работы была, разъяснение характеристик микроконтроллера и принцип действия


Список литературы


1) Ахметов М. 16-разрядные микроконтроллеры Hitachi, Mitsubishi, Motorola, NEC, Toshiba // Chip News.

) Шагурин И.И. Микропроцессоры и микроконтроллеры фирмы MOTOROLA. - М.: Радио и связь. - 1998. - 560 с.

) «Основы микропроцессорной техники». Авторы Ю.В. Новиков и П.К Скоробогатов.

) «Архитектура вычислительных систем» Москва «Радио и связь» 1990г. Автор А.Д. Смирнов.

) «Электронно-вычислительные машины и системы» Москва «Радио и связь»1991г. авторы Б.М.Каган.

6) Сташин В.В., Урусов А.В., Мологонцева О.Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах. - М.: Энергоатомиздат, 1990. - 224 с.

) Куприянов М.М. Матюшкин Б.д. цифровая обработка сигналов: процессоры, алгоритмы, средства проектирования. Политехника, СПб., 2000.

) Щелкунов Н.Н., Дианов А.П. Микропроцессорные средства и системы. - М.: Радио и связь, 1989. - 288 с.


Министерство образования и науки Калужской области Государственное бюджетное образовательное учреждение среднего профессионального образования Калужской обла

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ