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

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Re: Микроконтроллеры - с чего начать новичку?

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

дальше освойте выдачу байта через 1 ногу, преобразователь "параллельный код в последовательный"
Затем научитель считать кол-во импульсов на ноге в течение Х времени, используя таймер МК. Сделайте "цветомузыку", отпределяя частоту по кол-ву импульсов за 50 ms
затем учитесь работать с таймером в другом режиме: определите длину импульса

потом на этой базе сделайте устройство для приёма данных с пульта ДУ
Затем иммитируйте пультт устройств своей железкой
на месяц завлекуху гарантирую: управлять устройствами дома - дело занятное. Да и много хорошего можно для дома а этой основе сделать
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Андрей Бедов »

mixon46 писал(а):...собрал устройство "бегущий огонь". Потом собрал "мираж". И пока что то ничего не охота делать:)

А у меня вот есть цель - собрать светодиодные семисегментные часы.
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Re: Микроконтроллеры - с чего начать новичку?

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

динамическая индикация должна быть освоена после работы со сдвиговыми регистрами - там вам будет проще понять суть программы
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Chip115 »

aleksandr-zh писал(а):динамическая индикация должна быть освоена после работы со сдвиговыми регистрами - там вам будет проще понять суть программы

Нафига в динамической индикации регистр сдвиговый? На регистрах строится статическая индикация.
И вообще, что вы там выше писали - это утопия.

Андрей Бедов писал(а):А у меня вот есть цель - собрать светодиодные семисегментные часы

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

А покупка отладочной платы - это деньги на ветер. Програть надо на реальном девайсе, а не на демоплате. Она хороша для обучения студентов в вузе/технаре. А для себя надо сразу паять устройство и прогать начинать.
Последний раз редактировалось Chip115 Вс окт 14, 2012 13:45:15, всего редактировалось 1 раз.
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Микроконтроллеры - с чего начать новичку?

Сообщение ploop »

А у меня вот есть цель - собрать светодиодные семисегментные часы

Хорошее дело. Казалось бы, простейшее устройство, но много чего для знакомства с МК и программирования в себе сочетает. Ну и польза будет (часы лишними не бывают :) )
Аватара пользователя
mixon46
Говорящий с текстолитом
Сообщения: 1644
Зарегистрирован: Сб фев 18, 2012 15:42:29
Откуда: Курск

Re: Микроконтроллеры - с чего начать новичку?

Сообщение mixon46 »

