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

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
leowka
Открыл глаза
Сообщения: 42
Зарегистрирован: Ср мар 24, 2010 08:08:20
Контактная информация:

Re: С чего начать освоение микроконтроллеров?

Сообщение leowka »

Maxim1441 писал(а): Очень надеюсь на вашу помощь.


Наберите в гугле "AVR с нуля" и гуляйте по ссылкам, много найдете. А в вашей приписке порно-любительский сайт какой-то прям.
Аватара пользователя
Maxim1441
Грызет канифоль
Сообщения: 270
Зарегистрирован: Пт апр 09, 2010 21:16:30
Откуда: Barnaul
Контактная информация:

Re: С чего начать освоение микроконтроллеров?

Сообщение Maxim1441 »

ИМХО PICи проще в освоении.

Ну. Это радует. А насчет программатора: Корабельниковский вариант пойдет?

MPLAB IDE. Для начала лучше писать на ассемблере, чтобы понять как работает контроллер.

Понял. Спасибо. А прошивать через PonyProg?


Ок. Этот учебник уже читал.

Наберите в гугле "AVR с нуля" и гуляйте по ссылкам, много найдете.

Набрать в гугле можно, конечно. Но инфы там вывалится уйма, а несведующему в этой этой тематике человеку в этом многообразии инфоормации легко запутаться...

А в вашей приписке порно-любительский сайт какой-то прям.

Ну, я пробовал без порно-рекламы - где-то 1-2 клика на 200 уник. посетителей. С порнухой - один клик на 5-6 уник. посетителей. Извините, но с моральным уровнем целевой аудитории поделать ничего не могу :( Зато на сайте довольно много схем :))
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Re: С чего начать освоение микроконтроллеров?

Сообщение Arlleex »

Самый лучший из лучших наборов для изучения AVR:
Datasheet - это литература
AVR ISP mkII - это программатор
AVR Studio - профессиональная среда разработчика
Что лучше - PIC или AVR - решайте сами для себя.
В миллионный раз повторяю - от задачи зависит.
Есть такие задачи, где вообще никакой пик или авр не справится, тогда нужен совсем другой тип микроконтроллеров, коих существует на данный момент тысячи.
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: С чего начать освоение микроконтроллеров?

Сообщение Мурик »

Maxim1441 писал(а):А насчет программатора: Корабельниковский вариант пойдет?
У него там много вариантов программаторов, но думаю что подойдет любой из них, т. к. все проверены временем и их много раз повторяли и использовали.

Maxim1441 писал(а):А прошивать через PonyProg?
Лично я использую IC-Prog, но это на любителя - что удобнее для вас, то и используйте.

Maxim1441 писал(а):Ок. Этот учебник уже читал.
Ну и, что не понятно? Там по моему нормально предоставлен материал.
Аватара пользователя
Maxim1441
Грызет канифоль
Сообщения: 270
Зарегистрирован: Пт апр 09, 2010 21:16:30
Откуда: Barnaul
Контактная информация:

Re: С чего начать освоение микроконтроллеров?

Сообщение Maxim1441 »

Ок. Всем спасибо за ответы! Все таки, выберу PICи для начала...

Еще пару вопросов:

1)У меня на PC стоит Windows7 x86, COM и LPT портов на материнке нет у подавно. Поэтому купил PCI-адаптер COM-порта (ну, т.е. COM-контроллер и два порта "папы"). Под семерку, вроде адаптер встал. Вообще, возможно ли с таким хозяйством норм. прошивка? Или же небоходимо покупать "древний" PC?

2)За основу возьму программатор Корабельникова:
Изображение
Я так понял, что это схема довольно популярна и рабочая?
Вложения
korab.gif
(22.25 КБ) 9974 скачивания
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: С чего начать освоение микроконтроллеров?

Сообщение dosikus »

Maxim1441 писал(а):У меня на PC стоит Windows7 x86, COM и LPT портов на материнке нет у подавно. Поэтому купил PCI-адаптер COM-порта (ну, т.е. COM-контроллер и два порта "папы"). Под семерку, вроде адаптер встал. Вообще, возможно ли с таким хозяйством норм. прошивка? Или же небоходимо покупать "древний" PC?


1) Забыть "самомучитель" и о корабельникове .
2)Купить/сделать pickit2
3)Прочитать это http://www.microchip.su/showthread.php?t=10669
4)Не слушать советов с picburdы и ikarab.
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: С чего начать освоение микроконтроллеров?

