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

Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 18:01:03
Hustas
(мож не туда написал - перекинте, пожалуйста)

Крик души, что-ли
Уже давно занимаюсь контроллерами, на уровне хобби. МЕГА проектов не сочинял, так по мелочи для себя. Термометры, термостаты, датчики всякие, вольтметры и т. д. Травил платки, паял, в общем как все... Заинтересовался "умным домом", а там куда не глянь - все на ардуино. Ну ардуино так ардуино. Купил пару платок (UNO, 2560), установил IDE и началось ....
Или тормозит, или зависает, или не компилит - вываливается с ошибкой, версии библиотек разные - не компилится, версия IDE не та - не компилится... С горем пополам откомпилил blink на делаях.(хотя в инете на них чуть ли не шатлы космические делают) Перерыл кучу форумов - у каждого стабильная версия своя, кто блютузы отключает, кто в исключения добавляет, кто говорит - так и должно быть. Короче ХЗ.?
До этого почти все делал в Кодвижене - все ясно и почти понятно, компилится, если ошибка, то сразу, а не через 7-10 мин. Да, находил глюки и в CV, но мизерно мало, и всего две версии 1.2 и 2.4 расставляли все точки, если подозрение было на компилятор.
Так что получается - платка красивая, а IDE нормальной нет, загрузчик там есть еще какой-то, с фузами не все прозрачно. Шаг назад это ардуино?
Кто работал с платами напрямую, из CV, или Atmel Studio, прошивал обычным AVR910, или аналогами? Вроде, аппаратно, должно работать. Направте на путь истинный, а то мозг закипает... с этим ардуино складывается ощущение, что AVR-ку первый раз в жизни вижу

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 18:42:34
Аlex
Используйте то, что Вашей душе угоднее, ближе, проще, ...

Очередная холиварная тема, непонятно для чего созданная. Сейчас придут СТМщики и начнут Вам впаривать АРМы, которые "проще", "дешевле", "круче", ... :facepalm:

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 18:51:32
Мурик
Возьмите вместо ардуины STM32.
АРМы, которые "проще", "дешевле", "круче"
Потому что это правда. ARMы не то чтобы проще (конструктивно они сложнее). Проще на них разрабатывать проекты.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 18:53:02
Zhuk72
[uquote="Hustas",url="/forum/viewtopic.php?p=3147308#p3147308"](мож не туда написал - перекинте, пожалуйста)
Или тормозит, или зависает, или не компилит - вываливается с ошибкой, версии библиотек разные - не компилится, версия IDE не та - не компилится.
...
До этого почти все делал в Кодвижене - все ясно и почти понятно.
...
Шаг назад это ардуино?[/uquote]
Вы сами ответили на свой вопрос.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 19:21:22
Аlex
[uquote="Мурик",url="/forum/viewtopic.php?p=3147351#p3147351"]Потому что это правда.[/uquote]Каждому своё и у каждого своя правда. Вам проще на STM'ах. Мне, например, на других. Но я не буду человека убеждать, чтобы он свои чипы выкинул в мусорку и начал осваивать те, которые для меня лучше.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 21:47:00
Hustas
ARM рулит однозначно, еще до ардуины, задолго до ардуины, прикупил F3 Discovery, F4 Discovery, конечно круче в разы, но количество периферии на борту не влазит в мой мозг, STM Cube помогает, не зря его придумали. Да и IDE там посложнее. Но вопрос все же в ардуине, неужели вся разработка (даже самая простая) заканчивается на копировании чьего-то кода и подменой pin27 на pin15 (например)?
Наверное не буду голову забивать этим, CV или Atmel Studio почему-то ближе к сердцу(мозгу)...

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 21:57:15
Мурик
Hustas писал(а):прикупил F3 Discovery, F4 Discovery, конечно круче в разы, но количество периферии на борту не влазит в мой мозг
Нужно начинать с чего-то попроще, типа M3 или M0.

