Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - Стивен Барретт страница 5.

Шрифт
Фон

1.2.8. Программно–аппаратный дуализм

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

1.3. Введение в микроконтроллеры семейства 68HC12 и HCS12

В предыдущем параграфе мы обсудили общие проблемы, связанные с разработкой и эксплуатацией встраиваемых микропроцессорных систем. В своем рассмотрении мы пока не касались той элементной базы, на основе которой выполняются встраиваемые системы, т.е. микроконтроллеров. Поскольку наша книга посвящена встраиваемым системам на микроконтроллерах семейства 68HC12/HCS12 компании Motorola/Freescale Semiconductor, то перейдем к знакомству с этой элементной базой.

Семейство микроконтроллеров 68HC12/HCS12 относится к группе 16–разрядных МК. Процессорное ядро 68HC12 унаследовало свою программно–логическую модель и систему команд от широко известного 8–разрядного процессорного ядра HC11. Начало семейству 68HC12 было положено в 1996 году выпуском двух базовых моделей: MC68HC12A4 и MC68HC912B32. Микроконтроллер MC68HC12A4 был предназначен для работы в расширенном режиме, т.е. с внешней памятью программ. Микроконтроллер MC68HC912B32 уже имел на кристалле многократно программируемое пользователем энергонезависимое запоминающее устройство, выполненное по технологии Flash. В 2002 году компанией Motorola/Freescale Semiconductor было предложено новое семейство HCS12, которое предназначалось для замены МК семейства 68HC12 на более высокопроизводительные, но полностью программно совместимые модели. На протяжении этой книги мы будем использовать в качестве базового микроконтроллер MC68HC912B32. Это простой МК низкой стоимости, доступный как для обучения, так и для относительно несложных разработок. Однако большая часть сведений, которые Вы почерпнете из данной книги, может быть легко распространена и на МК HCS12.

На основе базового МК MC68HC912B32 производителем был создан целый ряд моделей: MC68HC12BE32, MC68HC912BC32 и MC68HC12BC32. Основное отличие этих моделей друг от друга состоит в объеме размещенной на кристалле памяти программ и в наличии или отсутствии контроллера CAN сети.

На рис. 1.3 представлена структурная схема сразу двух МК: MC68HC912B32 и MC68HC12BE32. На рис. 1.4 дана цоколевка корпуса для этих микроконтроллеров. Далее на рис. 1.5 показана структура микроконтроллера MC68HC912BC32, на рис. 1.6 - цоколевка корпуса для него. В таблице рис. 1.7 перечислены основные функциональные блоки каждой из перечисленных моделей МК. Эта же таблица позволяет легко определить функциональные различия между рассматриваемыми МК.

Стивен Барретт, Дэниэл Пак - Встраиваемые системы. Проектирование приложений на...

Рис. 1.3. Структура микроконтроллеров MC68HC912B32 и MC68HC12BE32

Стивен Барретт, Дэниэл Пак - Встраиваемые системы. Проектирование приложений на...

Рис. 1.4. Цоколевка корпуса микроконтроллеров MC68HC912B32 и MC68HC12BE32

Микроконтроллеры семейства 68HC12 - это 16–разрядные МК, что означает, что центральный процессор может выполнять операции над 16–разрядными данными, а также то, что данные передаются внутри МК по 16–разрядной магистрали данных. МК 68HC12 имеют также 16–разрядную магистраль адреса, что позволяет им адресовать 65 536 ячеек памяти. Максимальная частота системной шины МК семейства 68HС12 равна 8 МГц, что обеспечивать значительное возрастание вычислительной производительности по отношению к предшественнику - МК HC11.