Сообщение Мурик »

dosikus писал(а):1) Забыть "самомучитель" и о корабельникове .
Тебе что Карабельников на хвост наступил? :shock:
Если у тебя с ним личные счеты, это вовсе не значит что Самоучитель плохой!
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: С чего начать освоение микроконтроллеров?

Сообщение dosikus »

Мурик писал(а):Тебе что Карабельников на хвост наступил? :shock:
Если у тебя с ним личные счеты, это вовсе не значит что Самоучитель плохой!

Личных отношений у меня с вашим "гением" не было и не может быть - это раз.
На счет полезности "самомучителя" не может быть и речи .
Сие творение проштудировано и КАТЕГОРИЧЕСКИ не рекомендуется к употреблению.
Мурик , это у тебя предвзятое мнение о величие этого манускрипта и способностях вашего "гуру".
Для желающих загнать себя в болото - ради бога лезьте , но я вас предупреждал ...
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: С чего начать освоение микроконтроллеров?

Сообщение Мурик »

Если ты его не смог осилить, то это еще не значит что Самоучитель плохой.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: С чего начать освоение микроконтроллеров?

Сообщение Аlex »

Поддержу dosikus'а. Это не самоучитель, а отстой. Говорю Вам как опытный программист PIC'ов.
Мурик писал(а):Если ты его не смог осилить, то это еще не значит что Самоучитель плохой.
Его никто не может осилить, это муть...... :evil: После его прочтения, люди с кашей в голове лезут на форумы исправляться.
PE_VK
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Вт ноя 16, 2010 23:19:40
Откуда: Украина, г. Макеевка

Re: С чего начать освоение микроконтроллеров?

Сообщение PE_VK »

Аlex писал(а):Поддержу dosikus'а. Это не самоучитель, а отстой. Говорю Вам как опытный программист PIC'ов.
Мурик писал(а):Если ты его не смог осилить, то это еще не значит что Самоучитель плохой.
Его никто не может осилить, это муть...... :evil: После его прочтения, люди с кашей в голове лезут на форумы исправляться.


...Осилил довольно быстро. НО, понимание приходит со временем.
Поэтому лучше сделать сразу правильно, иначе будущего не будет. Однозначно.
Четыре пункта dosikus'а,
Рекомендую. А также чтение даташитов и разных документов от microchipa.
Английские тексты пытаться переводить, не переводимое спрашивать на форумах.
Аватара пользователя
DX168B
Друг Кота
Сообщения: 4468
Зарегистрирован: Вс янв 24, 2010 19:19:52
Откуда: Главный Улей России (Moscow)
Контактная информация:

Re: С чего начать освоение микроконтроллеров?

Сообщение DX168B »

А я бы начал с AVR (я и так начинал с AVR). Тут, на этом сайте есть неплохая обучалка для начала и форум для продолжения.
На AVR в сети валяется больше инфы. Программаторы намного проще PICовских. Взять тот-же программатор Громова для COM порта, под AVR. Всего пара резисторов и диодов. Про LPT вообще молчу - 5 проводов вполне хватает. AVR Studio - вообще удобная оболочка. Можно визуально отслеживать все регистры и даже "подкручивать" их в процессе отладки. У AVRов нет такой хрени, как банки памяти в МК. Из языков - пожалуй, лучше начинать с ассемблера. Потом стоит изучить Си.
Короче сам выбирай.
I am DX168B and this is my favourite forum on internet!
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: С чего начать освоение микроконтроллеров?

Сообщение otest »

Maxim1441 писал(а):Я так понял, что это схема довольно популярна и рабочая?

Лучше соберите EXTRAPIC
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: С чего начать освоение микроконтроллеров?

Сообщение radio-kot »

Рекомендую вам сделать PicKit2 на хорошей плате, с маской металлизацией и маркировкой всех компонентов и их номиналов - паять можно без схемы. Схема в официальном руководстве PicKit2 от Микрочип.

PicKit2 - это не только программатор для всех PIC, но и ОТЛАДЧИК ! и логический анализатор и еще преобразователь USB-UART с удобным терминалом на ПК.

Кроме того PicKit2 сам является отладочной платой, в нем прошит USB загрузчик и вы можете загружать а него свои программы и отлаживать. При необходимости просто снова заливаете лодером прошивку PicKit2 и у вас снова прогер.

