С чего начать программировать микроконтроллеры?

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Я уже писал раньше в другой ветке, и не только я: выбирай любой который доступнее или больше понравиться не задумываясь, ибо как писали раньше: "Все фломастеры одинаковые, у них только цвета разные". По мне дак лучше с Си начинать, желание появиться или необхожимость в асемблере покопаешься, я к примеру асемблер до сих пор не знаю и мне это нисколько не мешает :)))
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18717
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

mehanik_universe писал(а):Я так понимаю проще будет выучить Си чем ассемблер,но с чего начать? какие учебники нужны? ну и учебник по АVR studio 4 нужен.Сам достаточно инфы найти немогу. Помогите пожалуйста новичку.
определенное количество информации по обозначенным темам вы можете найти в моих статьях, которые можно скачать отсюда: http://www.simple-devices.ru/articles/7 ... avr-studio
это не совсем букварь, но, надеюсь, будет полезно.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

спасибо всем за помощь,за ссылки.
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

И с чего решил начать,? Если АВР то по мне дак мега 16 в самый раз, ног навалом и всего остального, в протеусе всё эмулируется без проблем, можно и с меги 8 начать, немного по проще но тем неменее вполне достойная микруха. Всегда можно отработанный вариант перекомпилировать под тини :))
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

решил начать с программирования на си, что касается МК то пожалуй выберу ATmega16. их достать проще ,хотя хвалят и ATmega128.
Вы не подскажите где можно скачать среду программирования для си? скачал DEV-C++ ,чет не пашет,комп ошибку выдает когда компилирую...
Реклама
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

Albert_V писал(а):На мой взгляд, лучше начинать с ASM (для этого нужен только pdf на контроллер).
Так понятнее будет то что "внутри контроллера".
А вот когда припрёт делать более-менее серьёзную математику - тогда уж переходите на языки высокого уроня.
так ассемблер учить трудно, писать тонны текста для проги надо.... Хочется както побыстрее посмотреть в работе МК, научусь писать элементарные проги на Си,тогда возможно и за ассемблер возьмусь.
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Ассемблер проще и ближе к железу. Очень удобно представлять, что делает контроллер в каждый момент времени, без ЯВУшных шаманств с оптимизацией. А "много текста" чем не устраивает? Когда изучаешь контроллер для себя, никто ведь над душой не стоит и не торопит. Да и потом, к тому моменту, когда тонны текста действительно понадобятся, основы будут давно изучены и действительно можно будет переходить на ЯВУ, так что это и вовсе не проблема.
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

Morroc писал(а):Начинать проще с ардуино :)) А как возникнут проблемы, связанные с ограничениями ардуино (это произойдет далеко не сразу, а может быть и вовсе не произойдет) - можно с него слезть, все равно оно на Си.

Это не совсем то, что обычно тут подразумевают под программированием мк, зато с практической точки зрения намного быстрее достигается результат (учитывая, что "с ноля").
спасибо, интересно, а можно поподробней? нужно плату паять на МК ? Гуглил о ардуино,инфа разбросана, немогу понять в чем недостатки ....
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

COKPOWEHEU писал(а):Ассемблер проще и ближе к железу. Очень удобно представлять, что делает контроллер в каждый момент времени, без ЯВУшных шаманств с оптимизацией. А "много текста" чем не устраивает? Когда изучаешь контроллер для себя, никто ведь над душой не стоит и не торопит. Да и потом, к тому моменту, когда тонны текста действительно понадобятся, основы будут давно изучены и действительно можно будет переходить на ЯВУ, так что это и вовсе не проблема.
Спасибо,уже и незнаю что учить.... Думаю так, учить буду то на что есть больше хороших учебников.
вы можете посоветовать чтото из литературы по ассемблеру(для новичков), хотелось бы,с самого начала начать чтобы ничего не упустить.
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Мега 16 неплохой камень особенно для новичков в этом деле, 128я отличается тем что памяти больше, я к примеру на данный момент не написал ни одной программы которая не влезла бы в мегу 16. По поводу программ из бесплатных АВР студио, на ней многие пишут, я же пишу на mikroC, ну это дело вкуса, концепция языка си во всех прогах одинакова.
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

ясно,но думаю возьмусь в первую очередь за asm,хочется с железом на прямую работать и учиться,а потом уже на яву переходить. Да и по asm больше инфы нашлось...
Открыл глаза
Аватара пользователя
Сообщения: 54
Зарегистрирован: Чт май 28, 2009 15:46:53
Откуда: Україна, Тернопільська обл., м. Зборів

Сообщение kalyanzb »

Посоветуйте нормальный учебник по программированию AVR-контроллеров. Просто куча инфы в интернете, а толку ноль.
И самое главное... Какую среду программирования выбрать для освоения AVR ?? Их ведь несколько (Assembler, С, Basic и даже Pascal вижу появился уже)


