Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить

Ардуино проекты на своей плате.

Ср ноя 16, 2022 21:41:42

Здравствуйте коты и их хозяева)
Админы не пинайте если не туда пишу или некорректно тему назвал.
Суть в чём. В интернете есть огромное количество разных ардуино проектов, готовых опробованных скетчей, либо каких то кусков кода из которых можно создать нужную программу, если владеешь немного средой ардуино.
Чего не скажешь о STM. На STM это то же есть, но либо проекты закрытые, либо мне не хватает чего то в нем или наоборот излишне.
Я продаю различные электронные устройства и постоянно ищу идеи. Таких идей полно именно среди ардуино.
Вопрос такой, как подобные проекты, которые собраны на макетке и горячем клее, перенести в более серьезный коммерческий вариант?
Вижу два варианта: либо брать схемотехнику ардуино, разводить ее на своей печатке и собирать проект используя ту же ардуино IDE и скетчи. Технически вроде не сложно, придется только все компоненты ардуинки закупать отдельно и распаивать на свою плату. Но как то вроде нелепо получается. А может и нет) Даже не знаю, делал ли так кто нибудь?
Либо же более правильный вариант и сложный, каким то образом переносить код на язык С и писать по сути программу под СТМ с нуля. Ну и конечно же схемотехнику менять. По сути от ардуино здесь останется только идея устройства.
Но у меня нет под боком знакомого программиста, который бы помогал в этом, писал программы.
А хочется именно самому осваивать и запускать новую поделку, в своем железе, красиво и не на соплях. В разводке платы и схемотехнике я разберусь, так же потихоньку вникаю в ардуино и более менее могу прочесть скетч, что то убрать или добавить. Тем более прошить готовым, которых как я говорил полно, особенно на англоязычных ютубах и сайтах.
Подскажите как лучше быть? Имеет ли вариант с ардуино право на жизнь?

Re: Ардуино проекты на своей плате.

Ср ноя 16, 2022 22:30:01

более правильный вариант
переносить код на язык С и писать по сути программу под СТМ с нуля.
от ардуино здесь останется только идея устройства.

Re: Ардуино проекты на своей плате.

Ср ноя 16, 2022 22:57:01

Убогие даже под STM32 свою абдурину портировали. Другое дело, что если у человека хоть пара извилин есть, абдуриной он пользоваться не будет!!!
Это ж надо было додуматься: зафигачить софтовые I2C, UART, SPI и т.п., когда есть аппаратные! Да еще и так через жопу все сделали, что вместо пары тактов элементарная инструкция будет все 100 выполняться!
Изучить С или С++ не так уж и сложно, как кажется (если, конечно, не пытаться в дебри С++ лезть, где эти гребаные шаблоны и прочая шняга; с другой стороны, классы в микроконтроллерах недопустимы, т.к. приводят к чрезмерному расходу ресурсов). В общем, лучшее, что можно сделать - поставить себе операционку на компьютер, полностью снеся убогую прошивку для игровых приставок, да начать изучать программирование… А лет через 5, когда поднатореешь, можно и микроконтроллерами заняться.

Re: Ардуино проекты на своей плате.

Чт ноя 17, 2022 08:38:57

Другое дело, что если у человека хоть пара извилин есть, абдуриной он пользоваться не будет!!!.

Категорически не согласен. Нет ничего проще, удобней и доступней Ардуины (в развитии -> STM), если надо проверить работоспособность какой-нибудь идеи с минимальными затратами. Это я говорю при том, что сам не являюсь фанатом Ардуины. Если знаете что-то более доступное для любительской разработки и прототипирования устройств на МК, то напишите.

Re: Ардуино проекты на своей плате.

Чт ноя 17, 2022 09:24:40

electroget, сейчас самое доступное по цене — STM32F103C6T6 (около 40 рублей за микроконтроллер в 48-ногом исполнении). Достаточно потратить всего лишь год-два, чтобы собрать свое окружение для их программирования (линкер-скрипт, стартап, заголовочные файлы, Makefile). А дальше, пользуясь мануалом и даташитом, хоть черта лысого можно напрограммировать. И платы свои разрабатывать.
А для начального прототипирования есть всякие "синие таблетки", которые можно втыкать в беспаечные макетки и подключать что-нибудь типа датчика, который надо проверить.

Что до "проверить устройство, особо не тратя время", то для этого берется одноплатник, хоть та же "апельсинка" за 1000 рублей, к нему подключается по I2C или SPI этот датчик и легко и непринужденно средствами линукса можно накатать простенькую программку для проверки. Или даже тупо начать с записи/чтения регистров прямо из баша.

Если же человеку не дано программировать или свою платку нарисовать, то зачем ему вообще все это?

