Выбрать главу

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

Питание от линий портов

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

Аналогично можно использовать линию RTS порта RS-232. Для ее использования следует собрать простейший параметрический стабилизатор напряжения на стабилитроне. Параллельно стабилитрону следует подсоединить конденсатор емкостью не менее 10 мкФ.

Внимание! Принципиальный момент — независимо от типа источника питания как можно ближе к выводам питания микроконтроллера следует подсоединить керамический (еще лучше — танталовый) конденсатор емкостью 0,01… 0,1 мкФ — для подавления помех по цепи питания. Кстати, такой конденсатор следует ставить рядом с каждой цифровой микросхемой.

3.2. Внешние элементы тактового генератора

Использование кварцевого резонатора

Использование кварцевого резонатора наиболее распространенный способ включения внешней схемы тактового генератора. Эта схема требует дополнительно два конденсатора емкостью от 22 до 33 пФ, чтобы облегчить запуск тактового генератора.

На рис. 3.2 показана схема подключения кварцевого резонатора к микроконтроллеру.

Рис. 3.2. Подключение кварцевого резонатора к микроконтроллеру

Использование встроенного RC-генератора

В некоторых типах микроконтроллеров AVR имеется встроенный RC-тактовый генератор (например, AT90S1200, AT90S2343, Tiny22). Его включением управляет бит RCEN. В микроконтроллере AT90S1200 встроенный RC-генератор отключен, его можно включить только пользуясь параллельным программатором. Имеется вариант микроконтроллера AT90S1200A, в котором заранее включен встроенный RC-генератор. Микроконтроллеры AT90S2343 и Tiny22 поставляются с уже включенным RC-генератором.

Следует учитывать, что стабильность частоты RC-генератора намного ниже, чем кварцевого, поэтому не следует применять его в случаях, когда нужно точно отмерять интервалы времени.

3.3. Цепь сброса

Используется для задержки запуска микроконтроллера при включении питания, что нужно для его правильного запуска, а также для ручного перезапуска микроконтроллера нажатием на кнопку.

Простейшая схема цепи сброса показана на рис. 3.3.

Рис. 3.3. Простейшая цепь сброса

Если в схеме используется встроенная электрически перепрограммируемая память данных микроконтроллера, следует использовать внешнюю схему, удерживающую вывод Reset на низком уровне до тех пор, пока напряжение не поднимется до необходимого для нормальной работы микроконтроллера уровня. Эта схема должна работать как при увеличении напряжения (т. е. уровень на выводе Reset станет высоким только после достижения напряжением питания нужного уровня), так и при снижении напряжения питания ниже допустимого уровня. Такая схема обычно называется супервайзер питания. На рис. 3.4 показана схема одного из вариантов подключения супервайзера питания.

Рис. 3.4. Схема подключения супервайзера питания

Глава 4

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

4.1. Ассемблер

Как известно, наиболее эффективные программы получаются при использовании языка Ассемблер. Стоит, правда, отметить, что при этом также увеличивается сложность и время разработки программы. Для микроконтроллеров семейства AVR имеется свободно распространяемый транслятор ассемблера — wavrasm. Также одновременно с транслятором ассемблера устанавливается программа для отладки программ на языке ассемблера для микроконтроллеров семейства AVR. Однако она заметно уступает свободно распространяемому фирмой Atmel отладчику AVR Studio, поэтому ее мы рассматривать не будем.