Это супер прибор. Вот руководство на руском языке для http://PicKit2.ru

Изображение
Будете проходить мимо- проходите!
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Re: С чего начать освоение микроконтроллеров?

Сообщение aleksandr-zh »

radio-kot писал(а):Рекомендую вам сделать ..

МИХАИЛ, побойтесь Бога! Хотите помочь - промолчите!
тем более, что у вас цены стали выше, чем в интернет-магазинах

, том же chip-nn!!!
я хотел у Вас купить АВРки, зашел к ним - а у них на 10 р дешевле


К новичкам
как человек, последнее время плотно занимающийся обучением других в области МК и электроники, скажу:

1. знать и понимать электронику. не понимая, как работает резисторный делитель напряжения, не понимая, что аккумулятор "заряжают" током, а полевой тразистор открывают напряжение, соваться в МК еще рановато
Как правило необходимо знать основы цифровой электроники, хотя бы на уровне "счетчик", "триггер", "порог срабатывания"...

2. начинать с ассемблера!!! (100 !!!) Нет, я не заставляю писать на нём проги. Но сделать минимальное НА АССЕМБЛЕРЕ: самому помигать "ногами", опросить матричную клавиатуру и вручную поработать с UART - ОБЯЗАТЕЛЬНО

3. делать предпочтения языкам типа: Си = крута и модна, Бейсик = гавно - не стоит
Специалист на то и спец, что работает с разными средами (ныне именно средами) разработки программ для МК
Обязательно попробовать всё! И Си, и Бейсик, и чем больше- тем лучше :)
тем более, что само понятие Язык ныне весьма размыто: существует множество компиляторов одного и того же языка. И продукты разных фирм имеют и свои плюсы, и свои минусы: один имеет удобный интерфейс, но генерирует ужасный код для МК, второй внешне неказист, но код выдает прекрасный...

4. Перед тем, как задать вопрос на форуме - читать написанное другими. И не на одном, а на десятке форумом.
5. Прочитанному не верить, но принимать к сведению! Всегда перепроверяйте полученые данные.

6. Практика, причем постоянно

7. И уважать фирменное описание к МК - "даташит". Если то, что я указал выше, вы делали, то понимание каждого слова в описании придёт обязательно (Другими словами: начинать программирование МК с даташитов - не стоит, вначале повторите опыт других, и почитайте уже разжованное кем-то. Даташит - это профессональные термины, их сразу и не понять. "Статическая архитектура" - сразу и не понять: одно цепляет другое)

8. про выбор МК:
именно с точки зрения освоения МК выбор конкретной модели более важен, чем выбор фирмы производителя.
Обычно (как показывает общение) выбор фирмы - дело случайное: что смог купить, на том и начал
При выборе Мк надо учитывать: наличие хорошего программного инструментария (не обязательно бесплатного, но имеющего хорошую демо версию: чтобы работал хотя бы пол года, и имел определенную популярность, а то документации будет мало, и спросить не у кого), простого программатора и описания данного МК на родном языке


Мой совет по выбору:
Мк - AVR Mega8/48/88/168
программы: Bascom (chtlytt между бейсиком и паскалем)
программатор: ISP STK-200/300 или простой USB (c аппаратным согласованием!)

Причины:
Мк - распространен, вылизан, хорошо описан
Bascom - завершаю перевод всей документации на русский: справка, интерефейс
Программатор: простые, опробованы на разных ПК, работают уверенно



ps
забыл пояснить, из-за чего такой порядок: ассемблер, Си/Бейсик
Ассемблер (почти) машинные коды, т.е., команды для микроконтроллера
Ассемблер не прощает ошибок! Он приучит Вас правильно оставлять алгоритмы и уверенно работать с "железом", как внутри самого МК, там и внишним. Освоите ассм - написать свою библиотеку\подпрограмму работы с другим устройством станет значительно проще

Си приучит к синтаксису: записи программы по определенным правилам - пропустили ";" - пипец! Ругается...
Если логика Вашего мышления позволяет так мучиться в Си - пользуйтесь им
Если ассм пошел на-ура, а Си - по неделе пишете "мигалку" из-за ошибок при наборе программы - смотрите в сторону Бейсика
Для AVR - BASCOM и FastAVR, для PIC - PicBasic и PICsimulator

