|
AVR для чайников, Первые шаги в работе с IAR |
|
|
|
Jun 21 2006, 02:44
|

Группа: Новичок
Сообщений: 1
Регистрация: 19-06-06
Из: Новосибирск
Пользователь №: 18 174

|
Народ, хотелось бы знать, с чего начинать в изучении AVR. Я думаю, каждый сможет дать дельный совет для "чайников" в плане того, как правильно делать первые шаги. Не проходите мимо! Я понимаю, что эта тема встречалсь уже не раз, так дайте хотя бы ссылку. Возможно, это поможет многим начать, да и вообще понять, что ето и с чем ето едятъ.
|
|
|
|
|
Jun 21 2006, 03:40
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(Rosich @ Jun 21 2006, 11:44)  Народ, хотелось бы знать, с чего начинать в изучении AVR. Я думаю, каждый сможет дать дельный совет для "чайников" в плане того, как правильно делать первые шаги. Не проходите мимо! Я понимаю, что эта тема встречалсь уже не раз, так дайте хотя бы ссылку. Возможно, это поможет многим начать, да и вообще понять, что ето и с чем ето едятъ.  1. Прочитайте ветку AVR полностью, т.е. со страницы 1 и по текущую. Это Вам даст общий кругозор. 2. Ну а на счет первых шагов... трудно что-то сказать. Желательно почитать какую-нибудь книжку. Можно купить, а можно поискать здесь www.natahaus.ru - тут по AVR есть книги. 3. Если владеете английским, почитайте даташиты на МК, примеры применения (application notes). Все это на официальном сайте Atmel. Если с английским плохо, то здесь есть переводы некоторых документов.  Ну не называйте Вы себя "чайником". Вы начинающий.)))))
--------------------
Выбор.
|
|
|
|
|
Jun 21 2006, 05:01
|

Частый гость
 
Группа: Свой
Сообщений: 78
Регистрация: 5-07-05
Из: Великий Новгород
Пользователь №: 6 536

|
Цитата(Rosich @ Jun 21 2006, 06:44)  Народ, хотелось бы знать, с чего начинать в изучении AVR. Я думаю, каждый сможет дать дельный совет для "чайников" в плане того, как правильно делать первые шаги. Не проходите мимо! Я понимаю, что эта тема встречалсь уже не раз, так дайте хотя бы ссылку. Возможно, это поможет многим начать, да и вообще понять, что ето и с чем ето едятъ.  Согласен с haker_fox просмотрите форум, здесь очень много полезного и для новичков тоже, а еще очень полезно читать даташиты на контроллеры, если трудно с английским, то есть книга Евстифеева Микроконтроллеры AVR семейств тини и мега, по сути краткий перевод даташита. ИМХО Такое впечатление, что вопрос задан специально задан для господина kertisa, или как там его сейчас зовут? Опять клон???!!!
|
|
|
|
|
Jun 21 2006, 05:33
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(Kirill_Mash @ Jun 21 2006, 14:07)  Цитата(Rosich @ Jun 21 2006, 06:44)  Народ, хотелось бы знать, с чего начинать в изучении AVR.
Не проходите мимо!
вы сможете скачать 2 инструмента - удобный для начинающих компилятор CodeVisionAVR и симулятор VMLAB - всего менее 8 Мб - и готовый пример. Вы запустите виртуальный МК через пол часа работы. Я считаю что лучше раз увидеть чем сто раз услышать. Со всеми программами идут отличные примеры и подробные Хелпы. Более качественный симулятор электроники и МК это PROTEUS - но он 26 Мб. Зато с ним 210 примеров различных устройств. Вы можете даже в шахматы поиграть с микроконтроллером. Т.е. начните работать в симуляторах , тогда вам не потребуется пока искать компоненты и вы ни чего не сожгете, не испортите. 1. Симуляторами, кроме AVRStudio пользоваться не рекомендую. Лучше используйте макетную плату с реальным МК (микроконтроллер), это гораздо интересней, чем рисовать схему в симуляторе (Proteus или VMlab). 2. 2 Kirill_Mash: на счет последнего предложения. Интересно, а что можно сжечь в 5-ти вольтовой схеме???
--------------------
Выбор.
|
|
|
|
|
Jun 21 2006, 05:45
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Ну мнения о достоинствах пресловутого курса уже заняли 12 страниц, тем не менее выскажусь особо. Крайне не рекомендую стартовать с CV: 1.Компилятор специфичный для AVR, при желании сделать шаг влево/вправо придется переучиваться. 2.Мастера CV кажуться привлекательными, но новичку крайне желательно начинать с того, чтобы делать все ручками.Тогда придет понимание, что происходит и контроль над процессом. (не научишься математике, если вместо заучивания таблицы умножния пользоваться калькулятором) 3.Львиная доля вопросов новичков, касается CV в котором они запутались, купившись на мнимую легкость. О Протеусе: Цитата Т.е. начните работать в симуляторах , тогда вам не потребуется пока искать компоненты и вы ни чего не сожгете, не испортите. Средний AVR стоит как две пачки сигарет, не такое уже и разорение его спалить (тем более для этого надо крупно постараться). Берем в DIP корпусе, цепляем на макетку, добавляем пару кнопок и светодиодов и в бой. Потом ставим MAX232 и начинаем работать с COM-портом. Нельзя научиться плавать, отрабатывая технику на суше. Добавлю личное ИМХО - не прельщайтесь всякими навороченными дебаггерами и симуляторами - для старта хватит AVR-студии, а когда начнете чувствовать процессор нутром, смоделировать поведение и найти ошибку хватит головы и листа бумаги. Итак резюмирую: 1.Макетка и Мега16 2.Программатор Avreal - очень простой и очень надежный 3.AVR-студия (ассемблер и отладчик) бесплатно. 4.IAR EWB для AVR (С, ассемблер, отладчик) бесплатный эвалюэйшен дальше можно подлечить. 5.Документация с сайта Атмел, там же примеры. Разобравшись хотя бы с десятком из них можно уже пробовать реальную задачу. И самое гланое не бояться - дорогу осилит идущий.
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Jun 21 2006, 07:17
|
Группа: Новичок
Сообщений: 2
Регистрация: 17-04-06
Из: Екатеринбург
Пользователь №: 16 178

