Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру
ГЛАВА 2 Общее устройство, организация памяти, тактирование, сброс Изучение Arduino традиционно начинается с краткого ознакомления с функцио- нальностью внешних выводов и возможностями среды программирования. После этого вам предлагают написать традиционную программку мигания светодиодом, указывают на веб-ресурсы по решению типовых задач, а также на справочник по языку, и считается, что первый урок вы усвоили, — можете приступать к работе. Эта подкупающая простота оборачивается тем, что вы можете многие годы про- граммировать контроллеры Arduino и так и не узнать, как на деле реализуются функции delay() или millis() , каковы вообще возможности таймеров, для чего их еще можно использовать, и как это делать правильно, не мешая другим функциям. Поэтому мы здесь такого верхоглядства не допустим и выберем более консерва- тивный подход — начнем все-таки с общего обзора структуры AVR-контроллеров, а в следующей главе рассмотрим кратко те их возможности, которые в Arduino обычно вовсе выносятся за скобки. Практические примеры вы начнете осваивать, начиная с главы 6 , так что пока наберитесь терпения — без этих предварительных сведений вообще не стоило бы затевать всю историю с ассемблером. З АМЕТКИ НА ПОЛЯХ Ручаюсь, что после прочтения некоторых разделов этой главы у вас в голове образу- ется полная каша — все нюансы различий в разных моделях контроллеров запомнить нереально (хотя бы потому, что моделей 8-разрядных AVR существует около 200, и все они хоть в чем-то да различаются). Не стоит, однако, впадать в уныние — здесь вам представлена общая картина, так сказать, набросок панорамы с высоты птичьего полета. В дальнейшем (см. главу 4 ) мы ограничимся несколькими моделями контрол- леров, для которых детально будет расписано, что и где нужно устанавливать в тех или иных условиях эксплуатации. А руководствуясь общими сведениями из этой гла- вы, вы уже будете представлять, на что обращать внимание при необходимости ис- пользовать другие модели контроллеров. Общая структура внутреннего устройства МК AVR приведена на рис. 2.1. Здесь показаны все основные компоненты AVR (за исключением модуля JTAG, который имеется не во всех моделях, и мы его касаться не будем). В отдельных моделях
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==