Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру
70 Часть /. Общие принципы устройства и функционирования Аtте/ А VR будем рассматривать в соответствующих главах применительно к конкретным узлам, здесь же остановимся на некоторых общих вопросах подключения МК АVR. Начнем с выводов питания. У семейства Тiny таких выводов обычно два: VCC и GND - и подключение их не вызывает вопросов. У Mega из-за наличия аналого цифрового преобразователя выводов питания больше: добавляется еще аналоговое питание AVCC и как минимум еще один «земляной» вывод GND. В Сети гуляет заблуждение, первоисточником которого, видимо, следует считать первые издания справочника Евстифеева: дополнительный вывод «земли», находящийся вблизи аналогового питания АVCC, по аналогии именуют «аналоговой землей» - AGND. На самом деле термин «аналоговая земля», встречающийся в описаниях АVR, от носится не к контроллеру, а к аналоговой части остальной схемы. И никакой раз ницы во всех «земляных» выводах (а у многовыводных АVR в планарных корпусах выводов GND может быть много) нет - все они соединены внутри кристалла, и в цифровых функциях любой из них (или все вместе) можно использовать в качестве общего провода схемы (в изданиях [6,7] эта ошибка почти везде исправлена) . За метьте, что вывод питания AVCC необходимо подключать только в том случае, если вы используете АЦП, иначе его можно оставлять без внимания . ПОДРОБНОСТИ Однако есть-таки один нюанс - если схема имеет аналоговую часть , которая подклю чается к АЦП , то общий провод этой схемы (аналоговую «землю» платы) следует под ключать именно к тому выводу GND, который размещается вблизи AVCC. Во-первых, потому, что так банально удобнее (для того и выводили отдельную «землю» рядом с аналоговым питанием, чтобы не тащить проводники через всю плату) , во-вторых, этот вывод находится рядом с узлом АЦП на кристалле, и на этот узел будет меньше попадать помех по внутренней шине питания. Иными словами , в особом наименова нии этого вывода - AGND - имеется определенный смысл , но еще раз повторим, что он возникает только при наличии аналоговых подключений в АЦП , а в остальном все «земли» равноправны . Микросхемы AVR, как и всякая КМОП-логика, благодаря высокому порогу сраба тывания эффективно защищены от помех по шине «землю> . Однако они ведут себя гораздо хуже при помехах по шине питания . Поэтому не забывайте о развязываю щих конденсаторах, которые нужно устанавливать непосредственно у выводов питания (керамические 0, 1 - 1 мкФ), а также про качество сетевых выпрямителей и стабилизаторов. Собственно, все то же самое рекомендуется и для Arduino, где часть этих требований уже выполнена изготовителем при проектировании плат. У выводов портов МК при работе в качестве входных линий имеется внутренний подключаемый «подтягивающий» резистор (pullup, т. е . подсоединенный к шине питания) . Это, казалось бы, решает одну из обычных схемотехнических проблем, когда наличие такого резистора требуется для подключения двухвыводных кнопок или выходов с «открытым коллектором». Однако, как мы уже говорили ранее (см. главу 3), в большинстве случаев надежность и помехоустойчивость схемы заметно повысится, если использовать внешний резистор сопротивлением 1 - 1 О кОм (в кри тичных для потребления случаях его можно увеличить до 30 кОм). «Подтягивающий» резистор следует устанавливать и на выводе RESET (о чем также уже говорилось в главе 2). Кроме того, такие резисторы желательно устанав-
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==