Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Всем, всем, всем!
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
-Lucifer-
Пожалуйста дайте ссылку на электронную книгу по асму для авр. Не просто перечень команд, а реальный учебник. Никак не могу научиться писать на них проги!!! И ещё мануал для VMLAB, где описываеться как создовать проэкты, и какие там команды, на русском!!!
Покупать не предлогайте, у меня в городе врятли такое найдётся!!!
m16
В додеке есть три книги по AVR http://www.dodeca.ru/izd.htm.
сам заказывал после оплаты через неделю получил
niksal
Если английский не помеха, то вот неплохой учебник для начинающих:

http://www.avr-asm-tutorial.net/beginner_en.pdf
_Vladimir_
Если Вы совсем начинающий, то ИМНО AVR может не самый удачный выбор для начала освоения МК (каков бы хорош он не был сам по себе), особенно если совсем нет навыков программирования.
Начинать изучение лучше с 51 архитектуры.
По крайней мере материалов по этой архитектуре более чем достаточно, в том числе и на русском. Классика есть классика...
dxp
Цитата(_Vladimir_ @ May 15 2005, 18:45)
Если Вы совсем начинающий, то ИМНО AVR может не самый удачный выбор для начала освоения МК (каков бы хорош он не был сам по себе), особенно если совсем нет навыков программирования.

Нормальный МК, классический пример Load/Store архитектуры. При всех недостатках и кривостях реализации (именно AVR), МК очень простой, с понятным набором команд.

Цитата(_Vladimir_ @ May 15 2005, 18:45)
Начинать изучение лучше с 51 архитектуры.
По крайней мере материалов по этой архитектуре более чем достаточно, в том числе и на русском. Классика есть классика...
*

Вот уж чего действительно не надо делать, так это изучать сегодня 51-й. Давно морально устаревшая архитектура, с очень малым объемом прямоадресуемой памяти, без приличных режимов косвенной адресации, из-за чего на эту платформу весьма плохо ложатся ЯВУ (в частности, С/С++).

Да, в свое время 51-й был очень неплох, его битовой поле для флагов было кстати, позволяя экономить память, которой было мало. Но сейчас и без этой фичи выходит неплохо, а памяти в МК стало гораздо больше.

Если уж хочется классики, то из современных МК лучше рекомендовать MSP430, который похож на PDP-11, фон Нейман, 16-разрядный. 27 ортогональных команд. Линейное адресное пространство. Ко всему этому очень гибкая система тактирования и очень приличная периферия. Замечательный МК.
NickB
Начинайте с ARM Сейчас каждаю уважающая себя фирма выпускает проц на ядре ARM. Похоже что скоро в каждой елочной гирлянде будет стоять ARM процессор
vvs157
Цитата(NickB @ May 16 2005, 10:27)
Начинайте с ARM Сейчас каждаю уважающая себя фирма выпускает проц на ядре ARM. Похоже что скоро в каждой елочной гирлянде будет стоять ARM процессор
*


Если человек "самодельщик" - то есть хочет освоить МК в домашних условиях и не имеет возможность купить дорогущий eval. kit то ни ARM ни MSP не подходят из-за отсутсвия DIP корпусов. В DIP есть AVR, PIC и конечно 51.
LeoLabs
Цитата(NickB @ May 16 2005, 14:27)
Похоже что скоро в каждой елочной гирлянде будет стоять ARM процессор
*

Похоже разработчики глупеют с каждым днем - не дело бить из пушки по воробьям smile.gif.
А про АРМ скажу - не все приложения требуют такой мощности, вопрос о которой стоит особенно остро в носимых изделиях. Хотя ядро хорошее, но "нахаляву" вряд ли можно на нем что-то соорудить.
dxp
Цитата(vvs157 @ May 16 2005, 13:38)
Цитата(NickB @ May 16 2005, 10:27)
Начинайте с ARM Сейчас каждаю уважающая себя фирма выпускает проц на ядре ARM. Похоже что скоро в каждой елочной гирлянде будет стоять ARM процессор
*