Есть такая плата (можно купить на Али и ST-Link не помешает если его нет)
СпойлерИзображение
В STM32F103C8T6 сравнительно немного периферии и она относительно не сложная.
Hustas писал(а):STM Cube помогает, не зря его придумали.
Идея хорошая, но реализация не очень. Лучше SPL чем куб с HAL.
Hustas писал(а):Да и IDE там посложнее.
Я бы так не сказал, но зависит от IDE. EmBitz относительно простая и функциональная среда. Для начала очень хороший вариант.
Hustas писал(а):Но вопрос все же в ардуине, неужели вся разработка (даже самая простая) заканчивается на копировании чьего-то кода и подменой pin27 на pin15 (например)?
Это от вас зависит. Если не знаете как разрабатывать программы, то видимо все будет сводится именно к этому.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 22:13:43
Zhuk72
С точки зрения новичка...
[uquote="Мурик",url="/forum/viewtopic.php?p=3147476#p3147476"]Есть такая плата (можно купить на Али и ST-Link не помешается если его нет)
СпойлерИзображение
В STM32F103C8T6 сравнительно немного периферии и она относительно не сложная.[/uquote]
Ну уж нет, все же лучше М0. В этой F103 одна только настройка портов с ума сведет. Зачем нужно было мешать MODE и CNF в один регистр, когда они отвечают за разные функции порта?! Отдельные регистры MODER и OTYPER - вот правильный вариант. Поэтому для начала только это. Да и дешевле выйдет. Ну и ST-Link разумеется.
[uquote="Мурик",url="/forum/viewtopic.php?p=3147476#p3147476"][quote="Hustas"]Лучше SPL чем куб с HAL.[/uquote]
За описанием SPL нужно лезть в заголовки, предварительно почитав RM. А там, кстати, используются нормальные имена регистров, используемых в CMSIS. Так что логичнее именно CMSIS - общаешься напрямую с регистрами, а не со структурами, описания которых еще надо поискать. Не слишком ли длинный путь?

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 22:27:23
Мурик
Zhuk72 писал(а):В этой F103 одна только настройка портов с ума сведет.

Код: Выделить всё

GPIO_InitTypeDef GPIO;

GPIO.GPIO_Pin = GPIO_Pin_0;
GPIO.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOA, &GPIO);
Ничего сложного. Все понятно на интуитивном уровне. Или не понятно что означает Pin, Mode или Speed?
Zhuk72 писал(а):За описанием SPL нужно лезть в заголовки, предварительно почитав RM.
Есть справка в архиве с библиотекой. У каждой функции в исходниках краткое описание.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 22:39:34
Zhuk72
Вот именно, это с точки зрения SPL, за описанием которой надо лезть в исходники.
Зачем, если есть RM и CMSIS?

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 23:01:35
Мурик
Zhuk72 писал(а):за описанием которой надо лезть в исходники
В IDE нет поиска реализации функции парой кликов мышки?
Лезть в исходники нужно только по началу пока не запомнишь назначение функции или полей структуры.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Вт июл 18, 2017 23:05:12
Reflector
[uquote="Zhuk72",url="/forum/viewtopic.php?p=3147487#p3147487"]В этой F103 одна только настройка портов с ума сведет. Зачем нужно было мешать MODE и CNF в один регистр, когда они отвечают за разные функции порта?! Отдельные регистры MODER и OTYPER - вот правильный вариант.[/uquote]
На F1 применяется более эффективный подход, в среднем нужно инитить меньшее количество регистров, но есть и некоторые ограничениями(например, для Open-drain не задашь подтяжки). А то что падает наглядность при работе напрямую с регистрами, т.к. она в таком случае все равно никакая, проще вызвать функцию, код будет одинаковый.

