Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру

94 Часть /. Общие принципы устройства и функционирования Аtте/ А VR ЗАМЕТКИ НА ПОЛЯХ Больше всего примеров неграмотного подключения плат Aгdui пo связано с напряже­ нием питания 5 В. По какой-то причине производители традиционно не указывают пределы величины тока , который может выдержать встроенный стабилизатор платы Arduiпo Uпо при различных напряжениях подключенного адаптера Viп . Понять их мож­ но - слишком сложная для любителя получается картина зависимости выделяющей­ ся на стабилизаторе мощности от входного напряжения и нагрузки , чтобы можно было однозначно указать параметры. Между тем , для выбранного создателями платы Uno стабилизатора NCP1 1 1 7 в миниатюрном корпусе SOT-223 предельная температура кристалла ( 1 50 °С) при рекомендуемом напряжении адаптера 1 2 вольт будет достигнута уже при нагрузке около 1 30 мА, а при некотором ее превышении сработает защита, и схема начнет вести себя непредсказуемо. И ведь во избежание такой ситуации дос­ таточно ограничить входное напряжение - например, при Viп = 7 ,5-8 вольт предель­ ное значение тока нагрузки сразу возрастает до 300 мА. С другой стороны , NCP1 1 1 7 может выдержать и 20 вольт входного напряжения при соответствующем ограничении потребления (если больше ничего потребляющего более нескольких миллиампер, кроме самой платы , к нему не подключено) . А для напряжения 3,3 вольта , наоборот, совершенно необоснованно у�азано ограничение тока 50 мА, тогда как примененный в Uпо стабилизатор LP2985 допускает ток до 1 50 мА, и при входном напряжении 5 вольт, к которому он подключен на плате , далеко не достигнет опасных температур корпуса даже при этом максимальном значении тока (у меня есть подозрение, что цифра 50 мА задержалась в документации с каких-то старых ревизий платы) . Пример некорректного подключения нагрузки к Arduiпo Uпо при не оговоренном входном на­ пряжении представляет почти любой сетевой ресурс, описывающий применение сер­ вомоторов (см . главу 1 6) . Ограничение тока также может наступать про подключении светодиодных дисплеев с достаточно большим числом светящихся сегментов. Если учесть, что производители клонов Arduiпo могут ставить вместо указанных типов ста­ билизаторов все, что окажется у них под рукой , то неопределенность с питанием ока­ зывается уже совсем неприемлемой , - типичный результат программистского подхо­ да к проектированию. Мы не пойдем· на поводу у этой тенденции. И в первую очередь постараемся отне­ стись к программам для контроллера не как к самостоятельной сущности, требую­ щей отдельной квалификации, а просто как к еще одному этапу при создании схем. Отсюда и принципы подхода к процессу программирования, который можно сфор­ мулировать в трех словах: ничего сверх необходимого. Мы не станем терять время в поисках красивых и удобных инструментов отладки, в обсуждении возможностей и целесообразности построения микроконтроллерной операционной системы, в сравнительных оценках различных сред программирования . Мы потому и выбра­ ли ассемблер, что он позволяет ничего этого не делать, а сосредоточиться строго на целевой задаче. Ассемблер без излишних сложностей Начнем мы со средств создания ассемблерных программ . За многие годы ситуация в этой области мало изменилась - ничего принципиально нового не предлагается, только обновления некоторых уже известных инструментов, и притом не всегда удачные . Мы пока попробуем обойтись вовсе без них - минимально необходимым набором инструментов. Это редактор текста, собственно ассемблер (компилятор текста в загружаемый НЕХ-файл), программа-загрузчик (соответственно выбран­ ному вами программатору), а также еще некоторые необходимые файлы.

RkJQdWJsaXNoZXIy MTExODQxMg==