Если человек "самодельщик" - то есть хочет освоить МК в домашних условиях и не имеет возможность купить дорогущий eval. kit то ни ARM ни MSP не подходят из-за отсутсвия DIP корпусов. В DIP есть AVR, PIC и конечно 51.
*


DIP - фтопку. Совершенно он не нужен даже для наколенных поделок. Во-первых, есть SOIC'и, которые легко и непринужденно паяются на макетке, во-вторых, есть макетки для стандартных копрусов от DIP до SOIC и QFP. В-третьих, есть лазерный утюг, с помощью которого умельцы успешно изготавливают и под TQFP с шагом 0.5 (хотя, имхо, это уже изврат smile.gif )

А программировать все равно надо внутрисхемно. И отлаживать. В этом смысле тот же MSP430 очень привлекательно смотрится - копеечный адаптер на основе 74НС244 и программирование + внутрисхемная отладка в кармане.
vvs157
Цитата(dxp @ May 16 2005, 13:27)
DIP - фтопку. Совершенно он не нужен даже для наколенных поделок. Во-первых, есть SOIC'и, которые легко и непринужденно паяются на макетке, во-вторых, есть макетки для стандартных копрусов от DIP до SOIC и QFP. В-третьих, есть лазерный утюг, с помощью которого умельцы успешно изготавливают и под TQFP с шагом 0.5 (хотя, имхо, это уже изврат smile.gif )
*


А разве под SOIC есть панельки (за разумные деньги!)? DIP для самоделок хорош именно тем, что можно использовать панельки. И сколько раз "лазерно-утюжная" плата выдержит перепайку чипа? - Максимум один раз.
dxp
Цитата(vvs157 @ May 16 2005, 17:20)
Цитата(dxp @ May 16 2005, 13:27)
DIP - фтопку. Совершенно он не нужен даже для наколенных поделок. Во-первых, есть SOIC'и, которые легко и непринужденно паяются на макетке
*


А разве под SOIC есть панельки (за разумные деньги!)? DIP для самоделок хорош именно тем, что можно использовать панельки. И сколько раз "лазерно-утюжная" плата выдержит перепайку чипа? - Максимум один раз.
*


Зачем панельки??? blink.gif Просто запаял и все. Зачем перепайки? Работа ведь не в перепайке чипа состоит!
_Vladimir_
Sorry, если дублирование, но кажется пост потерялся.
Давайте не забывать, что человек спрашивал.
Учебную литературу по программированию для АВР.
И я так понял и мануалы по копиллированию-сборке-отладке тоже не будут лишними.
Если первый выбор АВР продиктован какими-то причинами, то надо это "подчеркнуть", может удасться помочь.
А если только потому что убедили что AVR "круто и просто" и оптимальный выбор для начала, то я например с этим не согласен.
А наша дискуссия уклонилась в сторону какая архитектура лучше/хуже.
Я повторяю - если надо АЗЫ, то 51, хотя бы потому, что любая книга по микропроцессорам хоть главу ему посвящает и более (есть неудачные, есть очень удачные). просто легче найти литературу для начинающего именно по 51 и массу вяких примеров.
Все таки это классика в прямом смысле и не надо называть ее устаревшей и отстоем еще долго - какие бы не были другие проц. лучше и совершеннее.
Да, большинство превосходят 51, но очень многие производители еще не собираются снимать это 51-совместимое ядро с производства, обвешивают периферией и т. п. И совсем не потому ЧТО ЭТО СОВЕРШЕННАЯ архитектура.
Не так важно почему, но 51 еще остается массовым процессором и более удобным для обучения, методологически.
dxp
Цитата(_Vladimir_ @ May 16 2005, 18:32)
А наша дискуссия уклонилась в сторону какая архитектура лучше/хуже.
Я повторяю - если надо АЗЫ, то 51, хотя бы потому, что любая книга по микропроцессорам хоть главу ему посвящает и более (есть неудачные, есть очень удачные). просто легче найти литературу для начинающего именно по 51 и массу вяких примеров.