[uquote="Мурик",url="/forum/viewtopic.php?p=3147491#p3147491"]Ничего сложного. Все понятно на интуитивном уровне. Или не понятно что означает Pin, Mode или Speed?[/uquote]
Понятно, но там внутри цикл, 16 раз проверяется каждый бит маски, даже если нужна инициализация одного пина.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 06:30:42
BOB51
Для корректной работы с ардуинкой рекомендую использовать ИСКЛЮЧИТЕЛЬНО набор команд, заявленных на сайте разработчика IDE.
Собственно сама платформа Ардуино разработана как мультипроцессорная с точки зрения используемого в IDE компилятора.
Однако...
основное незначение - обслуживание интеллектуальных протоколов/интерфейсов и математика.
Собственно это звено между прикладным аппаратным комплексом на основе рассыпухии/или МК и ПК/сетевыми приложениями.
Ежли имеется интерес к прикладному использованию "в полном объёме"....
Тогда следует выявить в имеющейся ардуинке наиболее приемлемые для самодельных устройств периферии транспортные протоколы и разработать/изготовить самодельную периферию под прикладные датчики/исполнительные устройства на освоенных МК с приемлемой для прикладной задачи и транспортного протокола начинкой (мультимикроконтроллерная распределенная система).
Затем все увязать соответствующим самодельным ПО, базирующемся на имеющихся и освоенных компиляторах.
:beer:
Часто применяемые в работе с ардуинками извраты с применением утонченных настроек с помощью сторонних компиляторов (чаще встречаемое у ардуин на АВР) считаю чем-то вроде ранних проб писать программы для ПК, основанные на схемотехнике и системе команд конкретной материнки (проблема переносимости кода).
8)
Как вариант:
проектик моего подсобного "котуинки":
с
http://radiokot.ru/forum/viewtopic.php? ... 4#p3021614
по
http://radiokot.ru/forum/viewtopic.php? ... 5#p3029805
далее одна из первых проб
http://radiokot.ru/forum/viewtopic.php? ... 3#p3132273
и замысел на программатор
http://radiokot.ru/forum/viewtopic.php? ... 2#p3140362
с продолжением по мере реализации.
:write:
:beer:

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 07:11:15
Zhuk72
[uquote="Мурик",url="/forum/viewtopic.php?p=3147513#p3147513"]В IDE нет поиска реализации функции парой кликов мышки?
Лезть в исходники нужно только по началу пока не запомнишь назначение функции или полей структуры.[/uquote]
Для чего все это? Читаю мануал, вижу название регистра, в IDE пишу это название. Для чего нужно лишнее мышкодвижение? Чтобы визуальное украшение в виде названий функций сделать? Ни-ни.
К тому же этот SPL сам производитель прекратил поддерживать. Сами ратуете за новое, за АРМы, а никак не выкинете старые библиотеки.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 10:55:28
malex66
это вы что то не то делаете. ничего там не виснет и все работает.
библиотеки - если старые - то к текущей версии иде не подходят это да. ну так это и с "голым" авр так.
если хотите использовать ардуину просто как плату с авр - ради Бога. можно даже убрать загрузчик и пользоваться программатором. а можно использовать и загрузчик. иде ардуино для записи hex использует avrdude. как пользоваться загрузчиком - в интернете находится на раз.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 18:04:16
Hustas
Может и не так что-то делаю, не спорю. Вот живой пример. Отсюда (https://geektimes.ru/post/255404/) код, не большой совсем, компилится минут 10, или просто виснет без всяких ошибок в IDE 1.6.6 и, всем известные часики на матричных индикаторах, с этого форума (которые трудятся у меня не первый год), где 32-я мега забита почти полностью компилится в CV минуты 2, мож чуть больше, но в разы быстрее чем 40-50 строчек в ардуине, (это на моем ноуте, мож у кого и быстрее). И в чем прикол? И я не скажу, что после генерации стартового кода кодвижином написать, например, adc_read(1) и получить значение сразу в переменной ну ооочень сложнее чем считать значение ацп в ардуине

Добавлено after 5 minutes 43 seconds:
Непонятно почему народ присел на эту ардуину, просто из за неохоты брать в руки паяльник. Так оно тех нервов не стОит, я думаю.

Добавлено after 12 minutes 48 seconds:
Вот, нашел интересную статейку (https://habrahabr.ru/post/147025/). Интересно написано, в основном аппаратные глюки, но все же. цитата оттуда
"
А что касается Arduino — понятно, конечно, что те, кто решает с ней поиграться, с большинством проблем банально не столкнутся, но — после всего описанного выше я все же не понимаю столь высокой ее популярности.
"

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 18:12:51
Мурик
Hustas писал(а):код, не большой совсем, компилится минут 10, или просто виснет без всяких ошибок в IDE 1.6.6
Потому что ArduinoIDE - жирная толстая карова :))) и ей нужна пластика чтобы была красивой, а не что нибудь. :) https://youtu.be/J82qqQFw3Iw

Добавлено after 5 minutes 21 second:
Hustas писал(а):компилится в CV минуты 2, мож чуть больше
Почему так долго? :shock: Проекты в EmBitz (компилятор GCC) компилятся за примерно 10 секунд (полная пересборка проекта) при объеме прошивки больше 50 КБ. При объемах несколько КБ, нужно около секунды.
Правда компиляция многопоточная.

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 18:23:25
scorpi_0n
Может и не так что-то делаю
Это не важно. Важно что вы хотите делать и для чего. Чтобы во всём этом разобраться нужно самому себе ответить на несколько вопросов.

1. Кто вы? Вы просто НОЛЬ, на данном этапе, или повелитель РС (за плечами ОС, С++, ПХП и пр.)?
2. Вы хотите этим заниматься серьёзно и на всю жизнь или так, время от времени и по мелочам?
3. Вы готовы сами упорно со всем этим разбираться или вас просто удручают временные трудности которые вы решить не в состоянии?
4. Вы хорошо владеете техническим английским или английский вызывает у вас просто ступор?

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

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 18:38:12
Hustas
Так вот ответил, давно еще. Электроникой занимаюсь давно, профессия такая и первый контроллер был PIC16C какой то, с ним ничего не вышло, дефицит в наших краях, да и одноразовый, потом легендарный 16F84, а потом как-то на AVR-ки перешел, и нормально сидел на них в Atmel Studio и CV, а тут со всех сторон кричат АРДУИНО - круче всех, но для себя уже сделал вывод что далеко не круче, и буду делать как и раньше

Re: Отговорите меня от АРДУИНЫ, или наоборот...

Добавлено: Ср июл 19, 2017 18:56:04
scorpi_0n
буду делать как и раньше
Вот вам и ответ. На ардуину как правило ведутся комповые программеры, т.е. это дауншифт по сути. Сама идеология ардуины под это и заточена - максимум гибкости, минимум знаний железа и периферии. Т.е. для новичка ничего там лёгкого и нет и быть не может. Для вас же роковыми становятся привычки, приобретённые на ниве предварительного общения с МК.