Страница 1 из 5

Что такое ардуино?

Добавлено: Ср окт 12, 2016 09:16:34
cgw
Arduino это
программа или только программа с прошитым контроллером.
вопрос могу я допустим из какой либо Atmega 8/16/32/64/128/256 сделать Arduino просто прошив ее?

Re: Что такое ардуино?

Добавлено: Ср окт 12, 2016 09:22:18
uk8amk
Скорее ардуино - это подход к программированию на основе готовых кубиков.

А так да, прошивайте поддерживаемый контроллер и работайте с ардуино.

Re: Что такое ардуино?

Добавлено: Ср окт 12, 2016 09:22:51
Slavyn57
Ардуино - это среда разработки и отладки. Конечно можешь, но сейчас стоимость ардуин настолько мала, что дешевле будет купить готовую в Китае.

Re: Что такое ардуино?

Добавлено: Пт окт 14, 2016 14:29:54
Jeka_M
cgw писал(а): вопрос могу я допустим из какой либо Atmega 8/16/32/64/128/256 сделать Arduino просто прошив ее?
А мне вот интересно, что Вы хотите получить в результате "Atmega сделать Arduino"? Чем, по-вашему, оно будет отличаться от просто Atmega?
Я не думаю, что Вам это надо только ради загрузчика по USB-UART. Если Вы собрались прошивать Atmega, значит уже есть чем (программатор) и загрузчик не потребуется (к тому же экономится flash память, которую занимает загрузчик). Если Вы про программную совместимость, то после компиляции "скетчей" в Arduino IDE на выхлопе получается обычный *.hex, который спокойно прошивается как в Ардуино, так и в просто Атмегу.

P.S. Судя по "Atmega 8/16/32/64/128/256" у Вас слабые представления не только про Ардуино, но и про модельный ряд AVR.

Re: Что такое ардуино?

Добавлено: Пт окт 14, 2016 20:31:13
Mishany
Ардуно - это кака :)))

Re: Что такое ардуино?

Добавлено: Пт окт 14, 2016 23:04:02
Morroc
Не нравится - не ешь ! :)) Десять страниц разбора "почему я не могу залить и запустить прошивку на меге" в свежей теме про синтезатор на cqham намекают, что ардуина полезна - чтобы залить в нее обычно хватает нескольких постов объяснений "как" :))

Re: Что такое ардуино?

Добавлено: Пн окт 17, 2016 21:39:45
74LS00
Ардуино это Ход Гения.

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

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

Недостаток у этих модулей так же есть и его породила неграмотность програмистов их создававших. Ардуино создано програмистами, не радиоконструкторами.
Самое первое это невозможность подключить модуль ардуино к макетной плате.
Большой модуль ардуино имеет 2 ряда контактов которые сдвинуты на пол шага, в случае какого нибудь про мини также есть 2 контакта аппаратной i2c которые нельзя подключить никак кроме как проводками.
Создание устройства на модуле ардуино макетным монтажом невозможно, следовательно или полнейшие сопли или делать свою плату, но это уже не ардуино.

Вторая проблема ещё проще, не все ноги разведены. У вас не получится использовать ноги кварца при работе от встроенного генератора, часть ног также занята светодиодами.
Точек подключения к этим контактам нет, а пайка к ногам smd , нафик надо такую модульность.
Кроме того на платах с большими контролерами несколько ног вообще не идут дальше площадки самого МК, им просто не хватило места.

Мораль такова, нельзя использовать все ноги МК . Не хватает ног, городите регистры.

Цель ардуино была скорее упростить софт. Я не изучал AVR , но я изучал альтеровские плис и для меня было странным что ноги у контролеров поделены на группы называемые портами, а в этих группах они пронумерованы.
Получается что у одного контролера есть несколько ног с одним номером, но они находятся в разных портах, ничего подобного у альтеры нет, там просто есть нога у которой есть номер.

Подобная примудрость avr учит использовать порты математическим способом. Програмист берёт какойто порт из 8 ног и просто опрашивает их по порядку зацикливая функцию. На самом контролере эти ноги тоже расположены в большинстве случаев рядом. Но именно это упрощение для програмиста становится проблемой когда он переходит на stm и начинает материть понимая что весь его алгоритм для avr полное фуфло и как минимум создаст путаную плату.

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

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

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

Третья проблема, паршивая среда разработки сама по себе.
Там есть подсветка но это пожалуй всё. Нет даже элементарной кнопки "собрать", вместо этого надо запоминать комбинацию из 3 клавиш раскиданых по всей клаве или лезть в многоуровневое меню. Естественно никаких авто вставок тоже нет.
Кроме того нельзя открыть файл который находится не в папке с тем же именем.
Из за того что проект состоит из одинаковых файлов и не имеет файла проекта, корневым файлом зачемто выбирается тот который с названием текущей папки, но на самом деле программе совершенно пофиг как и любым компиляторам какой файл главный в проекте.

