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

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Не цитируй сообщение, если оно и так крайнее. А по вопросам... Да, автор всё сделал сам. В этои и удивительного ничего нет. Алгоритм примерно такой:
1. Выбираешь датчик, чем измерять.
2. Выбираешь чем это будет обрабатываться.
3. Выбираешь средство вывода информации.
4. Комбинируешь это в схему, попутно продумывая питание.
5. Изучаем спецификацию на экран и на датчик. Думаем. Сочиняем прошивку.
6. Прошиваем, собираем схему на макетке/проводах и тестируем. Ищем недочёты.
6.1 Исправляем, если нашли.
7. Получив итоговую схему и итоговую прошивку делаем итоговую плату. Рисуем её модель, а потом делаем буквально.
8. Собираем конечный экземпляр устройства. Тестируем ещё раз. Делаем снимки и хвастаемся.
Изображение
И ты врёшь!!! © Vladisman
Изображение
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

Сообщение Gudd-Head »

thisbetterbegood писал(а):а что в качестве него обычно используют?
Кто что. Блоки питания, USB от компа, батарейки, солнечные элементы, 220 В и пр.
thisbetterbegood писал(а):автор сам всё взял и "запаял"? И схему составил, и плату "протрассировал", и запрограммировал?
А что такого? Там 4 детальки всего.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
thisbetterbegood
Родился
Сообщения: 8
Зарегистрирован: Ср ноя 19, 2014 22:58:45

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

Сообщение thisbetterbegood »

Gudd-Head писал(а):А что такого? Там 4 детальки всего.
да я не удивляюсь, а просто спрашиваю :)

а как "устройство" можно отлаживать с компьютера? А кроме usb какие в принципе могут быть варианты подключения?
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

Сообщение Gudd-Head »

кроме usb
Чем USB не нравится?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
thisbetterbegood
Родился
Сообщения: 8
Зарегистрирован: Ср ноя 19, 2014 22:58:45

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

Сообщение thisbetterbegood »

всем устраивает, просто интересуюсь :)
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

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

Сообщение Alexeyslav »

тут дело такое, такая последовательность разработки характерна именно профессионалам. т.к. пункт 6 с высокой степенью вероятности не заработает сразу.
Поэтому имеет смысл сначала начать с мигалки(под "мигалкой" подразумевается простейший алгоритм позволдющий не тратя много времени убедится в работоспособности железа), чтобы освоится с инструментом и проверить рабочий ли вообще контроллер. Потом начинаются добавляться остальная периферия и первой идет средства отладки/вывода информации - настройка UART, индикатора и т.д. и только убедившись на тестовых алгоритмах что все работает двигаешься дальше.
Если делать все иначе - то будешь очень долго гоняться за черной кошкой в темной комнате и в конце концов убедишься что её там нет.

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

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

Сообщение alex_ »

такая последовательность разработки характерна именно профессионалам.

А по другому как то не получается особо, например как писать программу если не знаешь какой датчик будет какой дисплюй или интерфейс ПК на что именно будешь выводить инфу, интерфейсы у всех разные и они завладываются в начале.
Поэтому имеет смысл сначала начать с мигалки
Все с этого начинали.
Кстати, забыли про наиглавнейший инструмент для работы с МК - это логический анализатор и осциллограф, желательно цифровой с большой глубиной памяти.
Для начала тебе хватит тестера и пары светодиодов. Осцыллограф конечно круто но это как замерять длину обычного болта микрометром, в принцепе можно но нафиг не нужно так как эти болты изготовляют с допуском плюс минус пару милиметров, а ты микроны ловить собрался. Потом когда поднатаскаешься, если раньше не бросишь со словами: "У меня ничего не получается и нафиг надоело". А многие если почти не все проходили через это. Когда поднатоскаешься тебе осциллограф будет просто необходим.
Как вариант начни с протеуса, там готовых примеров полно, и самому можно почти любого "слона" собрать что бы посмотреть как оно работает.
ага, где в протеусе найти цифровую видеокамеру, или линейный CCD-сенсор?
Даже если она там и была, что ты там сней делать собрался, там много чего нет(не бывает обсолютно идеальных программ чего то всегда не хватает), но ширпотреба навалом.
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Эти вопросы, с протеусом и осциллографом решаются сами собой вот каким образом, что и пытались сказать выше:
1. Новичку нужны мигалки/пищалки/кнопки. Там хватает и мультиметра. И всё это есть в протеусе.
2. То что сложное, не подлежит буквальному симулированию. Это надо вживую, и тут уже будет нужен осциллограф. Но это уже не первый год творчества.
Изображение
И ты врёшь!!! © Vladisman
Изображение
Morroc
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

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

