Для каждого из периферийных модулей мы рассмотрели эталонный учебный пример программного кода на Си, который далее может быть использован Вами при разработке учебных и реальных прикладных программ.
1. Motorola. 68HC12 M68EVB912B32 Evaluation Board User's Manuаl (68ЕVВ912В32-UМ/D). Motorola Inc., 1997.
2. Motorola. HC12 M68HC12B Family Advance Information, (М68НСI2В/D), Motorola Inc., 2000.
3. ImageCraft. ImageCraft С Compiler and Development Environment for Motorola HC12, Version 6. Раlo Alto, СА: ImageCraft, Inc.
4. Pack, Daniel, and Steven Barrett. 68HC12 Microcontroller: Theory and Application, Upper Saddle River, NJ: Prentice Наll 2002.
5. Wakerly, John. Digital Design principles and Practices, Upper Saddle River, NJ: Prentice Наll, 2001.
Основные
1. Объясните назначение каждого функционального модуля МК 68HC12B32.
2. Семейство 68HC12 включает несколько моделей МК. Каковы различия между отдельными моделями?
3. Сколько ячеек памяти занимает блок регистров специальных функций в МК семейства 68HC12? В какой области памяти, и по каким адресам этот блок располагается?
4. Опишите все функции линий порта PORT AD.
5. Каков объем встроенной памяти типа EEPROM в микроконтроллере семейства 68HC12?
6. Какое состояние МК называют прерыванием? Кратко опишите последовательность действий МК по обслуживанию прерывания.
7. Каковы различия между маскируемыми и немаскируемыми прерываниями. Какие из этих прерываний имеют более высокий приоритет?
8. Какова разрешающая способность встроенного АЦП для МК семейства 68HC12? Может ли она изменяться и при каких условиях?
9. Каково назначение регистра направления передачи порта ввода/вывода?
10. Число разрядов счетчика временной базы равно 16. Чему равен его коэффициент счета?
11. Счетчик временной базы тактируется частотой 0,5 МГц. Чему равен период переполнения счетчика?
Исследовательские
1. При изучении подсистемы входного захвата мы рассмотрели пример измерения длительности импульса с высоким логическим уровнем, которая по условию задачи не должна была превышать периода переполнения счетчика временной базы таймера. Разработайте блок схему алгоритма для этого примера.
2. Напишите программу на Си для реализации задачи предыдущего вопроса. Программа должна включать все операции по инициализации модуля таймера. Считайте, что таймер тактируется частотой 2 МГц, исследуемый импульсный сигнал подается на вход канала 2 модуля таймера.
3. При изучении подсистемы выходного сравнения мы рассмотрели пример генерации на одном из выходов МК единичного импульса с низким логическим уровнем. По условию задачи длительность этого импульса не превышала периода переполнения счетчика временной базы таймера. Разработайте блок-схему алгоритма для этого примера.
4. Напишите программу на Си для реализации задачи вопроса № 3. Программа должна включать все операции по инициализации модуля таймера. Считайте, что таймер тактируется частотой 2 МГц, импульсный сигнал генерируется на на выходе канала 2 модуля таймера.
5. Напишите программу на Си, которая изменяет код на выходе порта A в порядке инкрементирующего двоичного счетчика. Временной интервал между двумя соседними изменениями кодов должен составлять 30 мс.
6. Напишите программу на Си, которая изменяет код на выходе порта A сначала в порядке инкрементирующего двоичного счетчика от 0x00 до 0xFF, а затем в обратном порядке 0xFF…0x00. Временной интервал между двумя соседними изменениями кодов должен составлять 30 мс.
7. В рассмотренном при изучении подсистемы таймера примере измерения периода некоторого импульсного сигнала мы предположили, что этот период будет меньше, чем период переполнения счетчика временной базы. Измените предложенный ранее алгоритм таким образом, чтобы измерения проводились для сигналов с периодом, превышающим период переполнения счетчика временной базы.
8. Укажите ограничения по минимальному и максимальному значению периода сигнала для предложенного Вами алгоритма в задании № 7.
9. В параграфе 4.14.5, посвященном счетчику внешних событий в составе модуля таймера, мы обсудили способ измерения скорости движения велосипеда с использованием датчика Холла. Разработайте блок схему алгоритма, напишите текст программы на Си для реализации такого измерителя скорости.
10. В примере использования модуля меток реального времени (раздел 4.15) мы программно отсчитывали 122 периода модуля RTI по 8,196 мс для формирования интервала в 1 с. Сколько отсчетов необходимо было бы сделать для отсчета 24 часов? Сколько 8-разрядных ячеек памяти понадобилось бы задействовать для этой задачи?
Читать дальше