|
Цитата(beer_warrior @ Jun 21 2006, 11:45)  Итак резюмирую: 1.Макетка и Мега16 2.Программатор Avreal - очень простой и очень надежный 3.AVR-студия (ассемблер и отладчик) бесплатно. 4.IAR EWB для AVR (С, ассемблер, отладчик) бесплатный эвалюэйшен дальше можно подлечить. 5.Документация с сайта Атмел, там же примеры. Разобравшись хотя бы с десятком из них можно уже пробовать реальную задачу. И самое гланое не бояться - дорогу осилит идущий. А я думаю, лучше сразу же начинать с чего-то реального, а именно того, за которое заплатят денюжку. Потому как желание что-то освоить - хорошо, но мало, надо мотивацию посерьёзнее. И пускай это реальное будет без особых наворотов.
|
|
|
|
|
Jun 21 2006, 07:53
|
Местный
  
Группа: Свой
Сообщений: 300
Регистрация: 15-03-06
Из: Москва
Пользователь №: 15 284

|
Цитата(haker_fox @ Jun 21 2006, 09:33)  1. Симуляторами, кроме AVRStudio пользоваться не рекомендую. Лучше используйте макетную плату с реальным МК (микроконтроллер), это гораздо интересней, чем рисовать схему в симуляторе (Proteus или VMlab). 2. 2 Kirill_Mash: на счет последнего предложения. Интересно, а что можно сжечь в 5-ти вольтовой схеме???  Сжечь можно все что угодно: два жк дисплея, датчик температуры, ну и ЛПТ порт наконец.  И это только из моей практики, правда, вполне возможно, что мне не хватает драйвера для прямых рук. Видимо вам повезло больше...
|
|
|
|
|
Jun 21 2006, 08:12
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Цитата Если вы хотите начать работу на СИ, то VMLAB или PROTEUS вам понадобиться. Простите за резкость, но: Если вы хотите научится общаться с женщинами - секс по телефону вам не поможет. VMLAB или PROTEUS виртуальны. Они никогда не заменят реальное железо. И мало-мальски серьезные вещи в них тоже не отладишь. Успех в работе очень сильно зависит от умения быстро находить проблемы в реально работающем железе. Ни в каком симуляторе вы не учтете реальный дребезг, помехи, пологие фронты, пульсации питания и наводки, я уже не говорю о банальных ошибках в монтаже. В работе с МК этому надо учиться одновременно с освоением основ программирования. Цитата Отладка Си програм в AVRstudio никакой(если не применять отладочные платы). Отлаживать С прекрасно можно в ИАРе. Есть такая тулза C-spy. Кроме того начинать стоит все-таки с ассемблера, потому что только на нем можно понять логику работы процессора. С нужен для сокращения объема рутинной работы(распределение памяти, регистров, корректный вызов подпрограмм, сложная математика) и работы со сложными данными (высокий уровень абстракции). Ну и еще переносимость программ (для МК с серьезными оговорками) А наилучшим методом отладки С я рискну предположить, просто разбор листингов карандашом на листе бумаги. Хорошо попрактиковавшись в этом, можно научиться писать компактный и предсказуемый код, чувствовать оптимизацию. Цитата CodeVision есть библиотеки фукций, которые очень помогают. В принципе есть стандартная библиотека С (libc). Она стандартизирована и любой компилятор претендующий на серьезность комплектуется ей. Практически, выходить за ее пределы не есть хорошо, ибо код сделанный таким не будет собираться любым другим компилятором и при отсутствии родного компилятора код будет бесполезен. (как пример, я никогда не пользуюсь функциями delay(), а на конкретном контроллере запускаю миллисекундный таймер, и отсчитываю задержки по нему - полная гарантия корректной задержки при солидном увеличениии быстродействия) Второй аспект , касаеться сказанного выше - только хорошо разобрав подноготную работы с периферией (написав эти либы самому или разобрав их побайтно) можно не только быть уверенным в поведении программы, но и легко писать код для похожих, но не таких вещей. К новичкам это относиться вдвойне. И наконец в интернете масса свалок с открытыми исходниками на все случаи жизни (в этом разделе тоже)
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Jun 21 2006, 13:21
|
Частый гость
 