Далеко не любая. И 51-й тут не лучше массы других МК. Вот уже давно есть русскоязыченое описание на AVR, есть русскоязычное описание на MSP430. Это если английский проблема (хотя без английского сегодня в технике делать нечего - вся элементная база, вся дока, весь софт, да тот же интернет).

Цитата(_Vladimir_ @ May 16 2005, 18:32)
Все таки это классика в прямом смысле и не надо называть ее устаревшей и отстоем еще долго - какие бы не были другие проц. лучше и совершеннее.
Да, большинство превосходят 51, но очень многие производители еще не собираются снимать это 51-совместимое ядро с производства, обвешивают периферией и т. п. И совсем не потому ЧТО ЭТО СОВЕРШЕННАЯ архитектура.
Не так важно почему, но 51 еще остается массовым процессором и более удобным для обучения, методологически.
*

Чему Вы собрались учить на примере 51-го? Программированию на ассеблере? Извините, это уже даже не вчерашний день. Сегодня роль ассемблера в МК весьма скромна. Именно потому, что подавляющее большинство задач прекрасно решается с помощью С (и даже С++). Современные МК почти все поголовно поддерживают расширенную косвенную адресацию - пре/пост декрементом/инкрементом, со смещением (очень важный режим) и т.д., эффективно позволяют делать адресную арифметику. Именно эти обстоятельства и позволяют создавать эффективные компиляторы ЯВУ. На 51-м этого нет, на нем этим более прогрессивным методам программирования не научишь.

А популярность его как среди разработчиков (особенно старой школы), так и среди производителей объясняется двумя причинами:

1. Инерция мышления (т.н. человеческий фактор)
2. Достаточно большое количество действующего оборудования, где стоят МК этого семейства.

Как долго эта инерция еще будет длиться, сказать сложно, но конец уже виден - это несколько лет, по моей оценке 5-10 - примерно такое время составляет "в среднем" цикл электронного оборудования в промышленном производстве (подчеркиваю - в среднем, имхо. Есть области, где оно и по 20 лет служит, есть - где и два года уже срок).

В заключение: AVR для начинания очень неплохой МК. Он простой, понятный, прозрачный. Имхо, даже проще, "ортогональнее", чем 51-й.

К автору исходного вопроса: если планируете AVR, не сомневайтесь, не промахнетесь. smile.gif
superbizzon
хм... Вообщето с АВРками всё просто - берёшь AVR Studio, создаёшь поектик, вписываешь туды две строки, погоняешь по шагам, дописываешь четыре, опять прогоняешь...и такдалее до бесконечности..( ну а как вписывать в хелпе нормально описано, захочешь - поймёшь) Сам так начинал
В AVR Studio если что нетак то при прогонке по шагам сразу видно и понятно где лажа (самый клёвский там дебагер, лучше не видел).
Конэ4на лучше, если будет какая-нибудь апаратная часть, чтобы сразу руками щупать что получилось... рекомендую STK200 или STK300 - дёшево сердито, лампоськи, кнопоcьки... идёт с програматором, которым мона потом совои девайсы шить.
GeorgyBey
Сам недавно начинал, хотя понятия по программированию как таковому имелись издавна smile.gif
Хочу обратить внимание на ЧЕЛОВЕЧЕСКИЙ фактор - очень важно!!! excl.gif
На что поначалу "сядешь" - с тем и будешь ковыряться !
Если уже какой-никакой спец - можно напрячься и "переползти" на другой тип контроллера. А пока все вновинку и все действительно пока ТРУДНО - упаси Бог попасть на старье или тупиковую ветку. Тут с со "Студио" на что-нить другое переползти трудно! "Подпрыгнешь" посучишь ручками-ножками, да и продолжишь на чем уже умеешь.
Так что ПЕРВОНАЧАЛЬНЫЙ выбор очень важен - промахнешься и долго будешь РЯДОМ со "струей" прозябать. tongue.gif
-Lucifer-
Ого!!!
Но чуть не то!!!
Откуда у бедного студента из простого города может быть ST300???
Почему АВР? Да потому что у меня на них больше всего инфы и программ!!!
С английским у меня НАПРЯГ!!!!!

