Читаем PIC-микроконтроллеры. Все, что вам необходимо знать полностью

Таймер 1 совместно с модулем ССР1, работающим в режиме сравнения, будет использоваться для формирования секундного интервала. Этот таймер тактируется от собственного генератора с часовым кварцем, а его состояние изменяется от h’0000’ до h’7FFF’. Однако для облегчения перевода единиц (об/мин = 60 х об/с) предлагается уменьшить интервал счета в 60/64 раз, чтобы реализовать эквивалентное соотношение — ([об/с] х 60/64) х 64. Это можно сделать, уменьшив модуль счета до h’7FFF’ х 60/64 = h’77FF’. Итоговое умножение на 64 можно выполнить либо сдвигом результата на шесть разрядов влево (<<6), либо, что более эффективно, копированием полученного значения в об/с в старший байт результата в об/мин и сдвигом его на два разряда вправо, т. е.

[об/мин] = ([об/с] х 256) >> 2.

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

Возможный вариант программы, реализующей описанный алгоритм, приведен в Программе 13.6. В секции инициализации выполняются следующие операции:

• Таймер 0 переключается в режим счета по спадающему фронту сигнала на входе T0CKI.

• Модуль ССР1 переключается в режим сравнения 1011 для сброса Таймера 1 по событию «совпадение».

• Разрешается прерывание по этому событию.

• В регистры CCPR1H: L заносится значение, соответствующее интервалу 60/64 с.

В процедуре обработки прерывания число оборотов в секунду, считанное из Таймера 0 и расширенное до двухбайтного значения, сохраняется во временных регистрах. После этого Таймер 0 обнуляется, а сохраненное значение преобразуется к об/мин, как было описано выше. После двукратного сдвига вправо два старших бита регистра RPM сбрасываются, чтобы исключить воздействие флага переноса. Итоговое 14-битное число в регистрах RPM: RPM+1 является искомым результатом, который впоследствии может использоваться в фоновой программе для выдачи на дисплей или, быть может, для передачи в компьютер по последовательному каналу.

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

Программа 13.6. Программное обеспечение тахометра

Перейти на страницу:

Все книги серии Программируемые системы

PIC-микроконтроллеры. Все, что вам необходимо знать
PIC-микроконтроллеры. Все, что вам необходимо знать

Данная книга представляет собой исчерпывающее руководство по микроконтроллерам семейства PIC компании Microchip, являющегося промышленным стандартом в области встраиваемых цифровых устройств. В книге подробно описывается архитектура и система команд 8-битных микроконтроллеров PIC, на конкретных примерах изучается работа их периферийных модулей.В первой части излагаются основы цифровой схемотехники, математической логики и архитектуры вычислительных систем. Вторая часть посвящена различным аспектам программирования PIC-микроконтроллеров среднего уровня: описывается набор команд, рассматривается написание программ на ассемблере и языке высокого уровня (Си), а также поддержка подпрограмм и прерываний. В третьей части изучаются аппаратные аспекты взаимодействия микроконтроллера с окружающим миром и обработки прерываний. Рассматриваются такие вопросы, как параллельный и последовательный ввод/вывод данных, временные соотношения, обработка аналоговых сигналов и использование EEPROM. В заключение приводится пример разработки реального устройства. На этом примере также демонстрируются простейшие методики отладки и тестирования, применяемые при разработке реальных устройств.Книга рассчитана на самый широкий круг читателей — от любителей до инженеров, при этом для понимания содержащегося в ней материала вовсе не требуется каких-то специальных знаний в области программирования, электроники или цифровой схемотехники. Эта книга будет также полезна студентам, обучающимся по специальностям «Радиоэлектроника» и «Вычислительная техника», которые смогут использовать ее в качестве учебного пособия при прослушивании соответствующих курсов или выполнении курсовых проектов.

Сид Катцен

Радиоэлектроника

Похожие книги

Электроника для начинающих (2-е издание)
Электроника для начинающих (2-е издание)

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

Чарльз Платт

Радиоэлектроника / Технические науки
Электроника для начинающих
Электроника для начинающих

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

Паоло Аливерти , Чарльз Платт

Радиоэлектроника / Технические науки
Искусство схемотехники. Том 3 (Изд.4-е)
Искусство схемотехники. Том 3 (Изд.4-е)

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

Пауль Хоровиц , Уинфилд Хилл

Техника / Радиоэлектроника