Читаем Как проектировать электронные схемы полностью

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

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

Однако во всех случаях применяется принцип повторения (нередко многократного) одной или нескольких команд, задающих калиброванную базовую задержку. Таким образом, чтобы обеспечить ожидание в течение 20 мс, нужно 20 раз выполнить подпрограмму задержки на 1 мс или 200 раз повторить подпрограмму задержки на 100 мкс.

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

В этих случаях очень важно иметь точные характеристики микропроцессора, чтобы знать длительность выполнения каждой из команд. Данные величины указываются в виде числа машинных циклов, равных, как правило, части периода тактового генератора. Так, для некоторого цикла в документации может быть указано время: tcycl = 2tosc. Это означает, что при рабочей частоте кварцевого генератора 2 МГц данный цикл будет длиться 1 мкс (2 х 0,5 мкс). Если команда Ida 48 выполняется за два цикла, она длится 2 мкс. Повторяя команду n раз, можно обеспечить временную задержку n х 2 мкс.

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

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

ФОРМИРОВАНИЕ СИГНАЛА СИНХРОНИЗАЦИИ

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

Электрическая сеть — довольно точный источник задающего сигнала. При ее использовании обычно удается исключить ошибки считывания, вызываемые внешними помехами. В регулирующих устройствах с широтно-импульсной модуляцией (см. главу 2, раздел «Широтно-импульсная модуляция») при наличии счетчика, синхронизированного с напряжением сети, можно управлять симистором в нужный момент без создания дополнительной схемы синхронизации.

Принцип запуска схемы синхронизации от сети подобен принципу генерации сигнала установки системы в исходное состояние (см. раздел «Начальная установка микроконтроллера»). Отметим, что обе схемы могут сосуществовать в одном устройстве. Используемый в схеме стабилитрон ограничивает сверху напряжение, снятое с выхода трансформатора (перед диодным мостом), до величины, приемлемой для микроконтроллера (рис. 4.6).

Полученный прямоугольный сигнал подается на вход прерывания (или на другой вход) через резистор ограничения тока. При необходимости этот сигнал можно использовать в качестве опорного для внутреннего таймера.

ОХЛАЖДЕНИЕ АППАРАТУРЫ

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

В некоторых случаях мощность уменьшилась в 50-100 раз. Одновременно с этим можно наблюдать впечатляющий рост возможностей и быстродействия электронных устройств. Тем не менее мощность, рассеиваемая процессором, продолжает оставаться его важной характеристикой. Особенно это касается материнских плат IBM-совместимых компьютеров.

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

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

100 способов избежать аварии. Спецкурс для водителей категории В
100 способов избежать аварии. Спецкурс для водителей категории В

Сколько раз, сидя перед экраном телевизора, вы вздрагивали, услышав визг тормозов? К сожалению, со стороны пассажирского сиденья он звучит еще страшнее. Все мы прекрасно знаем, что, садясь за руль, мы несем ответственность не только за себя и своих спутников, но и за всех участников дорожного движения.Так как же вести себя, если вы понимаете, что ситуация вышла из-под контроля и велика вероятность аварии?Александр Каминский, изучив часто случающиеся аварии, на страницах своей книги поделился опытом и секретами, как их избежать, а также подробно описал экстренные действия во время нештатных ситуаций.Книга написана живым и доступным языком и предназначена для широкого круга автовладельцев с различным стажем вождения. Желаем вам приятного чтения и надеемся, что чужой опыт, описанный в этой интересной книге, никогда не станет вашим!

Александр Юрьевич Каминский

Автомобили и ПДД / Техника