Re: Что такое ардуино?

Добавлено: Пн окт 17, 2016 22:43:35
Morroc
Ну для макеток есть "nano" - там все более менее разведено :) (если не хватает пары ног - есть подобные штуки на stm32, там побольше ног и в макетку тоже воткнется)

Re: Что такое ардуино?

Добавлено: Вт окт 18, 2016 00:38:12
74LS00
Это и в самом деле лучшая из ардуин.
Все ноги разведены и даже те что isp (только что глянул),
есть разъём isp,
2 ровненьких ряда контактов, хотя не проверял на сколько они симметричны шагу 2,54.
Но есть одна проблема это цена , из за размеров и второго чипа , такую платку не будешь пихать куда попадя, про мини дешевле и компактнее.

По первым пунктам сам столкнулся с тем что мне надо 3 провода подключить к линиян isp, а у леонардо они не разведены, причём сам разъём тоже нужен, кое как напаял сзади друг на други и наляпал ленты кое как, кароче соплпи.
Что я только не вытворял с ней, и отрезал светодиоды которые smd, и отрывал от них дорожки, кнопка сброса и вовсе развалилась хоть и не работала.
И большая часть проблем из за того что не хватает ног.
Мне просто нужна была отладочная плата потомучто моя будет не скоро, а то бы проще было купить контролер и сделать нормальную макетку, еслиб не цена контролера сравнимая с ардуиной

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 07:56:50
alex38779
Ну еще плюс ардуины в том, что снижает порог вхождения в электронику для детей. Что бы не отбить желание сложностями с регистрами, даташитами и так далее. Т.е. процесс изучения происходит как игра. Берем кубики и составляем. Ну это для детей.

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 09:27:26
Vov123
Осталось только определить: кто-же те добрые дядьки, что делают кубики для детей и не хотят, сволочи, для других платформ.

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 09:56:38
alex38779
Я имел ввиду что детям проще войти в мир электроники через ардуино.

А профи и др усатые коты могут смотреть на нее как на худую и бесполезную мышь!

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 10:14:02
Vov123
Ага, понял, профи и др усатые коты, сначала пишут библы, вероятно сначала сами используют, распространяют, а потом могут смотреть на нее как на худую и бесполезную мышь?
У Вас самый "богатый" проект чего был? Флешку подключили? Часики-мигалки?

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 10:48:44
Morroc
74LS00 писал(а): 2 ровненьких ряда контактов, хотя не проверял на сколько они симметричны шагу 2,54.
С краю втыкается в длинную макетку и там же usb хвост в нее, а оставшаяся часть макетки под свистоперделки - удобней всяких uno получается.
74LS00 писал(а): Но есть одна проблема это цена , из за размеров и второго чипа , такую платку не будешь пихать куда попадя, про мини дешевле и компактнее.
Как начали ch340 ставить - почти сравнялась цена, и то и то между $1 и $2 если контакты не припаяны. Ну покомпактнее - это да.
alex38779 писал(а):А профи и др усатые коты могут смотреть на нее как на худую и бесполезную мышь!
Есть мыши потолще и почти такие же удобные https://ru.aliexpress.com/item/F85-Free ... 95436.html :))

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 15:23:35
74LS00
Vov123, как полный бездарь в програмировании скорее всего как и вы могу сказать что ардуино никак не портит програмистов. Я никогда не умел работать с модулями и не могу запомнить тысячи команд которые есть во всех ООП будь то хоть си хоть ардуино хоть любой другой язык ничем не отличающийся по синтаксису кроме названия этих команд, которых тысячи.
Если мне надо изменить программу, мне совершенно пофиг на каком языке она написана, я не знаю не одного, но это не мешает понимать синтаксис, остаётся найти кусок кода который может быть заработает. Это работает и в ардуино и в си и каком нибудь бесике, другое дело в питоне не прокатывает, но это уже инженерный язык и контролеры в эту категорию не попадают.
Если мне надо написать код, я долго ищу чем что попроще, потом пишу и уже через год не могу вспомнить ни как его читать, ни даже свои коментарии не могу разобрать, я его забываю полностью. Мне будет проще выучить чтото другое и написать другой код чем разбирать как он работает.

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

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 22:44:39
Полосатый
Это песню такую Пугачёва пела: "Ах, ардуино, ардуино ..." :)
А про визуал бейсик не надо вспоминать ... я как-то сочинял на ём программку для экселя - полез в хелп и сильно долго мяутерился ... В итоге, пришлось включать макрос на запись логов и среди этих логов высматривать как там оно на самом деле пишется.