Сообщение Morroc »

лог анализатор я бы в набор новичка включил - копейки же, когда понадобиться не надо будет ждать или бегать - искать
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Аватара пользователя
alex_
Опытный кот
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

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

Сообщение alex_ »

лог анализатор я бы в набор новичка включил
Вполне, но я как то разобрался и без него(помогли светодиоды), точнее в то время у меня небыло возможности его купить.
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Светодиод он уже считай лог. анализатор. Если исключить возможность подвешенной единицы. Или как там она называется. Или тем же мультиметром глянуть напряжение. Хотя да, можно взять и готовый -- не сложный прибор.

В теме соседней кстати чел описывал проблему, что самые дешёвые лог.анализаторы не умеют определять четыре состояния: 1, 0, Z, и нелогическое напряжение. Там ему инженер, который с ЭВМ работал посоветовал схемки, которые они сами собирали для удобства в работе. Буквально 10 деталек и всё сразу видно.
Изображение
И ты врёшь!!! © Vladisman
Изображение
thisbetterbegood
Родился
Сообщения: 8
Зарегистрирован: Ср ноя 19, 2014 22:58:45

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

Сообщение thisbetterbegood »

спасибо за советы. А имеет ли смысл купить "демонстрационную" плату?
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Всё зависит от направления. Если Вы хотите углубиться исключительно в программирование МК, то можно работать на одной только макетке. Если же ещё и аналоговую сторону вопроса копать хотите, можно начинать и комплексное изготовленье плат пробовать.
Изображение
И ты врёшь!!! © Vladisman
Изображение
thisbetterbegood
Родился
Сообщения: 8
Зарегистрирован: Ср ноя 19, 2014 22:58:45

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

Сообщение thisbetterbegood »

просто КОТ писал(а):Если же ещё и аналоговую сторону вопроса копать хотите
В том и проблема, что я не знаю еще, хочу или нет. Что эта аналоговая сторона подразумевает?
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

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

Сообщение Gudd-Head »

thisbetterbegood писал(а):Что эта аналоговая сторона подразумевает?

Например, у вас есть аналоговый датчик, на выходе которого напряжение -1...+1 В, а вы хотите его оцифровать. А АЦП у вас "кушает" напругу только 0...+5 В. Тогда придётся городить аналоговую схему согласования уровней.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Вот. Выходит, что все вопросы, которые не являются работой с единицами и нулями, а связаны с совмещением, преобразованием, передачей и смешиванием некоторых уровней напряжения. Или же полноценных сигналов. А также первичные и вторичные источники\преобразователи тока... Всё это аналоговая сторона вопроса. Она может быть или решена тревиально. Т.е. мы берём некоторый готовый модуль с еБея и с ним работаем всё теми же единичками/нулями. Или же мы начинаем сами создавать схемы. В этом случае будет работа уже не только с кодом, но и с железом.
Изображение
И ты врёшь!!! © Vladisman
Изображение
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

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

Сообщение Alexeyslav »

Светодиод в качестве логического анализатора... пойдет разве что для мигалки. Он может помочь только если точно представляешь что с его помощью НЕЛЬЗЯ увидеть. Осциллограф предпочтительней.
axillent
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

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

Сообщение axillent »

в качестве логического анализатора предпочтительней логический анализатор
осциллограф хорош для работы с аналоговыми сигналами, он ни как не заменит логический анализатор
логическим анализатором можно поймать короткую и длинную последовательность нулей и единиц, проанализировать такие протоколы как SPI, I2C и тд

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

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

Сообщение alex_ »

Alexeyslav писал(а):Светодиод в качестве логического анализатора... он может помочь только если точно представляешь что с его помощью НЕЛЬЗЯ увидеть.

Это почему это, делаешь частоту пониже и всё видно, я к чему клоню когда я изучал логику и цифру у меня нифига небыло ни компа ни осциллографа ни анализатора(далёкие 95-00) были только светодиоды, зато это так офигенно смекалку развивало, ещё бы надо как то разобраться как это работает а у тебя толком и приборов то нет, одни светодиоды и тестер. А сейчас блин даже стало не интересно поцепил анализатор он тебе всё нарисовал, даже думать ничего не надо, тоска да и только.
Аватара пользователя
просто КОТ
Друг Кота
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ
Контактная информация:

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

Сообщение просто КОТ »

Светодиод и правда очень развивает фантазию и смекалку. Просто он отметил, и это верно, что для этого смекалка нужна изначально подготовленная. Новичёк же может в некоторых спорных вопросах прогадать. Так что надо очно представлять -- чего светодиод не сможет.
Изображение
И ты врёшь!!! © Vladisman
Изображение
Ответить

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