Автор Тема: Начинающим программистам микроконтроллеров  (Прочитано 22392 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tim

  • Читаю форум
  • *****
  • Сообщений: 1024
  • Репутация: -1
  • Андрей. город Орел
  • Поблагодарили: +51
    • Сайт ламповика
Всем привет!

У меня вопрос к тем, кто владеет программирование микроконтроллерами: где,как вы этому научились? Что можете посоветовать для старта?

Буду признателен за предметные ответы без флуда
« Последнее редактирование: 02 Марта 2011, 10:37:30 от MetalHeart »

Оффлайн Althair

  • Старожил
  • *****
  • Сообщений: 1766
  • Репутация: 11
  • Поблагодарили: +348
Re: Программистам микроконтроллеров
« Ответ #1 : 28 Февраля 2011, 08:07:30 »
0
Я, например, научился сам. Достаточно понять архитектуру процессора и принцип взаимодействия связки регистры<>инструкции, и все встает на свои места. Но мне было проще, программировать я начал еще с Z80, так что база уже была, вкурить специфику было уже просто.
Вот тут: http://www.123avr.com/index.html лежит как базовый курс знакомства с AVR, так и множество ссылок на очень и очень полезные ресурсы. Удачи! И придерживай мозг...  :cr:

Оффлайн tim

  • Читаю форум
  • *****
  • Сообщений: 1024
  • Репутация: -1
  • Андрей. город Орел
  • Поблагодарили: +51
    • Сайт ламповика
Re: Программистам микроконтроллеров
« Ответ #2 : 28 Февраля 2011, 08:21:17 »
0
Спасибо. Для меня большей проблемой является сам прожиг контроллера, сопряжение программатора с компом и околопрограммная суета

Оффлайн aleyer

  • Наш человек
  • ****
  • Сообщений: 361
  • Репутация: 5
  • Леша
  • Поблагодарили: +10
Re: Программистам микроконтроллеров
« Ответ #3 : 28 Февраля 2011, 09:47:51 »
0
Спасибо. Для меня большей проблемой является сам прожиг контроллера, сопряжение программатора с компом и околопрограммная суета
AVR прошивать ну очень просто. Банальные 5 проводков через LPT-порт работают в большинстве случаев, МК прошивается за пару секунд. Если на компьютере стоит какой-нибудь дистрибутив линукса, то и комп настраивать не придется.
Для написания прошивок CodeVision AVR очень облегчает жизнь своим генератором кода. Фактически все настройки МК под свой проект можно сделать через графический интерфейс.
« Последнее редактирование: 28 Февраля 2011, 09:50:47 от aleyer »

Оффлайн MetalHeart

  • Администрация
  • *****
  • Сообщений: 3932
  • Репутация: 18
  • Денис
  • Поблагодарили: +1155
Re: Программистам микроконтроллеров
« Ответ #4 : 28 Февраля 2011, 11:35:47 »
0
tim, освоение МК, как и любую другую задачу, лучше всего начинать с реальной техзадачи. Есть у тебя она уже? А то мы счас придумаем..  :laugh:
Тоже начинаю вот (с программированием знаком правда уже) :) Так что вместе прорвемся, Андрей  :drink:

aleyer, Алексей, а закинешь инстуркцию по прошивке AVR сюда? Либо отдельной темой лучше..

Оффлайн hippo64

  • Читаю форум
  • *****
  • Сообщений: 7135
  • Репутация: 72
  • Владимир
  • Поблагодарили: +5153
Re: Программистам микроконтроллеров
« Ответ #5 : 28 Февраля 2011, 12:21:39 »
0
Камрады, приятно сердцу и уму.
http://avr.nikolaew.org/progr, работает , проверено, не считал, но более 500 раз, однозначно.

пять проводков к двум разъемам припаять несложно.
Литературы по архитектуре много, паяем на плату мк, и начинаем.
Светодиодом моргать, и понеслось...

Эмуляторы не отражают все полностью, призываю работать в реале.
« Последнее редактирование: 28 Февраля 2011, 12:34:38 от MetalHeart »

Оффлайн Althair

  • Старожил
  • *****
  • Сообщений: 1766
  • Репутация: 11
  • Поблагодарили: +348
Re: Программистам микроконтроллеров
« Ответ #6 : 28 Февраля 2011, 12:30:53 »
0
Эмуляторы не отражают все полностью, призываю работать в реале.
Истину глаголишь, эмуляция - это "все равно что любовь в резинке: движение есть, прогресса нет." (с) ДМБ

Оффлайн hippo64

  • Читаю форум
  • *****
  • Сообщений: 7135
  • Репутация: 72
  • Владимир
  • Поблагодарили: +5153
