Чтение онлайн

ЖАНРЫ

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

Пак Дэниэл Дж.

Шрифт:

Структурная схема одного из представителей семейства HCS12 — микроконтроллера MC9S12DP256B представлена на рис. 4.4. Обратите внимание, что большая часть модулей этого МК уже рассматривалась Вами в составе МК MC68HC912B32 (рис. 4.1). Однако на кристалле MC9S12DP256B размещены уже два 8-канальных АЦП, добавлены 5 модулей контроллеров CAN и новый модуль PPAGE для аппаратной поддержки режима страничной адресации внешней памяти. Также претерпел изменения модуль таймера ECT, который стал именоваться «усовершенствованным таймером с функцией фиксации» (Enhanced Capture Timer).

Рис. 4.4. Структура микроконтроллера MC9S12DP256B

Мы надеемся, что читатель получил общее представление о МК семейства 68HC12/HCS12,

и следует перейти к подробному изучению их технических особенностей. Далее на протяжении этой главы мы рассмотрим аппаратную реализацию и регистровые модели отдельных модулей в составе МК семейства 68HC12/HCS12. Также будут рассмотрены примеры программного обслуживания каждого модуля. В последующих главах мы объединим полученные навыки программирования периферии МК при создании микропроцессорных устройств различного назначения.

4.3. Режимы работы МК семейства 68HC12/HCS12

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

BKGD MODB MODA Режим работы PORTA PORTB
000 Специальный однокристальный PORTA PORTB
001 Специальный расширенный с 8-разрядной внешней шиной ADDR [15...8] DATA [7...0] ADDR [7...0]
010 Специальный периферийный ADDR, DATA ADDR, DATA
011 Специальный расширенный с 16-разрядной внешней шиной ADDR, DATA ADDR, DATA
100 Нормальный однокристальный PORTA PORTB
101 Нормальный расширенный с 8 разрядной внешней шиной ADDR [15...8] DATA [7...0] ADDR [7...0]
110 Резервный (периферийный)
111 Нормальный расширенный с 16 разрядной внешней шиной ADDR, DATA ADDR, DATA 

Рис. 4.5. Режимы работы микроконтроллеров семейства 68HC12

Каждый режим из группы рабочих задает собственное распределение адресного пространства МК и конфигурацию магистралей для подключения внешней памяти. Режим работы МК назначается посредством комбинации логических сигналов на входах BKGD, MODB, MODA микроконтроллера в состоянии начального запуска МК. Состояние начального запуска именуют также состоянием сброса (Reset). Сразу после выхода из состояния сброса МК запоминает кодовую комбинацию на перечисленных входах и переходит в соответствующий режим работы. Полный перечень режимов работы МК 68HC12/HCS12 представлен на рис. 4.5. Там же указаны альтернативные функции линий портов PORT A и PORT B, которые они приобретают в каждом из режимов работы.

4.3.1. Рабочие режимы

В большинстве проектируемых устройств Вы будете использовать МК 68HC12/HCS12 в одном из трех рабочих режимов:

• Однокристальном или автономном режиме;

• Расширенном режиме с 16-разрядной внешней шиной;

• Расширенном режиме с 8-разрядной внешней шиной.

Расширенные режимы работы предоставляют возможность подключения к МК внешней памяти и внешних периферийных ИС с использованием параллельных магистралей адреса и данных. Сигналы магистралей формируются на линиях портов PORTA и PORTB, поэтому использование соответствующих выводов МК в качестве линий ввода/вывода общего назначения в расширенных режимах работы становится невозможным.

Краткое описание рабочих

режимов:

• Однокристальный режим работы (BKGD: 1, MODB: 0, MODA: 0) обеспечивает функционирование МК с использованием только внутренней памяти. Поэтому коды прикладной программы управления и ее переменные должны размещаться только во внутреннем ПЗУ и ОЗУ МК. Порты PORTA и PORTB используются в качестве обычных двунаправленных портов ввода/вывода. Подключение внешних периферийных ИС должно производиться с использованием последовательных интерфейсов или с программной поддержкой временной диаграммы обмена на линиях портов ввода/вывода.