В Бейсике изначально синтаксис попроще, миролюбивее, что ли :)


-

словом, в путь! )
llast
Открыл глаза
Сообщения: 58
Зарегистрирован: Пн апр 26, 2010 11:30:15
Откуда: Украина

Re: С чего начать освоение микроконтроллеров?

Сообщение llast »

Поддерживаю aleksandr-zh.
Хочу добавить.
Независимо какй тип контроллера Вы собираетесь использовать, просто необходимо знать
- двоичную, шестнацатеричную системы исчисления. Основы електроники и программирования.

Если вы решитесь просто повторить какую либо конструкцию на МК, выбирете попроще типа RGB лампы настроения,
или любую несложную обсуждаемую на форумах.
Сам недавно начинал с Атмеги8. Программатор лпт- 5ть проводков. Плату лпт в комп приобрел. Своял макетку.
Помигал светиками, кнопки, прерывания. Пробуйте решать и изучать каждую задачу отдельно.
Среда программирования Си. Асм это хорошо -, но для начинающего это круто. Больше будет вопросов, чем ответов.
К асму обязательно вернетесь, но позже.
Для начала Вам этого с головой хватит.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: С чего начать освоение микроконтроллеров?

Сообщение dosikus »

llast писал(а):Асм это хорошо -, но для начинающего это круто. Больше будет вопросов, чем ответов.
К асму обязательно вернетесь, но позже.


Asm это не круто , это необходимо .
Посмотрите на досуге какие фортеля компилятор выкидывает .
Да и полезно бывает просматривать листинг - помогает оптимизировать код.
Так что знать Asm да же если полностью на С пишите нужно.
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: С чего начать освоение микроконтроллеров?

Сообщение Мурик »

aleksandr-zh писал(а):3. делать предпочтения языкам типа: Си = крута и модна, Бейсик = гавно - не стоит
Полностью поддерживаю.
Многие недооценивают бейсик, который при всей своей простоте, ни в чем не уступает Си! Правда, многое зависит от компилятора, а "Бейсик" это лишь название языка.

aleksandr-zh писал(а):Мой совет по выбору:
Мк - AVR Mega8/48/88/168
программы: Bascom (среднее между бейсиком и паскалем)

Согласен, для AVR-ов - отличная среда программирования.
llast
Открыл глаза
Сообщения: 58
Зарегистрирован: Пн апр 26, 2010 11:30:15
Откуда: Украина

Re: С чего начать освоение микроконтроллеров?

Сообщение llast »

dosikus писал(а):
llast писал(а):Асм это хорошо -, но для начинающего это круто. Больше будет вопросов, чем ответов.
К асму обязательно вернетесь, но позже.


Asm это не круто , это необходимо .
Посмотрите на досуге какие фортеля компилятор выкидывает .
Да и полезно бывает просматривать листинг - помогает оптимизировать код.
Так что знать Asm да же если полностью на С пишите нужно.


Человек спросил с чего начать освоение МК. Не уточнив при этом, что он знает из предметной области.
Несомненно АСМ необходим, там где рассматриваются процессы реального времени, точность и быстрота принятия решений со стороны контроллера.
Когда счет идет на доли секунд, при коммерческом использовании. Но мигать светиками и реагировать на нажатые кнопки.... не нагружайте новичков.
Всему свое время.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: С чего начать освоение микроконтроллеров?

Сообщение dosikus »

Мурик писал(а):
aleksandr-zh писал(а):3. делать предпочтения языкам типа: Си = крута и модна, Бейсик = гавно - не стоит
Полностью поддерживаю.
Многие недооценивают бейсик, который при всей своей простоте, ни в чем не уступает Си! Правда, многое зависит от компилятора, а "Бейсик" это лишь название языка.

aleksandr-zh писал(а):Мой совет по выбору:
Мк - AVR Mega8/48/88/168
программы: Bascom (среднее между бейсиком и паскалем)

Согласен, для AVR-ов - отличная среда программирования.


Не поддерживаю полностью , и дело тут не в модности С .
Дело во встроенных функциях/библиотеках в которых порой для универсальности напихано черт знает что.
С же дает полную свободу , так же как и Asm, если не использовать навароченных либ .
Да и зная С можно леко перейти ,перенести код на другой контроллер.
Обратите внимание на STM8 , для него нет барсиков и паскалей - только С и ASM.
Ответить

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