Re: Программистам микроконтроллеров
« Ответ #7 : 28 Февраля 2011, 12:32:00 »
0
Еще один момент, хрюша не всегда сразу прочухивает унипрофф, иногда надо несколько раз повторить запуск программатора, прежде чем тот увидит порт.Как увиделся, всё, больше непоняток не будет.

Проверяется вхождение в рабочий режим простым клином МК и проверкой на качество клина.

Оффлайн GRafGRay

  • Наш человек
  • ****
  • Сообщений: 566
  • Репутация: 9
  • Максим, Ростов-на-Дону
  • Поблагодарили: +9
    • Лекарство от пьянства
Re: Программистам микроконтроллеров
« Ответ #8 : 28 Февраля 2011, 14:39:36 »
0
на 123 ходить не надо, Гош не обижайся, тами кило рекламы на грамм пользы
рекомендую книгу Белова, по-моему так и называется программирование МК
Андрюх если не найдешь - стукни в личку, скину

и насчет программаторов, есть отъезженныей вариант на тему СТК500
работает на ура, раньше шиль байтбластером, теперь только HVProg
дока/печатка все есть

Оффлайн Althair

  • Старожил
  • *****
  • Сообщений: 1766
  • Репутация: 11
  • Поблагодарили: +348
Re: Программистам микроконтроллеров
« Ответ #9 : 28 Февраля 2011, 14:45:42 »
0
на 123 ходить не надо, Гош не обижайся, тами кило рекламы на грамм пользы
так там вся соль в ссылках, кои уже подобраны и ведут к просветлению :)

Оффлайн tim

  • Читаю форум
  • *****
  • Сообщений: 1024
  • Репутация: -1
  • Андрей. город Орел
  • Поблагодарили: +51
    • Сайт ламповика
Re: Программистам микроконтроллеров
« Ответ #10 : 28 Февраля 2011, 18:49:55 »
0
tim, освоение МК, как и любую другую задачу, лучше всего начинать с реальной техзадачи. Есть у тебя она уже? А то мы счас придумаем..  :laugh:
Тоже начинаю вот (с программированием знаком правда уже) :) Так что вместе прорвемся, Андрей  :drink:

aleyer, Алексей, а закинешь инстуркцию по прошивке AVR сюда? Либо отдельной темой лучше..

Денис, а у тебя как в плане конкретных задач?

Про AVR хорошо на горе было расписано...

Оффлайн MetalHeart

  • Администрация
  • *****
  • Сообщений: 3932
  • Репутация: 18
  • Денис
  • Поблагодарили: +1155
Re: Программистам микроконтроллеров
« Ответ #11 : 01 Марта 2011, 00:07:06 »
0
Андрей, про задачи скинул в ЛС ;)
Цитировать (выделенное)
Про AVR хорошо на горе было расписано...

Да по ним в принципе вообще информации полно.
Мне вот этот сайтик, например, нравится.

Оффлайн tim

  • Читаю форум
  • *****
  • Сообщений: 1024
  • Репутация: -1
  • Андрей. город Орел
  • Поблагодарили: +51
    • Сайт ламповика
Re: Программистам микроконтроллеров
« Ответ #12 : 01 Марта 2011, 09:31:16 »
0
А я вот генератор синуса хочу и еще чего

Оффлайн mikky

  • Наш человек
  • ****
  • Сообщений: 538
  • Репутация: 1
  • Миша
  • Поблагодарили: +17
Re: Программистам микроконтроллеров
« Ответ #13 : 01 Марта 2011, 14:14:42 »
0
Вотэто можно почитать для начала.. http://aes.at.ua/load/2-1-0-168

Оффлайн L0ki

  • Старожил
  • *****
  • Сообщений: 1740
  • Репутация: 7
  • Поблагодарили: +30
Re: Программистам микроконтроллеров
« Ответ #14 : 01 Марта 2011, 23:19:41 »
0
Я, например, научился сам. Достаточно понять архитектуру процессора и принцип взаимодействия связки регистры<>инструкции, и все встает на свои места. Но мне было проще, программировать я начал еще с Z80, так что база уже была, вкурить специфику было уже просто.
Аналогично - учился самостоятельно, только я начинал с 8080, а на z80 уже позже пересел (когда появился спектрум).
Эмуляторы не отражают все полностью, призываю работать в реале.
Именно так и есть!

