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

на главную - закладки

Жанры

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

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

Шрифт:

а) Вариант 1: Код Stop > Код Start, переполнений счетчика временной базы за время измерения не было

б) Вариант 2: Код Start > Код Stop, за время измерения было одно переполнение счетчика временной базы

в)

Вариант 3: Код Stop > Код Start, за время измерения было N переполнений счетчика временной базы

г) Вариант 4: Код Start > Код Stop, за время измерения было N переполнений счетчика временной базы

д) Вариант 5: Код Start = Код Stop, за время измерения было N переполнений счетчика временной базы

Рис. 4.29. Диаграммы, поясняющие преобразования кодов для расчета длительности измеряемого временного интервала

Опытный разработчик всегда использует второй способ. По отношению к первому способу он обладает двумя преимуществами:

• Необходимое в первом способе обнуление счетчика может вызвать нарушение правильной работы других каналов таймера, которые также используют для отсчета временных интервалов код счетчика временной базы. Второй способ не нарушает естественный порядок счета счетчика временной базы, и, следовательно, создает «комфортные» условия для работы оставшихся семи каналов модуля таймера.

• Второй способ обладает большей точностью. При первом способе момент первого изменения сигнала отмечается нулевым кодом счетчика, который будет установлен только после перехода к подпрограмме прерывания. Этот процесс может занять от 10 до 20 тактов fBUS. При втором способе аппаратные средства подсистемы входного захвата фиксируют первое изменение сигнала аппаратно, и ошибка не будет составлять более одного такта fBUS.

Рассмотрим более подробно вычисление реальной длительности измеряемого сигнала по второму способу. На рис. 4.29 показаны пять возможных ситуаций, в которых подсистемой входного захвата зафиксированы совершенно одинаковые коды начала и конца измеряемого временного интервала. В первом случае (рис. 4.29,а) код Stop превышает код Start, и переполнений счетчика временной базы не было. Тогда очевидно, что измеряемая длительность временного интервала TIME = Stop – Start. Во втором случае (рис. 4.29,б) код Stop меньше, чем код Start, и между изменениями сигнала было всего одно переполнение счетчика временной базы:

TIME = (216 – Start) + Stop = 216 + (Stop Start)

Рассмотрев остальные случаи (рис. 4.29, в,г,д), можно убедиться, что в каждом из случаев расчет искомого временного интервала следует вести по формуле:

TIME = 216 x n + (Stop Start),

где n — число

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

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

tIZM = TIME x (TCNTclock),

где TCNTclock — период частоты тактирования счетчика временной базы.

Сброс счетчика временной базы

Как было отмечено выше, сброс счетчика временной базы крайне нежелателен, поскольку он нарушает естественный порядок счета и может привести к ошибкам в работе подсистем входного захвата или выходного сравнения IC/OC, которые в момент сброса реализуют предназначенные им функции с использованием изменяющегося кода счетчика временной базы. Однако если сброс все таки необходим, то его можно реализовать следующим образом:

• Установить в 1 бит разрешения сброса счетчика TCRE (бит 3) в регистре управления TMSK2;

• Установить в $0000 регистр данных канала 7 модуля таймера. Комбинация этих двух состояний будет удерживать счетчик временной базы в нулевом состоянии.

Вопросы для самопроверки

1. Какова частота тактирования МК на отладочной плате MC68HC912B32EVB?

Ответ: Микроконтроллер B32, установленный на плате MC68HC912B32EVB тактируется от кварцевого резонатора с частотой 16 МГц. Эта частота делится внутренними средствами МК на 2, поэтому частота межмодульных магистралей составляет 8 МГц.

2. С какой целью Вам может понадобиться тактировать МК на с иной, отличной от fBUS = 8 МГц частотой?

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

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

Ответ: $EC20 – $0105 = $EB1B = 60187 тактов счетчика

4. Если в предыдущем примере частота на входе программируемого делителя составляет 2 МГц, и биты PR2…PR0 регистра TMSK2 установлены в 000, то каков интервал времени между событиями в мс?

Ответ: Интервал составляет: 60187 1/(2МГц) = 30093,5 мс.

5. Повторите расчет предыдущего вопроса, но при измененных значениях битов PR2…PR0 = 100.

Ответ: В предыдущем случае коэффициент деления программируемого делителя был равен 1. При указанных в данном примере значениях битов PR2…PR0 коэффициент деления составляет 16. Следовательно, интервал времени между событиями составит 30093,5 мс x 16 = 481496 мс.

6. Назовите три основных режима работы модуля таймера TIM?

Поделиться:
Популярные книги

Измена. Испорченная свадьба

Данич Дина
Любовные романы:
современные любовные романы
короткие любовные романы
5.00
рейтинг книги
Измена. Испорченная свадьба

Последний из рода Демидовых

Ветров Борис
Фантастика:
детективная фантастика
попаданцы
аниме
5.00
рейтинг книги
Последний из рода Демидовых

Его наследник

Безрукова Елена
1. Наследники Сильных
Любовные романы:
современные любовные романы
эро литература
5.87
рейтинг книги
Его наследник

Измена. Право на семью

Арская Арина
Любовные романы:
современные любовные романы
5.20
рейтинг книги
Измена. Право на семью

Неудержимый. Книга XIX

Боярский Андрей
19. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XIX

Волков. Гимназия №6

Пылаев Валерий
1. Волков
Фантастика:
попаданцы
альтернативная история
аниме
7.00
рейтинг книги
Волков. Гимназия №6

Неучтенный. Дилогия

Муравьёв Константин Николаевич
Неучтенный
Фантастика:
боевая фантастика
попаданцы
7.98
рейтинг книги
Неучтенный. Дилогия

Безумный Макс. Ротмистр Империи

Ланцов Михаил Алексеевич
2. Безумный Макс
Фантастика:
героическая фантастика
альтернативная история
4.67
рейтинг книги
Безумный Макс. Ротмистр Империи

Проданная Истинная. Месть по-драконьи

Белова Екатерина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Проданная Истинная. Месть по-драконьи

Род Корневых будет жить!

Кун Антон
1. Тайны рода
Фантастика:
фэнтези
попаданцы
аниме
7.00
рейтинг книги
Род Корневых будет жить!

Брак по-драконьи

Ардова Алиса
Фантастика:
фэнтези
8.60
рейтинг книги
Брак по-драконьи

Боги, пиво и дурак. Том 3

Горина Юлия Николаевна
3. Боги, пиво и дурак
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Боги, пиво и дурак. Том 3

Отморозок 3

Поповский Андрей Владимирович
3. Отморозок
Фантастика:
попаданцы
5.00
рейтинг книги
Отморозок 3

Ваше Сиятельство 3

Моури Эрли
3. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Ваше Сиятельство 3