Система команд 68HC12 основана на системе команд HC11, однако число способов адресации и число выполняемых действий значительно расширены. Система команд 68HC12 включает 208 инструкций, в том числе пять команд деления с разрядностью данных 16/16 и 32/16 в целочисленном и дробном форматах, команды выбора максимального и минимального числа, команды нечеткой логики. Операции сложения или вычитания двухбайтовых чисел выполняются за 2 или 3 такта системной шины МК. Центральный процессор 68HC12 поддерживает 16 способов адресации, при этом исполнение каждой команды из группы арифметических или логических команд возможно с использованием по крайней мере 12 способов адресации. Центральный процессор 68HC12 имеет двухадресные команды, позволяющие выполнять пересылки 8–и 16–разрядных данных между двумя ячейками памяти или регистрами специальных функций минуя регистры центрального процессора. Четыре команды предназначены для реализации алгоритмов нечеткой логики (fuzzy logic): команда фаззификации MEM, команда обработки нечетких переменных REV, команда обработки нечетких переменных REVW и команда дефаззификации WAW.

Микроконтроллеры семейства 68HC12 обладают резидентной Flash-памятью программ, объемом до 32 Кб, оперативной памятью данных до 1 Кб, энергонезависимой памятью данных типа EEPROM объемом до 768 байт. Они имеют встроенный модуль отладки, который позволяет отлаживать программы, а также выполнять операции стирания/программирования Flash и EEPROM, взаимодействуя с персональным компьютером по однопроводному последовательному интерфейсу.

Стивен Барретт, Дэниэл Пак - Встраиваемые системы. Проектирование приложений на...

Рис. 1.5. Структура микроконтроллера MC68HC912BС32

Стивен Барретт, Дэниэл Пак - Встраиваемые системы. Проектирование приложений на...

Рис. 1.6. Цоколевка корпуса микроконтроллера MC68HC912BС32

Микроконтроллеры семейства 68HC12 имеют до семи многофункциональных двунаправленных портов ввода/вывода, модуль аналого цифрового преобразователя, модуль таймера с функциями входного захвата и выходного сравнения, 16–разрядный счетчик внешних событий, модуль широтно–импульсного модулятора и несколько контроллеров последовательных интерфейсов. Полный перечень возможных для МК семейства 68HC12 периферийных модулей приведен в таблице рис. 1.7.

Функциональные модули в составе МКMC68HC912B32MC68HC12BE32MC68HC912BC32MC68HC12BC32
Центральный процессор CPU12++++
Системная магистраль++++
Память программ Flash 32Кб++
Память программ однократно программируемая 32Кб++
EEPROM 768 байт++++
ОЗУ 1 Кб++++
Модуль таймера TIM++++
Модуль аналого–цифрового преобразования ATD++++
Усовершенствованный модуль таймера ECT++++
Модуль широтно–импульсного модулятора PWM++++
Модуль контроллера асинхронного последовательного обмена SCI++++
Модуль контроллера синхронного последовательного обмена SPI++++
Модуль контроллера последовательного обмена CAN++
Модуль контроллера последовательного обмена BDLC++++
Сторожевой таймер COP++++
Модуль отладки BDM++++
Модуль делителя для низкочастотной синхронизации++++

Рис. 1.7. Сравнительные характеристики микроконтроллеров семейства 68HC12B

1.4 Микроконтроллеры HCS12

Подобно семейству 68HC12, семейство HCS12 объединяет ряд микроконтроллеров с одинаковым процессорным ядром CPU HCS12, различающихся объемом резидентной памяти и набором периферийных модулей, интегрированных на кристалл МК. Различные модели МК в составе семейства имеют Flash память программ объемом до 512 Кб, оперативную память объемом до 12 Кб. Напряжение питания большинства моделей семейства - 5,0 В, что позволяет обеспечить электромагнитную совместимость в автомобильных применениях. Частота внутренней системной шины МК семейства HCS12 равна 25 МГц, что существенно увеличивает их производительность по сравнению с МК семейства 68HC12.

Все модели МК семейства HCS12 имеют в своем составе следующие функциональные блоки:

• Оперативное запоминающее устройство и постоянное запоминающее устройство трех типов: Flash, EEPROM, масочного типа;

• Порты с двунаправленными линиями ввода/вывода;

• Модуль таймера с 16–разрядным счетчиком временной базы и 8 каналами захвата/сравнения;

• Подсистему последовательного обмена с несколькими контроллерами ввода/вывода различных стандартов (SCI, SPI, CAN и др.);

• Модуль АЦП с 8–и или 10–разрядным представлением результата;

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке