Ремонт&Сервис
 

Новости

О нас

О журнале Р&С

Архив Р&С

номера

разделы

Анонсы Р&C

ПОКУПАЕМ от АдоЯ

Архив АдоЯ

Файловый архив

Приглашаем

Реклама

Подписка

Где купить

Наши партнеры

Поиск Р&С

ТРИЗ

Запчасти

Архив_новости

 

Журнал

Реммаркет

схемы новости электроники

Ремонт аппаратуры (схемы, справочники, документация)

 
Ежемесячный журнал по ремонту и обслуживанию электронной техники

• бытовая техника

• аудиотехника

• техника связи

• телевизионная техника

• оргтехника

• видеотехника

• телефония

• элементная база

 

Архив/Номера/№6–2006

Назад
 
 
 

Евгений Кузнецов

 
 
 

Микроконтроллеры MOTOROLA семейства MC68HC08GPххА

Микроконтроллеры семейства MC68HC08GPххА компании MOTOROLA широко используются в различной бытовой технике, в том числе и в электронных модулях стиральных машин. В этом номере журнала в разделе „Бытовая техника» опубликована статья с описанием модуля EWM1000, который используется в целой линейке стиральных машин Elektrolux и Zanussi. Основой этого модуля является микроконтроллер MC68HC08GP32А, входящий в состав этого семейства процессоров. Предлагаемый информационный материал позволит читателям более подробно ознакомиться с этим микроконтроллером — его структурой и возможностями.

Общее описание

Микросхемы MC68HC08GPххА принадлежат к классу недорогих, 8-разрядных микроконтроллеров (МК) семейства M68HC08, выпускаемых компанией MOTOROLA. Основной чертой этого семейства является то, что все входящие в него МК построены на базе одного вычислительного ядра (центрального процессора) CPU08 и отличаются большим разнообразием типов и размеров памяти, периферии и конструктивным исполнением.

Маркировка МК

Назначение групп в маркировке микроконтроллеров семейства MC68HC08GPxxAyzz следующее:

- MC — фирма-производитель (MOTOROLA);

- 68HC08 — тип МК;

- GPxxA — семейство;

- y — температурный диапазон (C: –40… +85°C, V: –40…+105°C, M: –40…+125°C);

- zz — тип корпуса (B — SDIP, 42 вывода; FB — QFP, 44 вывода).

Расположение и назначение выводов МК MC68HC08GPxxA в корпусе QFP показаны на рис. 1.

Рис. 1. Расположение и назначение выводов микроконтроллеров семейства МС68НС08GPxxA

Основные особенности МК семейства MC68HC08GPххА

Перечислим особенности МК семейства MC68HC08GpххА:

– высокопроизводительная архитектура M68HC08 оптимизирована для C-компиляторов;

– полная совместимость с объектным кодом для семейств М6805, М146805, М68НС05;

– частота внутренней системной шины составляет 8 МГц;

– тактовый генератор с системой ФАПЧ, стабилизированный кварцевым резонатором частотой от 30 до 100 кГц (в рассматриваемом варианте — 32768 Гц);

– низкое потребление питания (режимы ожидания и останова);

– механизм системной защиты с последующим сбросом (неверный код операции, неверный адрес, пониженное питание);

– встроенное ОЗУ объемом 512 байт;

– встроенное ПЗУ:

- для МК MC68HC08GP16А — объемом 15872 байт;

- для МК MC68HC08GP32А — объемом 32256 байт;

– последовательный интерфейс периферийных устройств (SPI);

– последовательный коммуникационный интерфейс (SCI);

– двухканальный 16-разрядный интерфейс таймеров с ШИМ-модулятором (TIM1, TIM2);

– восьмиканальный 8-разрядный АЦП.

Перечислим особенности вычислительного ядра CPU08:

– улучшенная программная модель НС05;

– расширенные функции контроля циклов;

– 16-разрядная адресация;

– 16-битный индексный регистр и указатель стека;

– быстрые инструкции умножения в формате 88;

– быстрые инструкции деления в формате 16/8;

– двоично-десятичные инструкции;

– оптимизация для применения в МК;

– эффективная поддержка языка С.

Функциональная схема

Функциональная схема МК семейства МС68НС08GpxxA показана на рис. 2.

Рис. 2. Функциональная схема микроконтроллеров в семействе МС68НС08GpxxA

Рассмотрим подробнее назначение основных модулей этой микросхемы.

Модуль ЦП (Central Processor Unit)