Группа: Участник
Сообщений: 177
Регистрация: 25-08-05
Из: Ставрополь
Пользователь №: 7 964

|
Цитата(SergSit @ Jun 21 2006, 15:05)  ... На выходе всей работы должна быть программа которая работает. Для этого подойдет любой компилятор. Просто я считаю CV проще в освоении новичку. Очень мало настроек которые надо знать для начала работы. Про VMLAB. Я говорю из личного опыта. Он мне помог. И пока я внем неразочаровался. Написанная программа в СИ работает в VMlabe и нажелезе. Вы предлогаете что там паять. Зачем это начинающему. Надо написать первую программу и посмотреть как она работает и ее отладить. Все это делает VMLAB. Паять надо в любом случае. Прекрасно работающая в VMlabe программа может никогда не заработать в железе (софт и хард в случае ембеддед приложений неделимы, по-моему). Что же касается простоты освоения, то еще А.В. Суворов говорил "...тяжело в учении, легко в бою...". Тем, кто намерен серьезно работать необходимо понять, что просто даже кошки не родятся. Все это конечно IMHO.
|
|
|
|
|
Jun 22 2006, 01:30
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(SergSit @ Jun 21 2006, 20:05)  На фига мне новечку этот компактный код. Да ! когда я стану профессионалом я сам перейду наверно на IAR. Вы пишете пробайты которые самому надо писать что-бы понять работу AVR. На фига и это мне знать. Для написание "правельных" байт и создают компиляторы которые этим занимаются и облегчают работу програмисту. Не забывайте, что компиляторы пишут люди, которым свойственно ошибаться. И если, правильно написанный Си-код не заработает, придется смотреть листинг на асме. А не зная асма, что там можно увидеть? Далее, конечно не мое дело, но я вообще не понимаю, а зачем программировать МК, не интересуясь как он работает? Мне вот лично это интересно. Тем более, это как я понял, ваш первый опыть общения с МК, так что не плохо бы и узнать об архитектуре, о командах и т.п. Цитата(SergSit @ Jun 21 2006, 20:05)  Да ! когда я стану профессионалом я сам перейду наверно на IAR. Поймите, что Вы не станете профессионалом с таким ходом рассуждения мыслей. Он (профи) растет постепенно. Нельзя стать им просто вдруг! Цитата(SergSit @ Jun 21 2006, 20:05)  Просто я считаю CV проще в освоении новичку. Очень мало настроек которые надо знать для начала работы. Про VMLAB. Я говорю из личного опыта. Он мне помог. И пока я внем неразочаровался. Написанная программа в СИ работает в VMlabe и нажелезе. Вы предлогаете что там паять. Зачем это начинающему. Надо написать первую программу и посмотреть как она работает и ее отладить. Все это делает VMLAB. Так и в IAR'е и в GCC скажу, по собственному опыту, не так уж и много нужно настроек сделать. Даже если программа, сваянная в VMlab, работает, то все-равно от симулятора придется отказаться, рано или поздно, потому, что в один прекрасный день программа может не заработать в реальном железе. А будет здесь банальная причина: Вы в реальном железе забудете подключить питание, кварц, будут какие-нибудь наводки, др.
--------------------
Выбор.
|
|
|
|
|
Jun 22 2006, 07:26
|
Местный
  
Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219