• Расширенный режим с 16 разрядной системной шиной (BKGD: 1, MODB: 1, MODA: 1) обеспечивает функционирование МК с использованием как внутренней, так и внешней памяти. Для подключения внешней памяти предназначена 16-разрядная мультиплексированная магистраль адрес/данные ADDR15–0/DATA15–0. При этом старший байт мультиплексированной во времени магистрали ADDR15–8/DATA15–8 формируется на линиях PORTA, младший байт ADDR7–0/DATA7–0 — на линиях PORTB.

• Расширенный режим с 8 разрядной системной шиной (BKGD: 1, MODB: 0, MODA: 1) также реализует работу МК с использованием внутренней и внешней памяти. Но для подключения внешней памяти предназначены 16-разрядная магистраль адреса ADDR15–0 и 8-разрядная магистраль данных DATA7–0. Старший байт магистрали адреса ADDR15–8 выводится на PORTA, младший байт ADDR7–0 — на PORTB. Двунаправленная 8-разрядная магистраль данных DATA7–0 использует линии порта PORTA в мультиплексированном со старшими разрядами магистрали адреса режиме. В обоих расширенных режимах некоторые линии порта PORTE используются для передачи сигналов управления обменом по шине.

4.3.2. Режимы работы отладочной платы M68EVB912B32

В данном параграфе мы рассмотрим режимы отладки, которыми может воспользоваться начинающий разработчик микропроцессорных систем, используя для своих экспериментов специальную плату отладки M68912B32EVB. Установленный на плате МК MC68HC912B32 работает в однокристальном режиме. Возможен перевод МК в расширенный режим работы. Для этого на плате имеются переключатели и разъемы системной шины для подключения внешних элементов. Однако в процессе выполнения учебных задач эта операция вряд ли будет необходима. Объем учебных примеров таков, что программы могут быть размещены во внутренней памяти МК отладочной платы.

Плата отладки M68912B32EVB позволяет реализовать четыре различных режима отладки, каждый из которых назначается посредством определенной конфигурации переключателей режимов:

• Режим EVB. В этом режиме реализуется работа под управлением резидентного монитора отладки D-Bug12. Аппаратные средства отладочной платы выполнены таким образом, что сразу после включения запустится программа, которая размещается во Flash ПЗУ МК. В заводском исполнении в эту область памяти помещается программа монитора отладки D-Bug12. Если же пользователь вместо программы монитора записал коды программы пользователя, то начнет исполняться последняя. Однако чтобы не потерять коды программы монитора, неопытному пользователю не следует перепрограммировать область Flash ПЗУ. Записанный в памяти МК монитор отладки D-Bug12 содержит в себе простую, но полнофункциональную среду отладки, которая позволяет загрузить в память МК небольшие программы и протестировать их работоспособность.

• Режим JUMP EE. В этом режиме исполняется программа, загруженная с адреса $D000 в область памяти EEPROM. Поскольку область памяти EEPROM ограничена 768 байтами, то исполняемый в реальном времени фрагмент программы должен быть очень коротким. Такой режим пригоден для лабораторных испытаний функционирования в реальном времени отдельных фрагментов разрабатываемой прикладной программы.

• Режим POD. В этом режиме аппаратные средства отладочной платы M68912B32EVB используются в качестве интерфейса между последовательным портом персонального компьютера и отладочным портом модуля отладки BDM другого микроконтроллера, установленного на другой отладочной плате (можно использовать вторую плату M68912B32EVB, как показано в гл.3), или на плате собственной разработки. При этом этот другой МК будет находиться в режиме внутрисхемной отладки под управлением встроенного в МК модуля BDM. В этом внутрисхемной отладки возможно реализовать все этапы отладки, начиная с записи программы во Flash память МК (программирование) и заканчивая испытаниями прикладной программы в реальном времени на объекте управления. Для взаимодействия с отлаживаемым МК следует использовать один из пакетов программного обеспечения, рассмотренных в гл. 3.

Поделиться с друзьями: