Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру
Глава 4. Микроконтроллеры АVR на практике 71 ливать на выводы SCK, MOSI и MISO соответствующих портов в случае, если они используются для программирования и подключены к программирующему разъему ISP (см. главу 5). Обязательно их устанавливать также по выводам внешних преры ваний INTO- INТ2 и PCINТ, если они задействованы. Если эти выводы при выполне нии названных функций не «подтягивать» к напряжению питания дополнительны ми резисторами (пусть это и не оговорено в технической документации), то не ис ключены ложные срабатывания внешних прерываний, перезапуски системы, а при очень мощных помехах - даже порча программы в памяти программ. С другой стороны, когда выводы программирования служат в качестве обычных портов, сконфигурированных на выход, а в устройстве применяются режимы энергосбере жения, наличие «подтягивающих» резисторов может привести к лишнему потреб лению тока (при установке вывода в логический ноль через резистор потечет ток от источника питания на вход МК). Так что если реализован один из режимов энерго сбережения, нужно тщательно проанализировать схему, чтобы исключить ситуа ции, при котором через эти резисторы протекает ток. Также всегда следует устанавливать внешние резисторы при работе выводов МК на общую шину, как в интерфейсе I 2 c, или просто при подсоединении входа МК к вы ходу другого устройства с открытым коллектором - например, к выходу монито ров питания (см. главу 2). Сопротивление встроенного резистора в таких случаях слишком велико для того, чтобы электромагнитные помехи («наводки») на нем эф фективно «садились», а в случае 1 2 С при большой емкости шины (т. е . если она дос таточно длинная) могут недопустимо затягиваться фронты импульсов. При этом еще раз повторим, что каждый дополнительный «подтягивающий» резистор увели чивает потребление схемы, и в случае экономичных режимов их установку стоит продумывать отдельно - возможно, иногда от них целесообразно и отказаться . Корпуса МК и их установка на плату Примеры некоторых типов корпусов, в которых выпускаются микросхемы АVR, приведены на рис. 4 . 1 . Более подробную информацию на эту тему можно найти в прwюжении 2 и в технической документации на контроллеры. Для любительских целей при ручной пайке плат пригодна фактически только одна разновидность корпуса (см. рис. 4 . 1 ) - это DIP или, иначе, РDIР-корпус (буква «Р» впереди просто означает, что корпус из пластика, а не керамический). Такой тип корпуса обозначается буквой «Р» после значения частоты (например, ATmega8- 1 6PU) - и он одинаково удобен и для запайки в плату «наглухо», и для установки на панельку. Именно в таком корпусе устанавливается контроллер в плату Arduino Uno, поэтому его можно оттуда извлекать и использовать плату и контроллер от дельно друг от друга. Надо только учитывать, что DIР-корпуса с более чем 40 кон тактами не встречаются, поэтому не все старшие модели ATmega удобны для ра диолюбительской практики (см. табл. П2 .2 в приложении 2) . Ранее, когда внутрисхемного программирования не существовало, были популярны корпуса типа PLCC с подпружиненными контактами (обозначаются буквой «J»). Вместе с обязательно необходимой в этом случае панелькой они занимают на плате
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==