С чего начать программировать микроконтроллеры?
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Не цитируй сообщение, если оно и так крайнее. А по вопросам... Да, автор всё сделал сам. В этои и удивительного ничего нет. Алгоритм примерно такой:
1. Выбираешь датчик, чем измерять.
2. Выбираешь чем это будет обрабатываться.
3. Выбираешь средство вывода информации.
4. Комбинируешь это в схему, попутно продумывая питание.
5. Изучаем спецификацию на экран и на датчик. Думаем. Сочиняем прошивку.
6. Прошиваем, собираем схему на макетке/проводах и тестируем. Ищем недочёты.
6.1 Исправляем, если нашли.
7. Получив итоговую схему и итоговую прошивку делаем итоговую плату. Рисуем её модель, а потом делаем буквально.
8. Собираем конечный экземпляр устройства. Тестируем ещё раз. Делаем снимки и хвастаемся.
1. Выбираешь датчик, чем измерять.
2. Выбираешь чем это будет обрабатываться.
3. Выбираешь средство вывода информации.
4. Комбинируешь это в схему, попутно продумывая питание.
5. Изучаем спецификацию на экран и на датчик. Думаем. Сочиняем прошивку.
6. Прошиваем, собираем схему на макетке/проводах и тестируем. Ищем недочёты.
6.1 Исправляем, если нашли.
7. Получив итоговую схему и итоговую прошивку делаем итоговую плату. Рисуем её модель, а потом делаем буквально.
8. Собираем конечный экземпляр устройства. Тестируем ещё раз. Делаем снимки и хвастаемся.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: С чего начать программировать микроконтроллеры?
Кто что. Блоки питания, USB от компа, батарейки, солнечные элементы, 220 В и пр.thisbetterbegood писал(а):а что в качестве него обычно используют?
А что такого? Там 4 детальки всего.thisbetterbegood писал(а):автор сам всё взял и "запаял"? И схему составил, и плату "протрассировал", и запрограммировал?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
-
thisbetterbegood
- Родился
- Сообщения: 8
- Зарегистрирован: Ср ноя 19, 2014 22:58:45
Re: С чего начать программировать микроконтроллеры?
да я не удивляюсь, а просто спрашиваюGudd-Head писал(а):А что такого? Там 4 детальки всего.
а как "устройство" можно отлаживать с компьютера? А кроме usb какие в принципе могут быть варианты подключения?
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: С чего начать программировать микроконтроллеры?
Чем USB не нравится?кроме usb
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
-
thisbetterbegood
- Родился
- Сообщения: 8
- Зарегистрирован: Ср ноя 19, 2014 22:58:45
Re: С чего начать программировать микроконтроллеры?
всем устраивает, просто интересуюсь 
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
тут дело такое, такая последовательность разработки характерна именно профессионалам. т.к. пункт 6 с высокой степенью вероятности не заработает сразу.
Поэтому имеет смысл сначала начать с мигалки(под "мигалкой" подразумевается простейший алгоритм позволдющий не тратя много времени убедится в работоспособности железа), чтобы освоится с инструментом и проверить рабочий ли вообще контроллер. Потом начинаются добавляться остальная периферия и первой идет средства отладки/вывода информации - настройка UART, индикатора и т.д. и только убедившись на тестовых алгоритмах что все работает двигаешься дальше.
Если делать все иначе - то будешь очень долго гоняться за черной кошкой в темной комнате и в конце концов убедишься что её там нет.
Кстати, забыли про наиглавнейший инструмент для работы с МК - это логический анализатор и осциллограф, желательно цифровой с большой глубиной памяти. Без этих инструментов попытка щупать микроконтроллеры будет сродне попытке слепого описать слона. Многие вещи просто невозможно отлаживать виртуально, в том числе и протеус(ох как он бесит меня в этом плане) - либо нет нужных компонентов(ага, где в протеусе найти цифровую видеокамеру, или линейный CCD-сенсор?) либо отладка ограничена только внутренним состоянием контроллера. Внешний программатор-отладчик(кстати лучше брать не просто программатор а программатор с аппаратным отладчиком, но это уже после игр с ардуино) не всегда позволяет отлаживать - например из-за необходимости делать это в реальном масштабе времени.
Но для "поучить" хватит и встроенной в IDE отладки.
Поэтому имеет смысл сначала начать с мигалки(под "мигалкой" подразумевается простейший алгоритм позволдющий не тратя много времени убедится в работоспособности железа), чтобы освоится с инструментом и проверить рабочий ли вообще контроллер. Потом начинаются добавляться остальная периферия и первой идет средства отладки/вывода информации - настройка UART, индикатора и т.д. и только убедившись на тестовых алгоритмах что все работает двигаешься дальше.
Если делать все иначе - то будешь очень долго гоняться за черной кошкой в темной комнате и в конце концов убедишься что её там нет.
Кстати, забыли про наиглавнейший инструмент для работы с МК - это логический анализатор и осциллограф, желательно цифровой с большой глубиной памяти. Без этих инструментов попытка щупать микроконтроллеры будет сродне попытке слепого описать слона. Многие вещи просто невозможно отлаживать виртуально, в том числе и протеус(ох как он бесит меня в этом плане) - либо нет нужных компонентов(ага, где в протеусе найти цифровую видеокамеру, или линейный CCD-сенсор?) либо отладка ограничена только внутренним состоянием контроллера. Внешний программатор-отладчик(кстати лучше брать не просто программатор а программатор с аппаратным отладчиком, но это уже после игр с ардуино) не всегда позволяет отлаживать - например из-за необходимости делать это в реальном масштабе времени.
Но для "поучить" хватит и встроенной в IDE отладки.
Re: С чего начать программировать микроконтроллеры?
такая последовательность разработки характерна именно профессионалам.
А по другому как то не получается особо, например как писать программу если не знаешь какой датчик будет какой дисплюй или интерфейс ПК на что именно будешь выводить инфу, интерфейсы у всех разные и они завладываются в начале.
Все с этого начинали.Поэтому имеет смысл сначала начать с мигалки
Для начала тебе хватит тестера и пары светодиодов. Осцыллограф конечно круто но это как замерять длину обычного болта микрометром, в принцепе можно но нафиг не нужно так как эти болты изготовляют с допуском плюс минус пару милиметров, а ты микроны ловить собрался. Потом когда поднатаскаешься, если раньше не бросишь со словами: "У меня ничего не получается и нафиг надоело". А многие если почти не все проходили через это. Когда поднатоскаешься тебе осциллограф будет просто необходим.Кстати, забыли про наиглавнейший инструмент для работы с МК - это логический анализатор и осциллограф, желательно цифровой с большой глубиной памяти.
Как вариант начни с протеуса, там готовых примеров полно, и самому можно почти любого "слона" собрать что бы посмотреть как оно работает.
Даже если она там и была, что ты там сней делать собрался, там много чего нет(не бывает обсолютно идеальных программ чего то всегда не хватает), но ширпотреба навалом.ага, где в протеусе найти цифровую видеокамеру, или линейный CCD-сенсор?
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Эти вопросы, с протеусом и осциллографом решаются сами собой вот каким образом, что и пытались сказать выше:
1. Новичку нужны мигалки/пищалки/кнопки. Там хватает и мультиметра. И всё это есть в протеусе.
2. То что сложное, не подлежит буквальному симулированию. Это надо вживую, и тут уже будет нужен осциллограф. Но это уже не первый год творчества.
1. Новичку нужны мигалки/пищалки/кнопки. Там хватает и мультиметра. И всё это есть в протеусе.
2. То что сложное, не подлежит буквальному симулированию. Это надо вживую, и тут уже будет нужен осциллограф. Но это уже не первый год творчества.
Re: С чего начать программировать микроконтроллеры?
лог анализатор я бы в набор новичка включил - копейки же, когда понадобиться не надо будет ждать или бегать - искать
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Re: С чего начать программировать микроконтроллеры?
Вполне, но я как то разобрался и без него(помогли светодиоды), точнее в то время у меня небыло возможности его купить.лог анализатор я бы в набор новичка включил
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Светодиод он уже считай лог. анализатор. Если исключить возможность подвешенной единицы. Или как там она называется. Или тем же мультиметром глянуть напряжение. Хотя да, можно взять и готовый -- не сложный прибор.
В теме соседней кстати чел описывал проблему, что самые дешёвые лог.анализаторы не умеют определять четыре состояния: 1, 0, Z, и нелогическое напряжение. Там ему инженер, который с ЭВМ работал посоветовал схемки, которые они сами собирали для удобства в работе. Буквально 10 деталек и всё сразу видно.
В теме соседней кстати чел описывал проблему, что самые дешёвые лог.анализаторы не умеют определять четыре состояния: 1, 0, Z, и нелогическое напряжение. Там ему инженер, который с ЭВМ работал посоветовал схемки, которые они сами собирали для удобства в работе. Буквально 10 деталек и всё сразу видно.
-
thisbetterbegood
- Родился
- Сообщения: 8
- Зарегистрирован: Ср ноя 19, 2014 22:58:45
Re: С чего начать программировать микроконтроллеры?
спасибо за советы. А имеет ли смысл купить "демонстрационную" плату?
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Всё зависит от направления. Если Вы хотите углубиться исключительно в программирование МК, то можно работать на одной только макетке. Если же ещё и аналоговую сторону вопроса копать хотите, можно начинать и комплексное изготовленье плат пробовать.
-
thisbetterbegood
- Родился
- Сообщения: 8
- Зарегистрирован: Ср ноя 19, 2014 22:58:45
Re: С чего начать программировать микроконтроллеры?
В том и проблема, что я не знаю еще, хочу или нет. Что эта аналоговая сторона подразумевает?просто КОТ писал(а):Если же ещё и аналоговую сторону вопроса копать хотите
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: С чего начать программировать микроконтроллеры?
thisbetterbegood писал(а):Что эта аналоговая сторона подразумевает?
Например, у вас есть аналоговый датчик, на выходе которого напряжение -1...+1 В, а вы хотите его оцифровать. А АЦП у вас "кушает" напругу только 0...+5 В. Тогда придётся городить аналоговую схему согласования уровней.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Вот. Выходит, что все вопросы, которые не являются работой с единицами и нулями, а связаны с совмещением, преобразованием, передачей и смешиванием некоторых уровней напряжения. Или же полноценных сигналов. А также первичные и вторичные источники\преобразователи тока... Всё это аналоговая сторона вопроса. Она может быть или решена тревиально. Т.е. мы берём некоторый готовый модуль с еБея и с ним работаем всё теми же единичками/нулями. Или же мы начинаем сами создавать схемы. В этом случае будет работа уже не только с кодом, но и с железом.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Светодиод в качестве логического анализатора... пойдет разве что для мигалки. Он может помочь только если точно представляешь что с его помощью НЕЛЬЗЯ увидеть. Осциллограф предпочтительней.
Re: С чего начать программировать микроконтроллеры?
в качестве логического анализатора предпочтительней логический анализатор
осциллограф хорош для работы с аналоговыми сигналами, он ни как не заменит логический анализатор
логическим анализатором можно поймать короткую и длинную последовательность нулей и единиц, проанализировать такие протоколы как SPI, I2C и тд
к тому же для новичка купить китайский клон анализатора за 10 баксов куда доступнее чем осциллограф за несколько сотен
осциллограф хорош для работы с аналоговыми сигналами, он ни как не заменит логический анализатор
логическим анализатором можно поймать короткую и длинную последовательность нулей и единиц, проанализировать такие протоколы как SPI, I2C и тд
к тому же для новичка купить китайский клон анализатора за 10 баксов куда доступнее чем осциллограф за несколько сотен
Re: С чего начать программировать микроконтроллеры?
Alexeyslav писал(а):Светодиод в качестве логического анализатора... он может помочь только если точно представляешь что с его помощью НЕЛЬЗЯ увидеть.
Это почему это, делаешь частоту пониже и всё видно, я к чему клоню когда я изучал логику и цифру у меня нифига небыло ни компа ни осциллографа ни анализатора(далёкие 95-00) были только светодиоды, зато это так офигенно смекалку развивало, ещё бы надо как то разобраться как это работает а у тебя толком и приборов то нет, одни светодиоды и тестер. А сейчас блин даже стало не интересно поцепил анализатор он тебе всё нарисовал, даже думать ничего не надо, тоска да и только.
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: С чего начать программировать микроконтроллеры?
Светодиод и правда очень развивает фантазию и смекалку. Просто он отметил, и это верно, что для этого смекалка нужна изначально подготовленная. Новичёк же может в некоторых спорных вопросах прогадать. Так что надо очно представлять -- чего светодиод не сможет.