Re: Ардуино проекты на своей плате.

Чт ноя 17, 2022 09:57:19

. Достаточно потратить всего лишь год-два, чтобы собрать свое окружение для их программирования (линкер-скрипт, стартап, заголовочные файлы, Makefile). А дальше, пользуясь мануалом и даташитом, хоть черта лысого можно напрограммировать.

Здесь и находится развилка между профессиональным и любительским подходом к разработке. Потому что у Ардуины подход - это бери и делай. С большой долей вероятности что что-то получится через месяц, а не через год-два. А для профессиональной разработки нужно изучать архитектуру МК и программирование этого МК на языке ассемблера. ГОДАМИ. И ещё и не факт, что всё получится. Китайцы совершенно не случайно плодят сейчас всякие клоны на основе архитектуры и ядра 8051. Они это делают потому, что за 40 лет под эту архитектуру был написан весь код какой только можно было написать. Они изготавливают клон, крадут нужный им код, вставляют всё это в своё изделие и почти не парятся с разработкой.

Re: Ардуино проекты на своей плате.

Чт ноя 17, 2022 11:54:22

Да китайцы и на STM32 и его клонах чего только не делают. Но смотреть в исходники нельзя, очень уж можно душевно пострадать ☺
Их метод "программирования" - куча копипасты и тяпляпщины. И, конечно, калокуб от дужи пользуют. И очень любят все софтово реализовывать, хоть на МК есть аппаратных интерфейсов гора! Поэтому зачастую можно встретить какой-нибудь STM32F407 там, где F030 за глазах ватит (но им же для софтовых интерфейсов скорости не хватает).

Re: Ардуино проекты на своей плате.

Чт ноя 17, 2022 13:23:29

Здравствуйте коты и их хозяева)
Админы не пинайте если не туда пишу или некорректно тему назвал.
Суть в чём. В интернете есть огромное количество разных ардуино проектов, готовых опробованных скетчей, либо каких то кусков кода из которых можно создать нужную программу, если владеешь немного средой ардуино. ...
Подскажите как лучше быть? Имеет ли вариант с ардуино право на жизнь?

Имеет, при наличии "дружественных специалистов в программировании".
На сегодня ардуино перехватывает практически все типы "ходовых МК", за исключением разве что PICов (у тех вроде свой вариант "ардуиноIDE" как всегда).
А вот без спецов, в компиляторах и ПК разбирающихся, вряд-ли чего получится. Один из вариантов - та же моя КОТУИНКО на mcs51 (кстати... аналогия адаптации IDE к 51му ядру есть у Z-Wave):
viewtopic.php?f=62&t=156720
viewtopic.php?p=3435971#p3435971
Проект открытый и по мере возможностей "обрастает шорстью"... Но... пока под ассемблером - ибо там адаптация SDCC (а не GCC как в большинстве платформ адуринки) нужна - это уже мне не потянуть, Си/С++ только под ардуинкой начал осваивать.
А вот "заинтересованных" в том пока не наблюдается...
:beer:

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 04:40:15

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


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


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

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

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

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

Из готовых ардуино лучшие искра мини, там всё идеально, но их не купить.
Если хотите делать своё, то нужно все контакты подвести к шагу сетки 2.54мм, у всех ардуино кроме нано этот шаг гуляет и макетку толком не поставить.
Второе это вывести все ноги проца на контакты, обычно ноги кварца не выведены.
Ещё у них 2 питания, аналоговое и цифровое, их нужно вывести отдельно, в ардуино они соединены потомучто в меге8 они не разделялись.
И кварц на ножках чтоб взять не отпаять, а не керамические смд козявки как на про.

Но какая разница если нормальных микросхем нет.
Кроме того такие улучшения увеличат размер платы.

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 09:38:13

Неверно...
Книг начального уровня на сегодня вполне достаточно.
74LS00 писал(а):...
Как можно было не сделать кнопку выгрузки скетча за всё это время.
так что можешь начать с того что переписать программу и добавить туда одну кнопку, в общем начинай изучать яву....

