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

Тут можно читать онлайн Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом «ДМК-пресс», год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом «ДМК-пресс»
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    5-9706-0034-2
  • Рейтинг:
    4/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

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

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - описание и краткое содержание, автор Стивен Барретт, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

Издание содержит материал, охватывающий все вопросы проектирования, включает множество заданий для самостоятельной работы, примеры программирования, примеры аппаратных решений и эксперименты по исследованию работы различных подсистем микроконтроллеров.

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

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать онлайн бесплатно полную версию (весь текст целиком)

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Определение длительности временных интервалов

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

При первом способе счетчик временной базы сбрасывается в момент первого изменения сигнала. Обнуление счетчика можно произвести в подпрограмме прерывания по событию входного захвата, которое соответствует первому изменению исследуемого сигнала. В этой же подпрограмме подсистема входного захвата перепрограммируется на детектирование второго события в исследуемом сигнале. Счетчик временной базы продолжает наращивать код. В момент второго изменения сигнала, которое фиксирует подсистема входного захвата, текущий код счетчика запоминается в специальном двухбайтовом регистре. Если в процессе слежения за сигналом переполнений счетчика временной базы не было, то запомненный код и есть искомая длительность временного интервала, выраженная в числе периодов частоты тактирования счетчика временной базы.

При втором способе счетчик временной базы считает непрерывно, он никогда принудительно не обнуляется. В момент первого изменения сигнала подсистема входного захвата запоминает текущее значение кода счетчика временной базы в регистре и генерирует запрос на прерывание. В подпрограмме прерывания по событию входного захвата этот двухбайтовый код программно считывается и запоминается в оперативной памяти МК под именем Start. В этой же подпрограмме подсистема входного захвата перенастраивается на детектирование второго изменения сигнала. Когда это событие происходит, подсистема входного захвата опять запоминает новое текущее значение кода счетчика временной базы и генерирует запрос на прерывание. В подпрограмме прерывания новый код счетчика запоминается под именем Stop. Если в процессе слежения за сигналом переполнений счетчика временной базы не было, то искомая длительность временного интервала, выраженная в числе периодов частоты тактирования счетчика временной базы, определяется как (Stop – Start).

а Вариант 1 Код Stop Код Start переполнений счетчика временной базы за - фото 91

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

б Вариант 2 Код Start Код Stop за время измерения было одно переполнение - фото 92

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

в Вариант 3 Код Stop Код Start за время измерения было N переполнений - фото 93

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

г Вариант 4 Код Start Код Stop за время измерения было N переполнений - фото 94

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

д Вариант 5 Код Start Код Stop за время измерения было N переполнений - фото 95

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

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

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

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

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

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

TIME = (2 16 – Start ) + Stop = 2 16+ ( StopStart )

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

TIME = 2 16× n + ( StopStart ),

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

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

t IZM = TIME × ( TCNTclock ),

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

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

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

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

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

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

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

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стивен Барретт читать все книги автора по порядку

Стивен Барретт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


Отзывы читателей о книге Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С, автор: Стивен Барретт. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x