Вопрос. Хочу начать изучать устройство микроконтроллеров и железо в принципе. Я погуглил с каких штук начинать, и там два выбора: AVR и STM32. Глаз упал на 8-битный AVR контроллер (конкретной модели не знаю). Какую плату с контроллером лучше купить? Паяльник в руках не держал, но хочу начать. Опыт в проге есть и на С, и на плюсах, и на ассемблере. По железу примерно ноль: знаю, как хранятся данные, знаю базу работы процессора, всё
Комментарии: 39
Denis
Нууу, щас начнется срач)))
Anonim
любую Arduino, лучше чуть жирнее заранее по ресурсам, например atmega32u4, и в дополение ISP программатор
Aleksandr
Квантовые алгоритмы попробовать пописать
Dimon
Я брал атмегу, программатор и писал на ассемблере, очень хорошо становится понятно что и как в ней работает.
Doctor
это как писать автополив для горшка на ардруино и для связи с wifi юзать esp8266. Хотя есп сама все может Смотря в чем желание. Если желание поиграться по изучать как оно работает на уровне регистров то авр неплохой выбор. (присутствует человеческая документация ) Если с места в карьер ,то stm, но надо быть готовым искать информацию в 10 даташитах сразу. Если изучение даташитов не интересует то лучший выбор esp8266 ,(платы wemos d1 mini Nodemcu ) Wifi на борту , можно всякие полезные поделки делать для дома и не только.
Aleksandr
Поделюсь своим опытом, на работе препарирую сейчас stm32l476, до этого разбирал atmega328p, атмега в разы проще на мой взгляд, однако у stm возможностей больше, если у атмеги datasheet на 300 страниц, там и описание регистров, и примеры кода и описание инструкций, то у стм овер много документации
Samuil
... И не вся она в одном документе
Aleksandr
Если stm то да, на ядро мануал, рефернс на 1к+ страниц, мануал по программированию, на HAL еще один мануал 2.5к страниц, на cmsis еще один мануал, в общем одного чтения не меньше чем на пол года
Ogurezzz
Не очкуй. Не так там все страшно. И старшие серии не так чтобы сильно отличаются от младших в части пересекающихся блоков. Мега проще, но сильно дороже и купить не паленую - задача
Anonim
в пизду авр. Бери стм32. Не ссы с даташита. Он хорош. Зато тебе всегда хватит ресурсов. Но самое главное средства отладки и прошивки. СТЛИНК как бык овцу кроет всякие программаторы для авр. Там тебе и отладка и прошивка и регистры на лету посмотреть.
Vga
радикально, для автора "курса авр")
Anonim
когда курс авр писался стм32 не существовал
Vga
для авр вроде выкатили собираемый на коленке отладчик по дв
Anonim
да? А какой?
Vga
чтоб я помнил как называется...
Anonim
есть, но он один хуй хуево работает по сравнению с стм32 ну и у стм32 айс есть на всех камнях, а у авр только на жирных
Vga
причем сам микрочип вроде и опубликовал дв вроде даже на тиньках был?
Anonim
ну на новых да. чето есть. Но один хуй авр после стм32 это боль одна разная периферия чего стоит а на смт32 по всей линейке все работает одинаково
Ogurezzz
Dwire-debug. Я его даже завел. Но только в консоли. К VSCode так и не прикрутил
Ogurezzz
https://github.com/dcwbrown/dwire-debug/blob/master/Manual.md
Anonim
ебать оно чо через уарт работает?
Vga
больше похоже на эмуляцию протокола через уарт, как ванваер-на-уарте например
Ogurezzz
Ага.
Ogurezzz
Я смог подключиться, поднять gdb сервер, но подключиться к серверу из vscode не получается
Robert
Я как-то хотел приехать в музей Бачило, но меня не пустили))
Sobol
Т.к до этого с электронникой не работал, перифирия (монитор), программа и отладчик отладчик всегда были в рамках одного компьютера. Поэтому я понимаю как отладчик видит процесс исполнения программы, а потом транслирует это на монитор. Но как работать с отладчиком для микроконтроллера? По описаию и изображению вижу, что uart преобразователь подключается к микроконтроллеру. Т.е на микрокотнтроллер загружается исполняемый код, dwitre-debug на компютер, и тогда дебаг имеет доступ к устройству посредство uart преобразователя?
Ogurezzz
У МК есть свой интерфейс для отладки. Если там правильно "подергать ногами", то он тебе в этот интерфейс выдаст то, что надо. dwire debug умеет дергать эту ногу правильно. И умеет поднимать gdb сервер, к которому, по идее, ты можешь подключиться своим клиентом. Так вот в моем случае я подключился gdb и смог поставить точку останова и "пошагать" программой. А вот использовать средства VSCode для подключения к GDB-серверу, чтобы все это делать красиво кнопочкам - не смог. Плюс для МК нужна карта регистров, чтобы не прописывать в watch адреса номерами, а задавать имена. Это тоже удобство.
Sobol
Спасибо. Всё ещё есть определенные вопросы, но мне пока надо ознакомиться с базой AVR, т.к пока не могу их корректно задать
Samuil
Существовал. Не было stm cube, с генератором кода для тактирования.
Anonim
скажем так, до появления платок эвал стм32 был какой то экзотикой а вот когда стм начал эвалкиты нахаляву ВСЕМ слать, вот тогда оно пошло в народ
Vga
вроде иначе назывался алсо задолго до были лпц2000 на арм7тдми
Anonim
да и для них отладчик был тоже геморно сделать. Все упиралось в нормальную отладку. Или шить через бут только
Robert
http://easyelectronics.ru/arm-uchebnyj-kurs-vvodnaya.html "Информация будет не столько для тех кто начал с нуля, а тех кто уже наигрался с 8ми битными контроллерами и решил полезть выше.", а твой курс по ARM пойдет совсем для новичков?
Anonim
да пойдет. Куча инфы сейчас есть по разным вопросам. Я там просто не разжеывают совсем уж азы. типа что такое порт, что такое уарт, как работает подтяжка это можешь почитать в курсе авр. Просто бегло по диагонали
Yarikkasl
А ведь на вашем сайте я как раз таки учился
Ogurezzz
Ну это потому что ты нищеброд и у тебя нету AVR-ICE