Микроконтроллеры AVR

 

 

 

 Сейчас огромный интерес представляют микроконтроллеры. И не удивительно, при помощи этих микросхем, можно разработать практически любое устройство, работающее по алгоритму заложенному самим роазработчиком. Отпадает необходимость применения дополнительных корпусов радиодеталей, ну или сведение их к минимуму. Надеюсь, эта страничка окажется полезной для начинающих разработчиков. Для начинающих - потому, что я сам не претендую на профессионала, скорее любитель :)) Потому и буду здесь выкладывать информацию, которая может заинтересовать новичков.

 

Часто, перед начинающим возникает делема - какой же контроллер выбрать? Хочу сказать, что на начальном этапе, это не играет большой роли, главное чтобы эта микросхема была под рукой. Не надо сразу хвататься за "сложноначинённые" корпуса, это ещё успеете сделать, освоив более простые.

Что касается меня, то я выбрал на начальном этапе ATmega8515. 40-ногий корпус имеет на борту 4 порта по 8 линий, работающих в обоих направлениях. Для начала, я не брал во внимание начинку: таймеры, счётчики и т.д. Меня интересовал сам факт освоения AVR контроллеров, а точнее переход от MCS-51 к AVR.

 

В качестве отступления скажу, что честно говоря, ассемблер для 51-х однокристалок, мне больше по душе, может это моё субъективное мнение, или просто наработанные навыки, но всё таки симпатия переваливает на сторону MCS-51. Тем не менее, решено было освоить AVR.

 

В общем договоримся, что будем вести речь об ATmega8515. Для начала понадобится собрать макетную плату, на которой можно воспроизвести фрагмент будущей разработки, протестировать написанную программу. В интернете вы найдёте множество вариантов таких плат, выбирайте по своему вкусу. Я в свою очередь предложу свой вариант. Он имеет 8 кнопок, 8 светодиодов, три транзисторных ключа, сдвоенный АЛС-индикатор, порт RS-232. Все порты ввода-вывода заведены на штыревые разъёмы. Гибкими перемычками или джамперами, можно задавать любую конфигурацию. На дополнительной плате установлены разъёмы, для подключения ЖК - модулей. Эта плата "наращивается " на макетку, при необходимости написания и отладки програм с ЖК-индикаторами. В общем, если вам это надо, то "вэлкам" сюда: тестовая плата для ATmega8515.

 

Ещё один немаловажный момент: потребуется программировать микроконтроллер, для этого необходимо изготовить какой-либо последовательный программатор, благо в сети этого добра хватает. Раньше я пользовался программой "Pony Prog", она бесплатна и свободна для скачивания с сайта разработчика. Там же вы найдёте схемы сами адаптеров для программирования. Хотя адаптеры - это громко сказано, пара транзисторов и резисторов. Как вариант, предлагаю ознакомиться с этим: программирование AVR. Года два назад, я приобрёл за 50 долларов китайскую разработку "AVR Dragoon", чем сейчас и прошиваю микросхемы. Ну это вам решать, что будете использовать.

 

Вооружившись макетной платой и программатором, приступайте к изучению ассемблера для AVR. Начиная работать с конкретным контроллером, потребуется изучить его описание, так называемый Datasheet, в большинстве своём они написаны на буржуйском языке, так что учите английский :))), хотя я думаю, что базовый набор знаний языка есть у большинства, если конечно вы не прогуливали уроки в школе :))). Зачем читать Datasheet? А вот зачем: не все команды ассемблера поддерживаются тем или иным типом контроллера. Так что вы будете использовать только те команды, которые найдёте в описании. Опять же, я пока не беру в расчёт описание внутренней структуры микросхемы, с этим разберётесь позже. Выкладываю для изучения Datasheet для ATmega8515 в формате PDF.

 

Для написание и отладки самой программы, используем бесплатный отладчик "AVR Studio" от корпорации ATMEL. При использовании AVR Dragoon, отладка и программирование происходит непосредственно из самой программы, что очень удобно.

 

Отдельно и настоятельно советую почитать литературу по AVR. Заходите по этой ссылке и скачивайте. Ну очень полезные книги!

 

Наверное "бывалые" обвинят меня в плагиате , но я всё равно начну свой ликбез с описания такой простой задачи, как мигающий светодиод, думаю самое то, что надо, для понимания процесса написания и отладки программ. Вообщем, вам сюда: мигающий светодиод.

 

продолжение скоро будет...

 

вернуться на главную страницу

Hosted by uCoz