Загрузить готовый код можно и с помощью самой IDE и с помощью "сторонних средств" изготовителей соответствующих МК.
Вытянуть код "взад" (т.е. сделать копипаст/реверс-инжиниринг программы по готовому изделию) - в том особо смысла нету, да и никто не мешает сделать это при помощи тех же "сторонних средств". Установка же самого специального программного редактора, восстанавливающего исходный текст по имеющемуся дампу кода это уж Ваша "некорректная хотелка" (нечто типа IDA Pro Disassembler и подобных инструментов хакера).
8)
Возможность "выйти за рамки" стандартных платформ - тоже не вопрос, есть огромное количество "сторонних платформ" (то, о чем топикстартер вопрошал), сделанных весьма корректно.
В принципе основной подход к адуринкам - каждая из платформ это всего лишь "DIP микросборка" (а не конкретный МК, на ней установленный!) Правда со своими нюансами, свойственными как установленному МК, так и разводке платки и имеющемуся в IDE программному обеспечению под "стандарт "референса""(иначе копать исходный компилятор для соответствующего семейства МК придется на уровне разработчика). Помимо прочего никто не запрещает сделать платку из уже имеющихся в наборе IDE "платформ" самостоятельно, используя для создания программы ардуиноIDE - но тогда опять же руководствуемся заданным в IDE набором возможностей.
Есть и альтернатива - используем готовую платку, но пишем программу под "сторонним компилятором" (хош Си, хош ассемблер, хош еще чего для установленного на платке МК имеющегося).
Основное удобство ардуино IDE - не требуется предварительной настройки компилятора под каждый проект. В то же время на это большинство "профи" часто "фырчат".
:beer:

Пы.Сы.
На сегодня существуют две версии IDE
1.8.9 (рабочая лошадка) для ПК с ХР х32 (обычная и портабле с подгрузкой ограниченного количества платформ на компах с 7кой-10кой)
на ней не все платформы уже можно использовать...
и
2.0.1 для ПК с форточками х64 (более "продвинутый" редактор, возможность аппаратной отладки отдельных платформ).
Для симуляции/отладки программных решений имеется спецсимулятор с симуляцией типовой "обвязки"
https://www.sites.google.com/site/unoardusim/
8)

Чей-то топикстартер тему забросил...
:tea:

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 12:46:38

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


Тут только первый вариант.
Вариант 2 просто не релевантен вашей задаче. Это ничем не отличается от разработки с нуля. Вы не сможете нативно использовать самое ценное - готовые библиотеки и код ардуино. Внедрить их в чужеродный проект может быть сложнее, чем написать с все нуля.
Например, библиотеки для экранов Adafruit используют зависимости из базовых концептов ардуины, ссылки на порты, SPI, I2C и т.д. И тут либо надо тащить остальной базовый код ардуины, либо выдирать нужное из библиотек с учетом всех связей. Смысла в этом понятно нет, лучше ардуины вы не сделаете (судя по всему).

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 14:24:32

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

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

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


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

Я даже не буду спрашивать насколько криворукие создавали эту яву и почему это всех устраивает.

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 22:02:18

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

:shock:
В IDE всего-то две кнопы под управление мышом - "проверить" и "загрузка" - одна компиляция с проверкой ошибок, вторая выполняет то же самое + загрузка кода в "платформу" по протоколу бутлоадера (через СОМ порт ПК - простой или USB-COM преобразователь).
Можно конечно и через вкладки субменю - но то уж садизьмо. Другое дело когда чего-то особенного надо сделать - тогда и вкладки субменюшек пригодятся.
Насчет "сторонних способов"...
К примеру та же нанка(про-мини) помимо "стандартного" загрузчика имеет дополнительный разъём для ISP программатора.
Делаем из другой нанки "ардуиноISP" программатор (или используем какой-либо из тех, что в списках указаны) и работаем через него и ISP разъем (сама нанка подключена к ПК вместо целевой ардуинки). Мало того, данный способ позволяет и фузы одновременно с загрузчиком в "чистый" МК установить согласно выбранной платформы (инструменты - записать загрузчик).
Этот же ардуиноISP может сразу и сам скотч в платку записать (скетч - загрузить через программатор).
Только вот зачем подобный садомазохизьм? Разве что в случае самодельной платки да "занятого"под свои нужды UART МК.
Файл прошивки будет создан в случае нажатия "скетч - экспорт бинарного файла" - причем их в папке проекта будет два - с бутлоадером и без оного. Только вот фузы останутся теми, что предварительно в МК были. Чтоб соответствовали ... См. строчку выше...
Насчет "сбоев загрузки" - есть один нюанс...
Если адуринка в своем программном функционале содержит обращение к СОМ порту(монитор порта, плоттер IDE или прожку связи в ПК) то перед запуском прошивки обязательно надо включить монитор порта IDE - тогда не придется "шаманизьмом" заниматься.
Касательно ЯВУ - у ардуино для АВРок используется тот же GCC, что и в случае AVR Studio (ессно "чуток понавороченнее").
8)

Re: Ардуино проекты на своей плате.

Пт ноя 18, 2022 23:03:13