|
Цитата(Rosich @ Jun 21 2006, 05:44)  Народ, хотелось бы знать, с чего начинать в изучении AVR. Я думаю, каждый сможет дать дельный совет для "чайников" в плане того, как правильно делать первые шаги. Не проходите мимо! Я понимаю, что эта тема встречалсь уже не раз, так дайте хотя бы ссылку. Возможно, это поможет многим начать, да и вообще понять, что ето и с чем ето едятъ.  Хотелось бы знать Ваш начальный уровень. Не зная его, трудно дать какие-либо советы. И, опять же, какие цели Вы преследуете?
Сообщение отредактировал _Bill - Jun 22 2006, 07:27
|
|
|
|
|
Jun 22 2006, 07:43
|
Частый гость
 
Группа: Свой
Сообщений: 173
Регистрация: 9-12-05
Пользователь №: 12 031

|
Я так понял,что этот спор бесполезен!! Бесполезен потому, что пока будут стороники IAR(содной стороны) и CodeVision (с друглй стороны) каждый будет отстаивать свою точку зрения, находя постоянно новые аргументы. Помойму не надо спорить ,что лучше. КАждая программа имеет своё назначени и соответственно круг пользователей. И если мне нравиться CV пока меня она устраивает, как новичка, меня никто не переубедить , что она "плохая". Но меня достают , честно говоря, "профессионалы" со своими рассуждениями. Цитата(haker_fox @ Jun 22 2006, 04:30)  Не забывайте, что компиляторы пишут люди, которым свойственно ошибаться. И если, правильно написанный Си-код не заработает, придется смотреть листинг на асме. А не зная асма, что там можно увидеть? Далее, конечно не мое дело, но я вообще не понимаю, а зачем программировать МК, не интересуясь как он работает? Мне вот лично это интересно. Тем более, это как я понял, ваш первый опыть общения с МК, так что не плохо бы и узнать об архитектуре, о командах и т.п.
Поймите, что Вы не станете профессионалом с таким ходом рассуждения мыслей. Он (профи) растет постепенно. Нельзя стать им просто вдруг!
Так и в IAR'е и в GCC скажу, по собственному опыту, не так уж и много нужно настроек сделать. Даже если программа, сваянная в VMlab, работает, то все-равно от симулятора придется отказаться, рано или поздно, потому, что в один прекрасный день программа может не заработать в реальном железе. А будет здесь банальная причина: Вы в реальном железе забудете подключить питание, кварц, будут какие-нибудь наводки, др. Уважаемый haker_fox вы что думаете, что можно собрать устройство не зная как работают его элементы? Естественно я знаю(вмеру моих сил) и архитектуру и команды. И по необходимости разбераюсь с листингами на ассемблере. Но я хочу уйти от ассемблера, поэтому и перешел на СИ. Я что сказал , что "профессионалом можно стать вдруг". Согласен с вами(стараюсь быть здраво мыслещем человеком), что им сразу стать не возможно. Мало того согласен с тем, что ОН(профессонал) растет постепенно. Вот я и предлагаю идти от простого(CodeVision) к сложному (IAR). Может еще будет кто спорить, что проще. Все спорят , что "правильнее". Про VMLAB. Слушайте профессионалы, вы что смеетесь. У всех один и тотже аргумент против программы: МОЖЕТ В ОДИН ПРЕКРАСНЫЙ ДЕНЬ ПРОГРАММА ОТЛАЖЕННАЯ В VMLABЕ НЕЗАРАБОТАЕТ. Вы хоть пластинку поменяйте. Это не аргумент против. Программы отлаженные в VMLABE пока у меня работают и не только у меня(судя по этомуже форуму). И пока они будут работать(программы) вы никого не переубедите Может сумбурно. За это извините.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|