Главная страница Комбинированное использование портов моделирования, но учитывается программным обеспечением. обходимо отметить гибкость установки точек прерываний и ио; фикации регистров. Достаточно навести курсор на строку, котору вы хотите определить как точку прерывания, или на регистр, ко. торый собираетесь изменить, и впечатать новое значение. Не тре. буется запоминать адрес прерывания, все видно на экране. Наконец, довольно редкая, но очень полезная опция: симулятор может переходить назад на величину от одного до ста шагов. Это позволяет, например, увидеть, каким было состояние приложения до остановки программы! Эмуляторы ClearView 5Х и ClearViewXX Эмулятор ClearView 5Х предназначен для группы микроко1ггролле-ров PIC 16С5Х, в то время как ClearView XX - для остальной части подсемейства PIC16СХХ. Такое деление неудобно, так как вынуждает приобретать два отдельных устройства, чтобы обеспечить работу со всеми микроконтроллерами подсемейства PIC 16СХХ. В том, что касается аппаратуры, данные эмуляторы сходны с сиш лятором Reflection-5x. Отличие в том, что у эмуляторов ClearView 5Х и XX имеется тактовый генератор, способный заменить, в случае необходимости, тактовый генератор приложения. Включается он двумя DIP-переключателями. Сетевой адаптер обоих устройств име ет небольшие размеры и обеспечивает напряжение питания от 7 до 9 В при токе до 1 А. Подключение к приложению осуществляется в соответствии с рис. 2.6, поскольку это настоящие эмуляторы. Что касается их программного обеспечения, то все сказанное по поводу Reflection-5x действительно и для них. Но поскольку ClearView 5Х и XX являются эмуляторами, они работают в реальном времени. Поэтолгу, если вы, например, тестируете свою программ} и в ходе теста осуществляете прогон программы от одного прерывания до другого, он будет происходить с той же скоростью, как если бы на вашем приложении стоял микроконтроллер. Это остается действительным до частоты тактового генератора 20 МГц для ClearView 5Х и до 10 МГц - для ClearView XX. Естественно, в реальном времени можно имитировать и функЦй онирование портов ввода/вывода, что свойственно только настоЯ щему эмулятору. ГЛАВА 3 ОСЕМНЫЕР ИН МИ ПЕНИЯ ЙЛ!]Х!1ШЛЛЕР0В эдаллельные выходы Д зшельные входы 1Шмбиниоованное использование портов 2йЩ]няя периферия Вйе>гонезависимая память с последовательным интерфейсом Шзравление а малого - цифров ы м преобразователем Большинство устройств на основе микроконтроллеров соединяем, ся с внешними устройствами при помощи портов ввода/вывода. Щ назначение может быть различным и определяется конкретны; применением микроконтроллера. Так, если ваш микроконтроллер автомат, управляющий посудомоечной машиной, на его входы буду. подаваться сигналы с различных датчиков, а его выходы - управлять двигателями и электромагнитными клапанами. Если же речь иде о программируемом термостате, то порты ввода/вывода миясросхе-мы будут взаимодействовать с клавиатурой, цифровым индиката ром, температурным зондом и системой управления нагревательна го устройства. Разнообразие применений портов ввода/вывода не должно вас п)тать, поскольку в большинстве случаев в их основе лежит несколько базовых схем, которые и описаны в этой главе. Ни одно из представленных здесь решений не претендует на звание единственно возможного или самого лучшего. Преимущество микроконтроллеров именно в том и проявляется, что они позволяют получить один и тот же результат разными способами. Отталкиваясь от представленных здесь примеров, вы должны сами определить, какой вариант лучше всего подходит для того или иного приложения. ПАРАЛЛЕЛЬНЫЕ ВЫХОДЫ Речь идет о наиболее простом способе использования портов ввода/ вывода, как по числу необходимых компонентов, так и по сложности соответствующего программного обеспечения. И именно в устройствах с микроконтроллерами такой вид взаимодействия аппарат}р ных узлов применяют чаще всего. Поэтому мы с него и начнем. В качестве выходов параллельные порты могут применяться ]Jp управления реле, симисторами, светодиодными или иными цифр* выми индикаторами. Управление светодиодами и оптронами Управление светодиодами - самое простое, что может встретиться на практике. Схемно оно может немного изменяться в зависимое! от используемого микроконтроллера. У некоторых микроконтроДЛ ров выходы рассчитаны на ток большой силы, а поэтому светодй может быть подключен к ним непосредственно через ограничив щий ток резистор. В качестве примера приведем схему утгравле четырьмя светодиодами через порт А PIC-микроконтроллера /ойс- 3 Напомним, что допустимая сила тока каждого выхода параллельного порта указанных микросхем составляет 20 мА, что вполне достаточно для зажигания одного светодиода. Но суммарный ток дорта не должен превышать 50 мА В рассматриваемом случае воспользуемся светодиодом на 10 мА, чтобы не превышать этого максимума. Если требуется, чтобы индикация была хорошо видна, следует использовать светодиоды высокой яркости или применить схему, по-,сазанную на рис. 3.2, в которой к выходу микроконтроллера подклк>-чен примитивный усилитель на транзисторе. Ограничительный резистор Run, выбирается в зависимости от требуемой силы тока. Учитывая значение сопротивления в цепи базы транзистора и его коэффициент усиления, через светодиод можно получать ток в 100 мА и более, чего вполне достаточно. Если один микроконтроллер должен управлять больше чем четырьмя светодиодами, целесообразнее выбрать интегральную микросхему с несколькими усилителями тока. Широко применяются микросхемы ULN2003 и ULN2803 (рис. 3.3), содержащие семь и восемь таких усилителей соответственно. Эти микросхемы изначально выпускались фирмой Sprague, теперь же они предлагаются многими производителями. Усиление тока в них осуществляют схемы на составных транзисторах (схема Дарлингтона), включающие защитный диод, не используемый в случае, показанном на рис. 3.3, но необходимый при управлении реле, о чем будет рассказано ниже. Каждая схема обеспечивает токи до 500 мА. В цепи базы входного транзистора установлен резистор, ограничивающий входной ток и позволяющий напрямую подключаться к портам микроконтроллера. -(-5V RAO RA1 RA2 RA3 22O...330fl -пз- -CZh LEDO LED1 LED2 LED3 .LED hRlir 2N2222A Прямое управление одиодами через параллельный порт Рис. 3.2 Использование усилителя на транзисторе Программа, управляющая данной светодиодной периферце крайне проста (листинг 3.1). Она составлена для схемы, изобралсец ной на рис. 3.1. Для включения или выключения светодиода достахо1( но записать в соответствующий бит регистра порта 1 или 0. Рис. 3.3 TIT- ULN2003 2,7kfi о-Г-СИЗ- 7.2к0 ----------J ULN2803 -о СОМ -т-о i i i Микроаемы ULM2003 и UIM2803 Листинг V павление светодиодами, подключенными к параллельному порту. Эта программа розывает, как управлять светодиодами, подключенными к параллельному порту PIC 16СХХ. LED3 LB)1 LEDO org га.З га. 2 ra.1 га. О Определение используемого PIC-микроконтроллера. device picl6c54,xt osc,wdt off,protect off reset Инициализация порта, iniport mov ra.#FFh nw !ra,#FOh Управление светодиодами. Записываем 1 во все разряды порта А. при этом все светодиоды гаснут. Определяем 4 младших разряда порта как выходы. cmled clrb setb rnov irov LEDO ; LEDO ra,#11110110b ra.#11111111b ra,#FOh ... и так далее. Зажигаем светодиод LEDO. Выключаем светодиод LEDO. ; Зажигаем светодиоды LEDO и LED3. ; Выключаем все светодиоды. ; Зажигаем все светодиоды. Процед) pa инициализации порта используется во многих программах. В самом ее начале, прежде чем необходимые разряды бу-Дут определены как выходы, во все разряды регистра данных порта записывается 1. Такая запись позволяет избежать замыкания с линиями, имеющими противоположные логические уровни. Конечно, при управлении светодиодами это неважно, но в некоторых устройствах замыкание недопустимо. Управление оптронной парой осуществляется аналогично управлению светодиодами. Поэтому все, что было сказано выше о свето-**одах, применимо и для оптронов. Значения сопротивления ограничительных резисторов для них должны выбираться с учетом симально допустимой силы тока светодиодов, которые использу-тсяоптронами.
|
© 2000 - 2024 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |