LINUX.ORG.RU

Полноценная AVR из Arduino

 ,


0

2

Есть ардуино-нано, но нет желания копаться в кастрированном wiring. crossdev поставлен, осталось разобраться как её шить без костылей Arduino IDE. Как я понимаю, некий программатор уже впаян в саму плату. Непонятно зачем на самом камне хранится некий «загрузочник». По ардуинке довольно сложно искать информацию, очень много откровенно мусорных статеек, для людей одновременно далёких и от электроники и от программирования. А статьи про AVR подразумевают что у тебя уже есть какой либо программатор. Система: calculate-linux на базе gentoo



Последнее исправление: Swinec (всего исправлений: 1)

Непонятно зачем на самом камне хранится некий «загрузочник».

Там того загрузчика на 4 килобайта, и делает он всего ничего — загружает в память остальную программу. Без загрузчика это просто кусок текстолита, пластика и кремния.

осталось разобраться как её шить без костылей Arduino IDE

dfu-programmer, avrdude. Но с Arduino IDE удобнее, а код писать можно и в Vim (я так и делаю). Но если не лень писать мейкфайлы — вперёд.

calculate-linux на базе gentoo

А что, Calculate бывает на базе другого дистрибутива? xD

r3lgar ★★★★★
()

Да нет там никаких проблем, я сам, когда надо было «динозавра» реанимировать, тренировался сначала на абдуринке. Читай здесь Makefile.

Сам работаю в генте, так что, вряд ли у тебя в кальке какие-то проблемы возникнут.

anonymous
()
Ответ на: комментарий от r3lgar

Без загрузчика это просто кусок текстолита, пластика и кремния.

Не ври человеку! Загрузчик там — чтобы из дерьмо-абдурино-IDE загружать.

с Arduino IDE удобнее

ничего там не удобней, через жопу все. удобней написать код и залить через ISP.

anonymous
()

прошивать можно через isp. можно прошить свой загрузчик вместо ардуиновского, и прошивать через usb-ttl.

vvviperrr ★★★★★
()
Ответ на: комментарий от vvviperrr

Хочет секса с говном, пусть трахается.

А когда ум появится, обратит внимание на STM32. STM8 — нечто значительно проще, зато, учитывая их копеечную цену, тоже нишу применения имеют. Я на STM8 розеточки управляемые делал и простенькие модули для управления униполярными шаговыми двигателями.

АВРки же — говно мамонта. У них периферии практически ноль. Только ногодрыгом абдуринничать...

anonymous
()
Ответ на: комментарий от anonymous

Да, ТС, если таки захочешь нормальные МК использовать, а не аврки, то у меня на гитхабе есть кое-что и под STM32, и под STM8.

Сейчас работаю над системой термомониторинга главного зеркала БТА. Основа — STM32F042. Уже несколько дней все работает в экспериментальном режиме, остается только дописать USB CDC для STM32F042, чтобы выкинуть посредника USB<->TTL (к сожалению, под этот камень еще никто CDC не писал, приходится быть первопроходчиком).

anonymous
()

Если хочешь шить микроконтроллеры по взрослому, тебе нужен программатор. В случае с AVR механизм будет называться ISP (In-System programming). Там используется шина SPI для обмена данными, сброс и питание. Добудь либо сам собери программатор. Рекомендую https://www.fischl.de/usbasp/. Одна из популярных утилит для работы с ним - avrdude. Ну а дальше — пишешь/копируешь makefile по своему вкусу, или настраиваешь любимое IDE для удобной работы.

PS: я тоже гентушник, что-то нас тут дофига собралось :)

TwisteR ★★
()

Конкретно за arduino не знаю, всё что ниже - предположения.

На avr загрузчик отличается от основной программы тем, что может писать во все области памяти.

Т.е. если ты хочешь, чтобы avr сам себя перепрошил, тебе нужно это делать именно из загрузчика.

Ардуино прошивается по usb, без программатора, соответственно там есть загрузчик, который умеет себя прошивать по usb.

Всё, что тебе нужно, это найти ардуиновский загрузчик, разобраться в протоколе обновления ПО и запилить аналог.

Программатора встроенного там нет.

Ivan_qrt ★★★★★
()

ты не поверишь, но среда ардуино использует avrdude и пишешь ты там на C. Большого смысла от нее отказываться на начальном этапе нет. Можно собирать просто make'ом. Большой разницы не будет. Загрузчик просто удобная хрень, позволяет писать через UART вместо JTAG'а/SPI. Но ничто не мешает. Посмотри как разрабатывают разные фирмвари для reprap - там куча разных способов.

А товарищи, катящие бочку на arduino в большинстве случаев не слишком правы, поэтому слушать их не надо.

slapin ★★★★★
()
Ответ на: комментарий от anonymous

Не ври человеку!

Ну он же не погромизд и не айтишник, так что ему это никак не поможет. (%

ничего там не удобней, через жопу все. удобней написать код и залить через ISP.

ТС — не погромизд и не айтишник!

r3lgar ★★★★★
()

Нет на плате никакого прогрмматора. Бутлоадер нужен чтобы можно было шить через uart. Без бутлоадера можно шить только через spi(+ есть еще один способ)

Ты конечно же не относишься к людям далеким от железа, и знаешь что такое spi. Вот и шей через spi без всяких костылей.

redixin ★★★★
()

Ты можешь шить через ардуиновый бутлоадер прогой avrdude. Включи в настройках Arduino IDE подобный вывод для загрузки, увидишь с какими параметрами надо его вызывать.

DuMOHsmol
()

ИМХО ардуина только запутывает людей. Да конечно ты можешь кодить и шить прямо из ide и все прямо как по волшебству. Но шаг влево шаг вправо от Arduino IDE и ты ничего сделать не можешь. И приходится самому начинать разбирается что есть программатор что есть avrdude и его многообразие флагов и режимов. И наконец найти нормальный makefile. Итого не подход а медвежья услуга.
А еще эти fuse bits чтоб они горели в аду.

bga_ ★★★★
()

Сейчас очень много литературы по Arduino.

На любой вкус -

https://www.labirint.ru/search/Arduino

----

Использую

http://playground.arduino.cc/linux/mint

----

Лучшая IDE для AVR - именно _IDE_, как это понимают программисты -

https://habr.com/post/111908/

Bioreactor ★★★★★
()
Последнее исправление: Bioreactor (всего исправлений: 2)
26 сентября 2018 г.
Ответ на: комментарий от anonymous

Только ногодрыгом абдуринничать...

Эдди, такой Эдди...

Oberstserj ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.