Еще я в отношении МК "ретроград"  ;-[
- предпочитаю начинать изучение нового для меня типа МК с его ассемблера.

Оффлайн aleyer

  • Наш человек
  • ****
  • Сообщений: 361
  • Репутация: 5
  • Леша
  • Поблагодарили: +10
Re: Программистам микроконтроллеров
« Ответ #15 : 02 Марта 2011, 01:36:00 »
0
aleyer, Алексей, а закинешь инстуркцию по прошивке AVR сюда? Либо отдельной темой лучше..
Да я и не против, но не думаю, что многим будет практически интересен процесс прошивки из-под линукса. А с особенностями прошивания из-под винды (в которых и бывает загвоздка) я не имел дела.

Оффлайн tim

  • Читаю форум
  • *****
  • Сообщений: 1024
  • Репутация: -1
  • Андрей. город Орел
  • Поблагодарили: +51
    • Сайт ламповика
aleyer, Алексей, а закинешь инстуркцию по прошивке AVR сюда? Либо отдельной темой лучше..
Да я и не против, но не думаю, что многим будет практически интересен процесс прошивки из-под линукса. А с особенностями прошивания из-под винды (в которых и бывает загвоздка) я не имел дела.

Отнюдь.  Сижу на мандриве. кидай

Оффлайн aleyer

  • Наш человек
  • ****
  • Сообщений: 361
  • Репутация: 5
  • Леша
  • Поблагодарили: +10
Отнюдь.  Сижу на мандриве. кидай
Тогда кидаю. Случай простейший - есть комп с параллельным портом, программатор по схеме 5 проводков и устройство, которое надо прошить с раъемом AVR-ISP.
Во-первых, надо установить пакет avrdude.
Во-вторых, получить hex-файл прошивки. Или скачать, или скомпилировать.
К компьютеру устройство я подключал в такой последовательности - к включенному компу подключал выключенное устройство, далее подавал на него питание. В моем случае устройство - это регулятор громкости на attiny44a, который встроен в усилитель, так что включал я питание всего усилителя.
После подключения надо проверить, опознает ли МК прога. в консоли запускаем:
Цитировать (выделенное)
sudo avrdude -c stk200 -P /dev/parport0 -p t44
В ответ должно появиться сообщение, что МК опознан. STK200 - это название программатора, эквивалентного 5 проводкам, другие типы программаторов выбираются после ключа -с. После -р надо выбрать МК, который планируется прошить.
Если все хорошо, можно заливать прошивку.
Цитировать (выделенное)
sudo avrdude -c stk200 -P /dev/parport0 -p t44 -U flash:w:firmware.hex
где firmware.hex - путь к hex-файлу прошивки. Я его бросал в домашнюю папку.
Прошивка заливается и потом считывается для проверки. После этого я выключал устройство и отключал от него кабель для прошивки.

Оффлайн zajtsev.anat

  • Прохожий
  • Сообщений: 8
  • Репутация: 0
  • Василич
  • Поблагодарили: 0
0
Здравствуйте! Нужно записать программу в attiny 26, в описании к устройству написано:В микроконтроллере программируются фьюзы так, что он тактировался от внутреннего RC-генератора 8МГц, т.е установить фьюзы CKSEL = 0100. Остальные фьюзы можно не трогать. А фьюзов CKSEL внём 4:CKSEL 0;CKSEL 1;CKSEL 2;CKSEL 3.Это надо все так установить или какойто из них один?
Программировать буду пробовать первый раз, поэтому если что не так, прошу прощения.
За ранее Всем спасибо.

Оффлайн Sergio

  • Знакомый
  • *
  • Сообщений: 20
  • Репутация: 0
  • Поблагодарили: +1
0
4 бита CKSEL - это и есть: "0100" - три сняты, один установлен.
Вообще, советую ознакомиться с даташитом по поводу фьюзов и обязательно считать фьюзы установленные по умолчанию, чтобы узнать что означают галочки настройки фьюзов в вашей программе, которую вы используете для прошивки - установленный или снятый бит.

Хороший сайт по работе с микроконтроллерами: easyelectronics.ru

Оффлайн WolfTheGrey

  • Старожил
  • *****
  • Сообщений: 2167
  • Репутация: 6
  • Алексей
  • Поблагодарили: +99
0
Я пользуюсь этим: SPA0008 - USB, там же можно прикупить модуль, в котором уже распаян кристал с минимально необходимой развязкой.
Пишу код на Алгоритм Буилдере.

И со фьюзами
4 бита CKSEL - это и есть: "0100" - три сняты, один установлен.

Фьюзы инвертны. 0-включен, 1- выключен.

Оффлайн zajtsev.anat

  • Прохожий
  • Сообщений: 8
  • Репутация: 0
  • Василич
  • Поблагодарили: 0
0
Всё получилось,огромное спасибо Sergio и WolfTheGrey, Вы мне очень помогли! Программу использовал PonyProg2000, а программатор вот такой http://pirpk.narod.ru/ddssite/dshexp1w.htm  нижний вариант, с питанием от компа.

Оффлайн igoralex

  • Старожил
  • *****
  • Сообщений: 829
  • Репутация: 5
  • Игорь
  • Поблагодарили: +34
0
Народ,подскажите пожалуйста,то о чём идет речь,может помочь в прошивке доманешнего кинотеатра BBK DK1435SI?На бумажке на микросхеме внутри аппарата есть надпись DK1410SI3-0A.Нашел прошивку DK1410SI,DK1410SI2 и BACKUP,пытался прошить с диска(причина прошивать-нет видео ни с какого из видеовыходов,а звук есть,все команды с пульта выполняются,но приходится делать вслепую),не хочет,типа грузится и грузится,в нэре всё вроде правильно настроил,на 5 и 6 выводах микросхемы 3.3 вольта,как положено,вероятно микросхема исправна,может нужна прошивка именно DK1410SI3 и выше,но нигде ничего нет,на офсайте вообще ничего нет,может знает кто ,где можно скачать прошивку(находил ещё ссылки,но они не работают)-может повезёт и прошьётся с диска.Буду премного благодарен.

Оффлайн Althair

  • Старожил
  • *****
  • Сообщений: 1766
  • Репутация: 11
  • Поблагодарили: +348
0
(причина прошивать-нет видео ни с какого из видеовыходов
Может причина все же не программная?

Оффлайн Roscou

  • Знакомый
  • *
  • Сообщений: 38
  • Репутация: 0
  • Валерий, Москва
  • Поблагодарили: 0
0
Стояла задача, пришлось научиться, ну и понравилось, черт возьми!

т.е установить фьюзы CKSEL = 0100. Остальные фьюзы можно не трогать. А фьюзов CKSEL внём 4:CKSEL 0;CKSEL 1;CKSEL 2;CKSEL 3.
Вот и выставляй, CKSEL 0 в 0;CKSEL 1 в 0;CKSEL 2 в 1;CKSEL 3 в 0.
igoralex,Игорь, погугли потщательней, скорее всего не прошивка.

Оффлайн igoralex

  • Старожил
  • *****
  • Сообщений: 829
  • Репутация: 5
  • Игорь
  • Поблагодарили: +34
0
Погуглил,может и не прошивка,но сначала пытаются прошивку проверить.Обнулил eeprom всё пошло-вот цитата из одного типичного случая,другой случай-замена,если неисправна микросхема памяти,но всёже чаще прошивка,но заставить прошиться с диска не всегда возможно,если пытаешься прошить более ранней версией.С проца 99 нога-есть постоянка и что-то булькает по переменке,далее сигнал идёт на планарный транзистор,по постоянке напряжения есть,и по способам проверки мксхм памяти-вроде живая.Методичней будет проверить прошивку сначала,причём хочется обойтись без программатора,а с диска.

Оффлайн Roscou

  • Знакомый
  • *
  • Сообщений: 38
  • Репутация: 0
  • Валерий, Москва
  • Поблагодарили: 0
0
Обнулил eeprom всё пошло-вот цитата из одного типичного случая,другой случай-замена,если неисправна микросхема памяти,но всё же чаще прошивка,но заставить прошиться с диска не всегда возможно,если пытаешься прошить более ранней версией.
Я так телевизор заменой микросхемы памяти работать заставил, правда потом долго искал родной пульт чтобы в сервисном меню все настройки выставить, запоказывал сразу, но отдавал в зеленый прилично. Что бы прошиться с диска нужна обязательно прошивка более свежая чем в нем сейчас, иначе он ее проигнорирует.

Оффлайн igoralex

  • Старожил
  • *****
  • Сообщений: 829
  • Репутация: 5
  • Игорь
  • Поблагодарили: +34
0
Вот здесь раздают прошивки на ВВК http://www.bbk-sc.ru/forum/index.php?topic=2331.15,только я не могу  пройти регистрацию -две недели пишет"нужно проверить электронный адрес",наверное не поддерживает bm2010@i.ua ,а только типа(yuranspa@mail.ru)Может кто сможет помочь скачать с этого сайта на bbk dk1435si прошивку более новую ,чем dk1410si3-0A v2.1,(1410-1440-отличаются только аккустикой),и выложит или здесь или в личку ,или на почту?Пожалуйста.

Оффлайн igoralex

  • Старожил
  • *****
  • Сообщений: 829
  • Репутация: 5
  • Игорь
  • Поблагодарили: +34
0
Нашёл обновлённую прошивку,прошил с диска -успешно,видео не появилось-всё-таки-проц гавкнул.Буду использовать его как усилитель,с другим ДВД.

 

Похожие темы

  Тема / Автор Ответов Последний ответ
107 Ответов
63422 Просмотров
Последний ответ 30 Октября 2011, 13:30:20
от Дениска_Сергеевич
78 Ответов
63747 Просмотров
Последний ответ 22 Апреля 2013, 20:02:35
от jank5
85 Ответов
56104 Просмотров
Последний ответ 10 Октября 2014, 16:07:20
от Dohtur