Данный модуль является основным вычислительным блоком МК. В его задачи входит обработка всей поступающей информации в соответствии с кодом программы, записанной в ПЗУ. В состав блока входит арифметико-логическое устройство (АЛУ), предназначенное для выполнения последовательности арифметических и логических операций алгоритма, а также набор регистров для хранения промежуточных данных и конечных результатов.

Модуль тактового генератора (Clock Generator Module)

Данный модуль предназначен для синхронизации работы всех блоков в составе МК. В состав этого модуля входят три субмодуля:

- тактовый генератор (его частота стабилизирована внешним кварцевым резонатором), формирующий основную тактовую частоту CGMXCLK;

- система ФАПЧ, которая предназначена для генерации программно управляемой частоты CGMVCLK;

- схема выбора тактовой частоты, представляющая собой программно-управляемую цепь, выбирающую частоты CGMXCLK, CGMXCLK/2, CGMVCLK, CGMVCLK/2 или CGMOUT.

Модуль памяти (Memory Map Module)

CPU08 может адресовать до 64 кбайт адресного пространства. Карта памяти МК включает в себя следующие области:

- ПЗУ (ROM) объемом 32256 байт (для MC68HC08GP32А) и 15872 байт (для MC68HC08GP16А);

- ОЗУ (RAM) объемом 512 байт;

- векторы прерывания, определяемые пользователем (36 байт);

- контрольное ОЗУ (307 байт).

Аналого-цифровой преобразователь (8 bit Analog-to-Digital Converter Module)

Данный модуль представляет собой 8-канальный 8-битный АЦП с программируемой частотой дискретизации. Он предназначен для преобразования входного аналогового сигнала, поступающего по 8-ми внешним входам PTB7/AD7-PTB0/AD0, в цифровую форму. Мультиплексор на входе АЦП позволяет выбирать один из каналов в качестве опорного напряжения VADIN. После завершения оцифровки результат операции помещается в регистр модуля АЦП, и после этого выставляется соответствующий флаг или генерируется прерывание.

Модуль контроля работы (Computer Operating Properly)

Данный модуль представляет собой, по сути, сторожевой таймер. В его состав входит автономный счетчик, который генерирует сброс при переполнении, таким образом, помогая программе восстановить свою работу при различных сбойных ситуациях. Данный модуль можно отключить, установив бит COPD в регистре COPCTL.

Модуль внешних прерываний (Single External Interrupt Module)

Данный модуль предназначен для регистрации прерывания от внешних устройств. Каждый раз, при поступлении сигнала низкого уровня на вывод IRQ, срабатывает защелка и в МК на обработку поступает прерывание. Управляющим регистром внешних прерываний является INTSCR, здесь же можно задать программно тип сигнала (срабатывание по заднему фронту или по уровню) установкой бита MODE.

Модуль прерываний от клавиатуры (8-bit Keyboard Interrupt module)

Данный модуль поддерживает до восьми независимых маскируемых прерываний, доступных через порты PTA0-PTA7. Когда порт открыт для работы с прерыванием, например от клавиатуры, внешнее устройство становится активным. Запись определенного бита KBIE7-KBIE0 в регистре INTKBIER делает активным тот или иной вывод порта A. Регистрация прерывания происходит в том случае, когда одна из линий клавиатуры (или любого другого внешнего устройства) меняет свой уровень с высокого на низкий. Для настройки типа сигнала, по которому происходит регистрация прерывания, необходимо установить бит MODEK регистра INTKBSCR в соответствующее значение (0 — срабатывание только по переднему фронту, 1 — по заднему фронту и низкому уровню).

Модуль последовательного интерфейса (Serial Communication Interface Module)

Данный модуль предназначен для обмена данными в высокоскоростном дуплексном асинхронном режиме с внешними устройствами или другим МК. В режиме передачи данных модуль ЦП следит за текущим статусом последовательного интерфейса, подготавливает данные для передачи и обрабатывает принятые. Скорость работы модуля задается программно — установкой требуемого значения биту SCIBDSRC в регистре MOR2 (1 — тактирование от внутреннего генератора, 0 — от внешнего).

Модуль начального сброса (Power on Reset Module)

Данный модуль предназначен для инициализации МК при включении питания. При наличии положительного напряжения на выводе VDD, не превышающего значения VPOR, происходит сброс по питанию. В результате этого, по истечении 4096 тактов CGMXCL стабилизации тактового генератора, происходит запуск ЦП и остальных модулей