Заказывать в инете книги не пробывал, страшновато, вдруг не то что нужно!!! Да и не знаю как их заказывать!

В инете нашел "Микроконтроллеры семейства AVR фирмы ATMEL", но там про асм очень мало написано!!! также есть даташит на 1200, 2313, 2323, 2343 на русском!

Есть AvrStudio4 и VMLab, осталось только книгу по асму, а остольное у преподов поспрашиваю!!!

Так что первоначальный вопрос остаётся в силе!!!
GeorgyBey
Цитата(-Lucifer- @ May 20 2005, 02:12)
Есть AvrStudio4  и VMLab, осталось только книгу по асму, а остольное у преподов поспрашиваю!!!

Так что первоначальный вопрос остаётся в силе!!!
*


Грустно вам будет без книжки А.И. Евстифеева "Мик-ры AVR семейств Tiny и Mega фирмы ATMEL".
Для программирования на Ас-ре НУЖНО иметь ПОНИМАНИЕ функционирования "потрохов" контроллера, чего куда и зачем двигать внутри его. И вот когда вы уже будете "видеть" работу начинки контроллера - т.е. АЛГОРИТМ функционирования smile3046.gif .....
От ассемблера остается только справка по командам, которые заставят устройство исполнять задуманное.
Практически вся книга (см. выше) - для понимания железа. Перечень команд со страницы 397, описания команд со стр. 403. smile.gif
superbizzon
Цитата(GeorgyBey @ May 20 2005, 10:03)
Для программирования на Ас-ре НУЖНО иметь ПОНИМАНИЕ функционирования "потрохов" контроллера, чего куда и зачем двигать внутри его. И вот когда вы уже будете "видеть" работу начинки контроллера - т.е. АЛГОРИТМ функционирования  smile3046.gif .....
От ассемблера остается только справка по командам, которые заставят устройство исполнять задуманное.
*

О! точно! Присоединяюсь, сначала стоит разобраться что в контроллер понапихано.
Если совсем до этого не их нюхал, то наверно стоит начать с выяснения что есть акумуляторы, регистры статуса( что означает каждый флаг в нём), про прерывания чёнить, куда упёрся стек. это вообщемто основные принципы и во всех микроконтроллерах они одни и теже и описаны в любой книжке в названии которой есть слово "микроконтроллер".
помнится во время учёбы у меня была какаято тощая брошурка... там это всё было популярно... она кстати описывала древний МК51-ый.. была издательства МЭИ. точнее - не помню...
На счёт того, что нету реальной железяки - так это зря.... сделай сам... в инете полно схем програматоров и простых и сложных. лично я использую который на 244hc74, диод, сопротивление и конденсатор - всё выдрал из старой трёшки.
а девайсину с контроллером сделать - так ваще легко - стабилизатор, кварц, и разьём для програмирования.
affon
Вот Ребята прикольный сайт по интерфейсам.
http://affon.narod.ru
Очень полезен для программистов системщиков.
Kirill Trusov
Морган Микроконтроллеры АВР . Вводный курс
советую, по асме хорошо азы раскажет
SasaVitebsk
А я поддержу dxp. Считаю, что по ассемблер у можно "просто пробежаться", а изучать всё таки Си. Это уже веление времени. AVR, в этом ключе, очень неплохая архитектура. И AVR Studio позволяет работать как в АСМ так и под GCC. Позволяет эмулировать работу и отлаживать изделие.

В то же время, изучение Си позволит вам не быть сильно привязанным к самому МК, а легко перейти на любой другой.

Много книг по данной тематике (в том числе по AVR, ASMу, Си, Си для AVR) найдёте и можете скачать здесь http://lord-n.narod.ru/walla.html
Ruslan_Shaida
Советую купить книги данных авторов.

iFolder
iFolder
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.