у меня тоже есть цель! Я хочу собрать тв (телек) на дисплее от мобильного устройства. Ну сейчас мне совершенно понятно что на мк типа мега8 сделать устройство невозможно из за низкой частоты проца меги. Вот допустим дисплей 240х320. Сколько будет пикселей в сумме? 76800 пикселей. И еще частота обновления экрана? Что бы было нормально то 50 герц. Тоесть каждый пиксель должен 50 раз в секунду менять свою яркость для отображения картинки. Перемножаем 76800х50. Частота 3840000 гц. Тоесть 3.84 мгц. (что то я начал рассуждать и зашел в тупик:(. А стоп. Плюс считывание информации с ацп. Перед тем как вывести нужный цвет на нужный пиксель нужно прочитать информацию с ацп. Х2=7.68 мгц.. (люди подскажите, что то не сходится в моем восприятии действительности)
Аватара пользователя
__Oleg__
Первый раз сказал Мяу!
Сообщения: 38
Зарегистрирован: Пн окт 01, 2012 22:47:39

Re: Микроконтроллеры - с чего начать новичку?

Сообщение __Oleg__ »

Изучать на данный момент без знания англицкого из младших серий AVR на мой взгляд лучше начинать сразу с ATMEGA128. И на то есть несколько причин.
1. В инете можно качнуть русскоязычный даташит.
2. Он содержит почти всю обвязку, что не потребует закупок других МК этой серии.

Из программаторов для ком порта, наиболее стабильный и наиболее простой (по моему 7 резюков и 3 диода) это Uniprof.
Сайт разработчика не помню, скачать можно отсюда: http://narod.ru/disk/56872379001.9dfcb9 ... 0.zip.html
Схема и описание в файле хелпа. Кстати работает очень даже шустро, обновление смотрите на сайте разработчика (молодец парень).

Для начала советую курить asm, будет легче вначале разобраться с аппаратной частью и приобрести опыт правильного структурирования программ. А далее хоть С, хоть Basic, особой разницы с точки структуры программы нет. Но вот С официально поддерживает ATMEL, а значит будет халявная среда разработки IDE.

Удачи всем начинающим :beer: :beer:
Последний раз редактировалось __Oleg__ Вс окт 14, 2012 21:39:32, всего редактировалось 2 раза.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Микроконтроллеры - с чего начать новичку?

Сообщение ploop »

Я хочу собрать тв (телек) на дисплее от мобильного устройства. Ну сейчас мне совершенно понятно что на мк типа мега8 сделать устройство невозможно из за низкой частоты проца меги.

На восьмой вряд ли, а вот на atxmega32 люди вполне себе паяют...
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Re: Микроконтроллеры - с чего начать новичку?

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

__Oleg__ писал(а):Для начала советую курить asm, будет легче вначале разобраться с аппаратной частью и приобрести опыт правильного структурирования программ. А далее хоть С, хоть Basic, особой разницы с точки структуры программы нет.

полностью согласен!
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Chip115 »

__Oleg__ писал(а):Изучать на данный момент без знания англицкого из младших серий AVR на мой взгляд лучше начинать сразу с ATMEGA128.

Что значит "изучать" ? Нафига покупать контроллер только для того, что бы запустить на нем несколько программ, юзающих периферию нафиг ему не нужной в данный момент?
Самый рациональный способ изучения - это собрать устройство и начать прогать его, испольуя только необходимую начинку.
Ну хочет он часы, пусть покупает тиньку 2313 или мегу8 и паяет, а потом прогает. Тут он и научится,и устройство сделает. А тупо покупать самый фаршированный мк, воткнуть его в монтажку и пытаться мигать светодиодом - это не рационально и бесполезно. А инфы на русском дофига и по тиньке213, атмеге8,16 ... . Да и вообще, они почти одинаково настраиваются и юзаются. Захочет собрать лог. анализатор с подключением по USB - купить другой мк и освоит его в рамках конкретной задачи.
Асм конечно надо знать, но пацану надо сейчас собрать самопальное устройство на мк и насладиться тем моментом, когда оно заработает как надо, а не как получится. Для меня, когда я сварганил первое устройство на мк было удобнее учить си.

И на последок. Вообще советую начать с классики. У атмелов есть мк серии 8051. Нет замут с настройкой портов и прочее. И просто куча инфы для 8051 на русском и на любом языке прог.
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Андрей Бедов »

Chip115, я полностью с тобой согласен! Мне не нужно много теории, я не собираюсь быть программистом и сам писать программы. Мозга не хватит. Но я радиолюбитель, имею общее представление, что такое МК, как он работает и что умеет. И поэтому хотел бы начать, как говорится, "с середины". И желательно сразу на конструкции. Мне кажется, необходимые знания сразу параллельно "всплывут". Буду разбираться "по ходу дела". Я практик-железячник. Теория туго даётся. Уж компьютер себе сам собрал, "вылизал". Думаю, что и тут осилю. На конкретных устройствах.
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Jack_A »

Так не бывает. Нельзя быть "немножко беременной". Или научишься писать программы, пускай пока ограниченного функционала, чтобы по мере продвижения узнавать все новые возможности -- или тупо повторять чужие разработки. Как нельзя разрабатывать цифровые схемы, не зная, что такое счетчик, триггер, регистр -- так нельзя проектировать МК-устройства, не зная, что такое слово состояния, условный переход, сдвиг, подпрограмма, прерывание. Что касается языка - я сторонник АСМа, он позволяет прочувствовать "унутренность" МК, а языки высокого уровня предоставляют юзверю "черный ящик" . Я так думаю.
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: Микроконтроллеры - с чего начать новичку?

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

Андрей Бедов писал(а): Подскажите пожалуйста для начала какие-нибудь распространённые "детские" МК для начинающего, и схемы программаторов к ним.


Рекомендую покорившую мир платку Arduino nano за 500 рублей. Самое удобное для новичка. Программировать можно и в оригинальной оболочке и в любой программе.

А начать можно в PROTEUS.
Будете проходить мимо- проходите!
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Микроконтроллеры - с чего начать новичку?

Сообщение ploop »

Не слушайте его. Плохому научит.
Хотите узнать, что такое МК - не приближайтесь к Arduino. И вообще, забудьте это слово. Когда пощупаете сам МК, тогда можете вспомнить про него, вас стошнит, потом забудете опять :)))
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Микроконтроллеры - с чего начать новичку?

Сообщение hybroid »