Сюда перенес.
aen
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Мега 16 неплохой камень особенно для новичков в этом деле, 128я отличается тем что памяти больше, я к примеру на данный момент не написал ни одной программы которая не влезла бы в мегу 16
Ну ATmega128 для начала не лучшая идея, она только в SMD-корпусе бывает, если что трудно заменить, да и впаивать нужен некоторый навык. А вот ATmega16 вполне подойдет. Можно еще ATmega8, легендарная в некотором роде микросхема, хотя уже заменяется на линейку ATmega48 / 88 / ... Но расположение и распределение выводов на любителя, единственный полный порт - PORTD, но на нем висят прерывания и UART, которые часто нужны. На PORTB висит кварц и таймеры, а из PORTC выведено всего 7 линий, из которых одна ресет.
По поводу программ из бесплатных АВР студио, на ней многие пишут
Тут полностью согласен, фирменный инструментарий от разработчиков контроллера обладает достаточной функциональностью, особенно для обучения: отладчик с выводом всех регистров в читаемом виде (а не hex-значений по hex-даресам), подсказки по командам ассемблера (они много где есть, но интеграция в ИДЕ удобна).
вы можете посоветовать чтото из литературы по ассемблеру(для новичков)
Цикл статей DI-Halt'a, уроки на сайтах. Я начинал с Ревича, но особо рекомендовать его не могу. Обязательно читать даташиты (на английском, к сожалению), частично их заменяет Евстифеев "микроконтроллеры AVR семейства <tiny/mega/classic>".
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Начинайте с ATmega8 + AVRStudio + Assembler, не ошибетесь. Когда наберете опыта, перейти на другой контроллер / язвк / среду будет проще. Вместо ATmega8 можно взять почти любой контроллер, но у тинек слишком мало переферии, а у прочих мег - большой корпус. Впрочем, ATmega48 / 88 /... тоже неплохо подойдут.
Учебник - либо цикл статей хотя бы даже на этом сайте, обучалка -> Микроконтроллеры AVR - пишем, компилируем, прошиваем... На других сайтах часто бывают аналогичные статьи, где-то хуже, где-то лучше.
Опытный кот
Аватара пользователя
Сообщения: 721
Зарегистрирован: Ср июн 11, 2014 09:43:13
Откуда: США

Сообщение Pink-Pank »

Fucking static initialization order fiasco
Контактная информация:
Открыл глаза
Сообщения: 59
Зарегистрирован: Вт дек 09, 2014 00:47:04

Сообщение mehanik_universe »

COKPOWEHEU писал(а):Начинайте с ATmega8 + AVRStudio + Assembler, не ошибетесь. Когда наберете опыта, перейти на другой контроллер / язвк / среду будет проще. Вместо ATmega8 можно взять почти любой контроллер, но у тинек слишком мало переферии, а у прочих мег - большой корпус. Впрочем, ATmega48 / 88 /... тоже неплохо подойдут.......
для ATmega8 кварц нужно покупать?
Опытный кот
Аватара пользователя
Сообщения: 721
Зарегистрирован: Ср июн 11, 2014 09:43:13
Откуда: США

Сообщение Pink-Pank »

Сейчас все контроллеры идут со встроенным RC-генератором. Кварц нужен, если Вы собираетесь делать что-то вроде часов, где точный отсчет временнЫх интервалов критичен.
Fucking static initialization order fiasco
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 311
Зарегистрирован: Вт дек 31, 2013 17:36:43

Сообщение Balzercvua »

Довольно хорошая книга я не давно купил себе такую там не только программирование там самое интересное основное основы цифровой техники хорошая база потому что одно программирование много не даст без практических наработок и теории!!!
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 311
Зарегистрирован: Вт дек 31, 2013 17:36:43

Сообщение Balzercvua »

Я с начала начал с баскома потому что самый близкий язык бейсик с которым я познакомился в 99 на компьютере ЛИК(прототип интел 8080) зделаном в 89 году на заводе электронмаш в черновцах. так что если вы знаете хотябы один язык мой совет попробывать с него!!!
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

Сообщение Morroc »

mehanik_universe писал(а): спасибо, интересно, а можно поподробней? нужно плату паять на МК ? Гуглил о ардуино,инфа разбросана, немогу понять в чем недостатки ....
Вам надо обязательно попаять мк ? :) Курс сейчас конечно дикий, но из китая все равно дешево будет готовая, зато у вас даже не возникнет вопрос чем программировать и какие фьюзы выставлять, воткнул в usb и поехало :)) а потом разберетесь и с этим если приспичит. Недостатки - это смотря что делать на нем, не такие уж и большие, зато старт в практическом плане типа "помигал светодиодом" / "считал команду с ик-пульта" / "покрутил сервомашинками" максимально быстрый. В дальнейшем разработанную для ардуины прошивку можно прошить и сразу в новый мк на своей плате - с этим проблем нет.
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Ответить

Вернуться в «Теория»