Re: Что такое ардуино?

Добавлено: Ср окт 19, 2016 23:37:12
SIM31
alex38779 писал(а):Ну еще плюс ардуины в том, что снижает порог вхождения в электронику для детей. Что бы не отбить желание сложностями с регистрами, даташитами и так далее. Т.е. процесс изучения происходит как игра. Берем кубики и составляем. Ну это для детей.
Не только для детей. Иногда хочется надо собрать мигалку какую-нибудь за несколько часов. В любом ларьке есть ардуины, берем и с несколькими проводками собираем. Кубики типа GSM, WiFi, Ethernet модуля дают как-бы не слабые возможности. Если не хватает ардуин, включая Arduino Due, Arduino Yun, можно переходить на Raspbery Pi 3 и подобные. Держать в уме регистры, в 21 веке, как-раз устаревший подход, не представляю зачем это нужно.

Тут, конечно, джедаи ЛУТ повторят подобные платы и сделают намного лучше :)
СпойлерИзображение
Вот тоже забавные платы поиграться:

Изображение

Есть конечно недостатки. Думаю каждый сталкивался с самым главным недостатком Ардуины, низкая устойчивость к радиации, всего 5000 рад (тут пишут https://habrahabr.ru/post/156049 ) и они ломаются, поэтому для дома ни как не подойдут :)

Re: Что такое ардуино?

Добавлено: Чт окт 20, 2016 04:45:02
74LS00
Не знал о таких ардуинах, наверно они и не нужны.
Диапазон температур у них вроде как ближе к промышленному, помнится читал про плис, вот там точно комерческий.
Утюг скорее всего не актуален, цена контролера у китайцев хорошо если на бакс ниже готовой ардуины, а там ещё разъёмы и другая волокита.

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

Интересная ардуинка, там есть хаб ридер, как раз искал такое, может сгодится на что

Re: Что такое ардуино?

Добавлено: Чт окт 20, 2016 12:08:54
SIM31
74LS00 писал(а):Не знал о таких ардуинах, наверно они и не нужны.
Иногда удобно, когда вдруг требуется больше памяти производительность выше. Просто обновил плату и работаешь с тем же кодом.
Повод не любить ещё и от самих контролеров, покойные атмели на которых все ардуины самые дорогие, хотя ардуино и сбило их цену. Тем временем появились контролеры которые не только по цене, но и по функционалу обошли всякое старьё.
Контроллеров хватает. Новые контроллеры хороши, но опоздали. Интересны, например, PSoC, но тоже, массово не получили поддержку сообщества. По функционалу сейчас возьмут скорее Raspbery Pi 3, с гигабайтами памяти, четырьмя ядрам и Linux на борту, и светодиодом можно помигать, и фильмы с него смотреть. Микроконтроллеры на этом фоне смотрятся весьма печально:
СпойлерИзображение
Мне микроконтроллера Atmega328 (иногда Attiny 13) вполне хватает для всех моих задач, где не хватает поставлю Arduino старших моделей или Raspberry Pi. Про PSoC и STM32 знаю, но в них нет необходимости настолько, чтобы городить зоопарк программаторов и сред разработки, и тем более голову себе забивать лишними сущностями. Какой-нибуть таймер у STM32F4 сложнее чем вся линейка 8-битных контроллеров Atmega, про него можно неделю даташиты читать, чтобы учесть все его особенности. А вот Atmega дает впечатление, что каждый бит под контролем.

Про худшие контроллеры от Atmel спорно, слишком уж массовые и популярные. Производятся с 1990х до сих пор, очень удачно получились.

Снимаем крышку с какого-нибудь промышленного контроллера за 1000$ а там Atmega
СпойлерИзображение

Re: Что такое ардуино?

Добавлено: Чт окт 20, 2016 14:48:14
74LS00
Всегда в росии пики популярнее казались уж не знаю почему, забугорные студенты тоже на них лепят приборы не имеющие аналогов. Вот открываю кассовый апарат и там клавиатура на пике. Везде где нужна скорость стоят пики, атмели ставят в тормознутые калькуляторы.
Подобные ширпотребные контролеры и появились в нулевые, до этого были спец детали.
В бесперебойнике всеми любимого апц стоит 2 тиньки, хотя в моём ипоне спец контролер. Попалась пожарная сигнализация и там тинька, видел контролер котла на тиньке . Меги ставят скорее в очень дорогую технику, оно и понятно цена то вы 4-6 раз выше stm на которых делает китай уже дешёвые приборы