Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить

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

Вт июл 18, 2017 18:01:03

(мож не туда написал - перекинте, пожалуйста)

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

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

Вт июл 18, 2017 18:42:34

Используйте то, что Вашей душе угоднее, ближе, проще, ...

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

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

Вт июл 18, 2017 18:51:32

Возьмите вместо ардуины STM32.

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

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

Вт июл 18, 2017 18:53:02

(мож не туда написал - перекинте, пожалуйста)
Или тормозит, или зависает, или не компилит - вываливается с ошибкой, версии библиотек разные - не компилится, версия IDE не та - не компилится.
...
До этого почти все делал в Кодвижене - все ясно и почти понятно.
...
Шаг назад это ардуино?

Вы сами ответили на свой вопрос.

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

Вт июл 18, 2017 19:21:22

Потому что это правда.
Каждому своё и у каждого своя правда. Вам проще на STM'ах. Мне, например, на других. Но я не буду человека убеждать, чтобы он свои чипы выкинул в мусорку и начал осваивать те, которые для меня лучше.

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

Вт июл 18, 2017 21:47:00

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

С точки зрения новичка...
Есть такая плата (можно купить на Али и ST-Link не помешается если его нет)
СпойлерИзображение
В STM32F103C8T6 сравнительно немного периферии и она относительно не сложная.

Ну уж нет, все же лучше М0. В этой F103 одна только настройка портов с ума сведет. Зачем нужно было мешать MODE и CNF в один регистр, когда они отвечают за разные функции порта?! Отдельные регистры MODER и OTYPER - вот правильный вариант. Поэтому для начала только это. Да и дешевле выйдет. Ну и ST-Link разумеется.
[quote="Hustas"]Лучше SPL чем куб с HAL.

За описанием 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

Вот именно, это с точки зрения SPL, за описанием которой надо лезть в исходники.
Зачем, если есть RM и CMSIS?

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

Вт июл 18, 2017 23:01:35

Zhuk72 писал(а):за описанием которой надо лезть в исходники
В IDE нет поиска реализации функции парой кликов мышки?
Лезть в исходники нужно только по началу пока не запомнишь назначение функции или полей структуры.

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

Вт июл 18, 2017 23:05:12

В этой F103 одна только настройка портов с ума сведет. Зачем нужно было мешать MODE и CNF в один регистр, когда они отвечают за разные функции порта?! Отдельные регистры MODER и OTYPER - вот правильный вариант.

На F1 применяется более эффективный подход, в среднем нужно инитить меньшее количество регистров, но есть и некоторые ограничениями(например, для Open-drain не задашь подтяжки). А то что падает наглядность при работе напрямую с регистрами, т.к. она в таком случае все равно никакая, проще вызвать функцию, код будет одинаковый.

Ничего сложного. Все понятно на интуитивном уровне. Или не понятно что означает Pin, Mode или Speed?

Понятно, но там внутри цикл, 16 раз проверяется каждый бит маски, даже если нужна инициализация одного пина.

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

Ср июл 19, 2017 06:30:42

Для корректной работы с ардуинкой рекомендую использовать ИСКЛЮЧИТЕЛЬНО набор команд, заявленных на сайте разработчика IDE.
Собственно сама платформа Ардуино разработана как мультипроцессорная с точки зрения используемого в IDE компилятора.
Однако...
основное незначение - обслуживание интеллектуальных протоколов/интерфейсов и математика.
Собственно это звено между прикладным аппаратным комплексом на основе рассыпухии/или МК и ПК/сетевыми приложениями.
Ежли имеется интерес к прикладному использованию "в полном объёме"....
Тогда следует выявить в имеющейся ардуинке наиболее приемлемые для самодельных устройств периферии транспортные протоколы и разработать/изготовить самодельную периферию под прикладные датчики/исполнительные устройства на освоенных МК с приемлемой для прикладной задачи и транспортного протокола начинкой (мультимикроконтроллерная распределенная система).
Затем все увязать соответствующим самодельным ПО, базирующемся на имеющихся и освоенных компиляторах.
:beer:
Часто применяемые в работе с ардуинками извраты с применением утонченных настроек с помощью сторонних компиляторов (чаще встречаемое у ардуин на АВР) считаю чем-то вроде ранних проб писать программы для ПК, основанные на схемотехнике и системе команд конкретной материнки (проблема переносимости кода).
8)
Как вариант:
проектик моего подсобного "котуинки":
с
viewtopic.php?p=3021614#p3021614
по
viewtopic.php?p=3029805#p3029805
далее одна из первых проб
viewtopic.php?p=3132273#p3132273
и замысел на программатор
viewtopic.php?p=3140362#p3140362
с продолжением по мере реализации.
:write:
:beer:

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

Ср июл 19, 2017 07:11:15

В IDE нет поиска реализации функции парой кликов мышки?
Лезть в исходники нужно только по началу пока не запомнишь назначение функции или полей структуры.

Для чего все это? Читаю мануал, вижу название регистра, в IDE пишу это название. Для чего нужно лишнее мышкодвижение? Чтобы визуальное украшение в виде названий функций сделать? Ни-ни.
К тому же этот SPL сам производитель прекратил поддерживать. Сами ратуете за новое, за АРМы, а никак не выкинете старые библиотеки.

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

Ср июл 19, 2017 10:55:28

это вы что то не то делаете. ничего там не виснет и все работает.
библиотеки - если старые - то к текущей версии иде не подходят это да. ну так это и с "голым" авр так.
если хотите использовать ардуину просто как плату с авр - ради Бога. можно даже убрать загрузчик и пользоваться программатором. а можно использовать и загрузчик. иде ардуино для записи hex использует avrdude. как пользоваться загрузчиком - в интернете находится на раз.

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

Ср июл 19, 2017 18:04:16

Может и не так что-то делаю, не спорю. Вот живой пример. Отсюда (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

Может и не так что-то делаю

Это не важно. Важно что вы хотите делать и для чего. Чтобы во всём этом разобраться нужно самому себе ответить на несколько вопросов.

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

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

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

Ср июл 19, 2017 18:38:12

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

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

Ср июл 19, 2017 18:56:04

буду делать как и раньше

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