BOB51, ISP очень даже нужен. У меня вот несколько лет назад была история. Поломался прибор: сгорела какая-то древняя аврка. Заказали с экспресс-доставкой в чиподипе, но т.к. экспресс-доставка - это ждать неделю, а прибор нужен уже сегодняшней ночью, я взял две абдурины (не зря покупал, как оказалось, а до этого думал, что тупо деньги на ветер выбросил), в одну прошил ISP-программатор, а другую с его помощью прошил написанным по-быстренькому говнокодом (времени разбираться не было, поэтому даже не отлаживал особо). Благо, нужно было тупо управлять ногодрыгом несколькими шаговиками, да еще там чуть-почуть. И простой буквенный протокол по UART. Когда пришли чипы, просто прошил тем же (только со сменой настроек и фьюзов под этот МК) и заменил убитый.
Позже, когда опять сгорел чип (но уже в другой плате) я уже под STM8 написал, сделали с инженером макетки и выкинули вообще все аврки из этого прибора. Так сказать, наговняли быстрое решение. Я думал модернизировать прибор, но забил в конце-концов, т.к. все равно пришлось бы поддерживать старый убогий протокол (ведь под него уже софт понаписали), который лишил бы возможности более-менее приличный функционал реализовать.
Вот, кстати, под какой-нибудь более сложный МК, с каким я дела не имел до этого, так быстро не получилось бы. А аврка - ну ведь проще некуда! Поэтому я их и не уважаю совершенно: цена/качество уходит куда-то в бесконечность.

Re: Ардуино проекты на своей плате.

Сб ноя 19, 2022 10:29:44

Скорее адуринка с АВРками - для простых и быстрых применений без детального изучения "потрохов" МК.
Но там такой же подход и к платформам на основе других семейств.
Та же версия "DIP микросборки" для быстрого приготовления работоспособного изделия.
А ужшш когда времени побольше - можно и поглубше копануть при желании.
:beer:

Re: Ардуино проекты на своей плате.

Сб ноя 19, 2022 15:50:50

Автор, делайте так, как считаете нужным, вот почему :
"ВАМ ШАШЕЧКИ ИЛИ ЕХАТЬ?"
Если устройство работает, в чем проблема???
Приведу простой пример, некогда давно, пару-тройку веков назад, мои знакомые сидели на завалинке и смотрели на сумасбродное младшее поколение через плетень, а "подружки" - через окно.... сейчас люди делают то-же самое, смотрят на сумасбродное малолетнее поколение используя высокотехнологичное устройство(мобильный тел.), так почему-же тогда советчики, которые вам пишут об идиотизме ардуинки не советуют остальным ЗАВАЛИНКУ, ПЛЕТЕНЬ И ОКНО????
В следующий раз, когда станут докучать, приведите им этот пример.

Re: Ардуино проекты на своей плате.

Пн ноя 28, 2022 14:47:52

Интересно таки чем дело у топикстартера завершилось?
Неуж - то перестращали?...
:tea:

Re: Ардуино проекты на своей плате.

Пн ноя 28, 2022 20:19:37

Вероятно, идёт мыслительный процесс. В таких делах "торопиться нэ надо, да". Пускай не торопясь подумает и что-то решит.

Re: Ардуино проекты на своей плате.

Вт ноя 29, 2022 10:27:45

svetl1928 писал(а):брать схемотехнику ардуино, разводить ее на своей печатке и собирать проект используя ту же ардуино IDE и скетчи

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

Re: Ардуино проекты на своей плате.

Вт ноя 29, 2022 11:38:04

Опять в космос собрались запускать ? ) Может там проекты то мигалки и FM приемники, а ардуину нано проще распаять на свою плату целиком, чем по частям (ну если самому паять).

В IDE всего-то две кнопы под управление мышом - "проверить" и "загрузка"


Уже добавили "загрузить через программатор" и "экспорт бинарного файла" (создает два .hex в папке со скетчем - прошивку без загрузчкика и прошивку с загрузчиком).

Либо же более правильный вариант и сложный, каким то образом переносить код на язык С и писать по сути программу под СТМ с нуля.

Сильно утомляет переносить код с C на C ? ) Вот с меги на стм другое дело.

Например, библиотеки для экранов Adafruit используют зависимости из базовых концептов ардуины, ссылки на порты, SPI, I2C и т.д. И тут либо надо тащить остальной базовый код ардуины, либо выдирать нужное из библиотек с учетом всех связей. Смысла в этом понятно нет, лучше ардуины вы не сделаете (судя по всему).

Пару раз переписывал туда-сюда библиотеки как раз для экранчиков. По мне так это проще, чем разгребать даташит контроллера дисплея и с нуля писать, мозг почти не задействуется, можно даже набухамшись :))
Последний раз редактировалось Morroc Вт ноя 29, 2022 11:46:35, всего редактировалось 2 раз(а).
Ответить