Поддержу. Нах ардуино, это же кошмар тормознутый с точки зрения программирования. Да и эти этажерки.... (ну почему до сих пор нет блюющего смайла? Изображение

Лучше сколхозить минимальную отладочную плату, на которой есть стаб питания, какая-нить MAX232 для связи с компом, разведены ноги на площадки, как на макетке. Ну так же каких пару светодиодов сразу запаять. Если рассматривать AVR, то с attiny, особенно восьминогими, сразу связываться тоже не советую. Страшный таракан, две ноги питания отрываем и остаётся шесть, никакой лапы не оторвать :)
Брать надо что-то вроде хотя бы atmega8 (достаточный динозавр) или лучше с atmega48/88/168. Последние новее, больше вкусностей, взаимозаменяемы, что тоже удобно (например, не влезло в 4кб флеша - сдул с платы 48 и поставил 88, в которой 8кб). Так же к ним вроде можно цепляться отладчиком.

В качестве программатора к ним можно собрать либо ком-программатор, любой, ком-порт у тебя должен быть, судя по железу из другого топика. Ну или USB на какой-нить той же AVR-ке, ибо дешевле, чем FT232RL.

Ну и ещё есть STM32 :) 32 бита, все дела..
amfetamin
Грызет канифоль
Сообщения: 256
Зарегистрирован: Сб сен 15, 2012 08:55:53
Контактная информация:

Re: Микроконтроллеры - с чего начать новичку?

Сообщение amfetamin »

серия интересных статей по stm32 http://cxem.net/mc/mc131.php,сам там учусь,мб поможет,я так подумал,вместо того что бы осваивать старье,лучше начать с более менее нового и дешевого сырья,что бы потом проще было принять какой нибудь новый девайс)))
Последний раз редактировалось amfetamin Вт окт 16, 2012 02:00:00, всего редактировалось 1 раз.
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: Микроконтроллеры - с чего начать новичку?

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

Arduino nano очень удобна для новичка. :beer:
Будете проходить мимо- проходите!
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: Микроконтроллеры - с чего начать новичку?

Сообщение hybroid »

Она удобна для домохозяек и школоло, ибо позволяет не изучить МК, а помигать диодом на хреновине за три минуты, не вдаваясь хоть в какие подробности.
Автор радиолюбитель, ему на фиг не нужна эта шляпа.
hybroid писал(а):(ну почему до сих пор нет блюющего смайла?
Хм. Спасибо, позитивный смайл :)))
amfetamin писал(а):по stm32,сам там учусь
amfetamin писал(а):нового и дешевого сырья
И имя ему STM8, а не STM32. А то скоро будем на i7 тостеры делать.. Как это не печально, но пока что всё же начать проще именно с AVR, ибо до хренища материалов (говна среди них, само собой, ещё больше. Вон, второй раз ардуину советуют :facepalm: ).
А когда знаешь азы работы с МК, то глубочайше наплевать, на что переходить :dont_know:
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Re: Микроконтроллеры - с чего начать новичку?

Сообщение Chip115 »

Jack_A писал(а):Что касается языка - я сторонник АСМа, он позволяет прочувствовать "унутренность" МК, а языки высокого уровня предоставляют юзверю "черный ящик" . Я так думаю.

Как по мне, так асм нужен для отладки программы или для написания быстродействующего кода. Хотя современные оптимизаторы вполне справляются со своей задачей. Проще переплыть в ручную пролив Ла-Манш с бумажным порезом по перек соска, чем писать код более 3 кБ на асме. И черный ящик не так уж и плох. Мне вот абсолютно пофигу как работает USB. Там протокол содержит кучу страниц убористого текста. Я лишь знаю какие функции мне нужны из библиотек и все. А что там в нутри них - мне пофигу и вообще не надо знать. А вот на вас я бы посмотрел, как бы вы создали проект на ОСВР на каком нить кортексе ))))
hybroid писал(а):А когда знаешь азы работы с МК, то глубочайше наплевать, на что переходить :dont_know:

Вот тут прям в точку. Вообще по барабану какой мк. Главное что бы по характеристикам подходил. В конечном итоге, надо курить доку и знать, что запихивать в регистры для настройки.

P.S Ардуино - кака! Фу-фу-фу.
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: Микроконтроллеры - с чего начать новичку?

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

Ардуино отличный выбор для новичка. Глубина изучения предмета зависит только от желания изучающего.
Будете проходить мимо- проходите!
Ответить

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