Главный принцип Ардуинавтики- в чем?

Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25122
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Главный принцип Ардуинавтики- в чем?

Сообщение КРАМ »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4712389#p4712389"]вроде в дш не написано что непредназначена для управления рилтайм процессами[/uquote]
А в каких дш написано о том, для чего НЕ предназначен чип? :))) :))) :)))
Вообще, это будет очень прикольно читать объемный список с подобной информацией, занимающий четверть даташита...
Уош
Опытный кот
Сообщения: 700
Зарегистрирован: Вс мар 23, 2025 14:56:55

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Уош »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4712389#p4712389"]а для чего она предназначена изначально?[/uquote] Анализы из унитаза передавать, как выше выяснилось.
Аватара пользователя
AlexS4
Друг Кота
Сообщения: 6646
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Re: Главный принцип Ардуинавтики- в чем?

Сообщение AlexS4 »

КРАМ писал(а):А в каких дш написано о том, для чего НЕ предназначен чип?
ну я глянул в каких предназначен:
Applications
With low power consumption, ESP32 is an ideal choice for IoT devices in the following areas:
• Smart Home
• Industrial Automation
• Health Care
• Consumer Electronics
• Smart Agriculture
• POS Machines
• Service Robot
• Audio Devices
...
и наивно предположил что как минимум Industrial Automation и темболее Audio Devices предполагают какраз жесткий realtime :dont_know:
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Re: Главный принцип Ардуинавтики- в чем?

Сообщение roman.com »

ну вот... производитель оборудования чётко написал что он делает и для чего))
:)
AlexS4 писал(а):и наивно предположил что Industrial Automation и темболее Audio Devices предполагают какраз жесткий realtime
ничего страшного))
все мы в своё время по наивности своей так думали))
не страшно.
:))
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25122
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Главный принцип Ардуинавтики- в чем?

Сообщение КРАМ »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4712397#p4712397"]Industrial Automation и темболее Audio Devices предполагают какраз жесткий realtime :dont_know:[/uquote]
Это с какого перепуга?
Industrial Automation - это настолько широкий диапазон, что говорить о РРВ просто смешно.
Audio Devices такого типа, как правило, применяют тупо встроенные кодеки с закрытыми реализациями. Точно как и WiFi. То есть РРВ конечно есть, но он "из другой оперы". Пользователю он недоступен.
Уош
Опытный кот
Сообщения: 700
Зарегистрирован: Вс мар 23, 2025 14:56:55

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Уош »

РРВ - режим реального времени? (то ли забыл, то ли не сталкивался с аббревиатурой)
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Мурик »

roman.com писал(а):Пример простой цветомузыки...
Ничё что на картинке блютуз нарисован? :wink:
Или думаете что блютуз это интернет? :)))
roman.com писал(а):Современный унитаз уже давно подключён к интернету ))
И он постит в социалках стримы того как вы и вся ваша семья ходите в туалет... :))) :facepalm:
roman.com писал(а):Не знаю.
Когда буду писать для ESP
То есть не знаете, а рассуждаете? Покажите доки на ESP с описанием всех регистров, примерами конфигурации модулей и др. Не используя SDK, а именно непосредственно работая с железом.
roman.com писал(а):-во вторых несколько миллисекунд в любом случае требуется для шифрования (реакция и ответы на сообщения)
Какого шифрования и зачем на это время запрещать прерывания? Они мешают шифровать?
roman.com писал(а):Никто не пихает в бедную ESP кучу задач для которых она не предназначена изначально.
Вот, назначение ESP только в организации связи по WiFi, если это вообще требуется. Все остальное нужно делать на МК, подходящем под задачу.
AlexS4 писал(а):темболее Audio Devices предполагают какраз жесткий realtime
Наверное намекают что из esp можно попытаться сделать инет-радио.
Если будет глючить и заикаться, ну и ладно.
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Re: Главный принцип Ардуинавтики- в чем?

Сообщение roman.com »

[uquote="Мурик",url="/forum/viewtopic.php?p=4712461#p4712461"]
roman.com писал(а):-во вторых несколько миллисекунд в любом случае требуется для шифрования (реакция и ответы на сообщения)
Какого шифрования и зачем на это время запрещать прерывания? Они мешают шифровать?[/uquote]
вы сосем не читаете сообщения ?

тут речь идёт о "времени реакции".
время реакции - это время от момента нажатия кнопки (на пульте или тефоне) до момента вкл/выкл двигателя/лампочки (или что там у вас).
время реакции зависит в том числе и от шифрования...

но речь шла вообще о другом - о "самопроизвольных" прерываний процессора ESP.
самопроизвольные прерываний процессора ESP происходят (предположительно) в моменты приёма и передачи пакетов по Wi-Fi.
самопроизвольные прерываний процессора ESP это вредное явление и с ним надо бороться.
:tea:
скорее всего самопроизвольные прерывания процессора ESP связаны с дуратской библиотекой "Wi-Fi" для ESP.
значит надо выкинуть все дуратские библиотеки... и переходить на чистый ассемблер... где каждый так процессора известен и ничего самопроизвольно не происходит.
с этим ещё предстоит разобраться.
:tea:
Уош
Опытный кот
Сообщения: 700
Зарегистрирован: Вс мар 23, 2025 14:56:55

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Уош »

Представляю управление ЧПУ со смартфона:
- Какая сволочь позвонила?!
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25122
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Главный принцип Ардуинавтики- в чем?

Сообщение КРАМ »

[uquote="roman.com",url="/forum/viewtopic.php?p=4712503#p4712503"]надо выкинуть все дуратские библиотеки... и переходить на чистый ассемблер... где каждый так процессора известен и ничего самопроизвольно не происходит.[/uquote]
Дитятко малое... :facepalm:
Ты на ассемблере хоть что то серьезное писал?
Последний раз редактировалось КРАМ Вт май 06, 2025 22:08:26, всего редактировалось 1 раз.
jcxz
Мудрый кот
Сообщения: 1717
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: Главный принцип Ардуинавтики- в чем?

Сообщение jcxz »

[uquote="roman.com",url="/forum/viewtopic.php?p=4712386#p4712386"]Для управления двигателем нормальные люди ставят отдельный драйвер.
Который занимается только одним - управляет двигателем)) Пример - те же частотники...[/uquote]Вижу - про PMSM двигатели и векторное управление в вашем селе ещё не слыхали. :))

[uquote="roman.com",url="/forum/viewtopic.php?p=4712386#p4712386"]Никто не пихает в бедную ESP кучу задач для которых она не предназначена изначально.
:tea:[/uquote]О чём я и говорил: Простой контроллер на Cortex-M с частотой 120МГц прекрасно справляется с векторным управлением + параллельно принимая/передавая по CAN + обрабатывая поток с АЦП + ещё "кучей задач". А супер-пупер ESP32 дохренамегагерцевый и даже двухяйцевый - даже одну из таких задач не потянет. :facepalm:
Это называется: Было много шума и щенячьих восторгов, но... всё ушло в свисток. :dont_know:

Добавлено after 1 minute 36 seconds:
[uquote="AlexS4",url="/forum/viewtopic.php?p=4712389#p4712389"]а для чего она предназначена изначально?[/uquote]Для игрушек и прочих свистоперделок видимо.

Добавлено after 2 minutes 22 seconds:
[uquote="AlexS4",url="/forum/viewtopic.php?p=4712397#p4712397"]ну я глянул в каких предназначен:
• Service Robot
...
и наивно предположил что как минимум Industrial Automation и темболее Audio Devices предполагают какраз жесткий realtime :dont_know:[/uquote]Ну вот наш контроллер, управляющий PMSM-двигателем, стоит в роботе. Крутит его колёса. ESP32 уже такую задачу не потянет. Хоть и дохренамегагерцев имеет.

Добавлено after 3 minutes 43 seconds:
[uquote="roman.com",url="/forum/viewtopic.php?p=4712503#p4712503"]но речь шла вообще о другом - о "самопроизвольных" прерываний процессора ESP.[/uquote]Самопроизвольные бывают у мальчиков ночные сюрпризы в период полового созревания. У CPU такого не бывает.
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Re: Главный принцип Ардуинавтики- в чем?

Сообщение roman.com »

jcxz писал(а):супер-пупер ESP32 дохренамегагерцевый и даже двухяйцевый - даже одну из таких задач не потянет.
кто сказал что не потянет ?
то что я лично не пробовал... вовсе не означает что это невозможно.
:tea:

всё свелось к двигателям... ))
видимо на двигателях свет клином сошелся...
:)))
jcxz писал(а):Самопроизвольные бывают у мальчиков ночные сюрпризы в период полового созревания.
не знаю)) вам виднее... ))
:dont_know:
jcxz писал(а):У CPU такого не бывает.
бывает... бывает... ещё и как бывает.
:tea:
jcxz
Мудрый кот
Сообщения: 1717
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: Главный принцип Ардуинавтики- в чем?

Сообщение jcxz »

[uquote="roman.com",url="/forum/viewtopic.php?p=4712539#p4712539"]кто сказал что не потянет ?
то что я лично не пробовал... вовсе не означает что это невозможно.[/uquote]Да, уже все поняли, что вы только в унитазах разбираетесь. :facepalm:
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Re: Главный принцип Ардуинавтики- в чем?

Сообщение roman.com »

[uquote="jcxz",url="/forum/viewtopic.php?p=4712527#p4712527"]Это называется: Было много шума и щенячьих восторгов, но... всё ушло в свисток.[/uquote]
я выше сказал что вся проблема в библиотеках...
если вы не можете работать с ESP без дуратских библиотек... то это уже ваши проблемы, а не проблемы ESP.
:tea:
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Мурик »

roman.com писал(а):бывает... бывает... ещё и как бывает.
Может в ESP бывает где куча лишних закрытых библиотек, хз что делают и как работают, а в нормальном МК не бывает.
roman.com писал(а):если вы не можете работать с ESP без дуратских библиотек... то это уже ваши проблемы, а не проблемы ESP.
Где даташит/RM с подробным описанием ESP на уровне регистров? Иначе как работать с железом если нет документации?
Аватара пользователя
WatchCat
Это не хвост, это антенна
Сообщения: 1401
Зарегистрирован: Ср сен 03, 2008 21:42:17
Откуда: Ленинградская область,пос.Красный Остров

Re: Главный принцип Ардуинавтики- в чем?

Сообщение WatchCat »

[uquote="Мурик",url="/forum/viewtopic.php?p=4711253#p4711253"]кроме AVR ничего другого не видите и даже не пытаетесь изучить![/uquote]
Я как раз попытался, и именно что STM32,правда из младших. Даже одну самоделку сделал. Понял что для моих любительских задач - это из пушки по воробьям.
Вы наверное пользуетесь калькулятором вместо копа потому что калькулятор проще, а значит по вашему мнению намного лучше!
Зайдите на работе в бухгалтерию (если она больше чем из одного человека). Увидите там калькуляторы на столах рядом с компами.
Это _разные_ инструменты,они не заменяют,а дополняют друг друга. Также как симулятор из аппаратный отладчик.
Многие любители разрабатывают такие устройства что вам и не снились и они не ограниченны устаревшими AVR.
Таких любителей как раз очень не много. Это примерно как судить о радиолюбителям по публикациям в "Радио". Копнешь глубже и выясняется что этот "любитель" -
на самом деле профессиональный разработчик РЭА,просто у него хобби с работой совпадает.
Задачи могут быть самые разные. Скажем программный uart.
Аппаратный uart есть даже в avr. А так чтобы в одной самоделке надо было два уарта и оба обязательно на высокой скорости - случай очень не частый.
Впрочем, в этом случае можно использовать Atmega128 где их два аппаратных. Мне однажды полтора десятка лет назад потребовалось - надо было сделать преобразователь midi-таймкода в проприетарный протокол чтобы синхронизировать студийное оборудование с компом. Приятелю надо было - у него мини-студия была.
Midi это 31250bps, атмега вполне успевала,преобразование было простое.
WatchCat писал(а):Что же вы так боитесь DMA
Потому что он асинхронный по отношению к исполняемой программе. Из-за этого его сложно отлаживать. Первый раз я его как раз на помянутом вами 286 когда-то отлаживал.
Вы случайно не игнорируете современные компы потому что у вас уже есть 286 комп и новее не нужен, т. к. сложнее?
Я в 90х работал программистом,за деньги. Начинал как раз с 286. Сейчас без профильного высшего образования программированием деньги не заработаешь.
Мой максимум это ядерный модуль к линуксу написать. Сейчас это никому не надо, а надо уметь писать например gui на абсолютно монстрообразных вещах типа QT.
Про цветомузыку кто выше писал? Там оцифровка звука не нужна?
Так в avr есть АЦП и его возможностей для этой задачи более чем достаточно.
Надеюсь вы пониматете что для bpm-detector совершенно не нужно ни 16 битов ни 44 килогерца.
Это вообще задача уровня мигания шестью светодиодами. Просто алгоритм bpm-detector мне не знаком и надо подбирать реализацию которая будет работать в таком применении. Уверен что когда руки дойдут - подберу и сделаю. Там кстати не Фурье,а вот эта штука используется судя по тем описаниям которые мне попадались
https://en.wikipedia.org/wiki/Comb_filter
Математика попроще чем Фурье,но тоже достаточно зубодробительная. И даже не факт что оно там надо если требуется просто переключение узоров "в такт" ритму,
а не точное вычисление bpm в цифрах,как например для всякого диджейства надо.
Может быть сойдет простой ФНЧ и адаптивный пиковый детектор (чтобы от громкости не очень зависело - в разных треках она может отличаться даже заметно на слух)
WatchCat писал(а):Нужно по максимуму использовать периферию перекладывая работу на нее, а не на проц.
В AVR это сложно из-за скудной периферии, а в STM32 возможно.
А смысл перекладывать если в STM32,во всяком случае в том что у меня был, максимальная частота 72 МГц была если правильно помню. Вот на относительно медленном avr это действительно полезно,да.
Аппаратные обычно проще в написании, стабильнее в работе и не сложнее в отладке.
Ну да, особенно что-нибудь асинхронное по отношению к основной программе и при отсутствии хорошего симулятора где это асинхронное можно буквально по одному такту исполнять(vmlab - такое может).
Если процессорное ядро аппаратно поддерживает плавающую точку (имеет соответствующие инструкции) и вычисления производятся относительно быстро, то почему не использовать? Ваши учебники устарели, обновите их.
Интеловские процы имеют соответствующие инструкции во встроенном виде с 90х годов,однако тем не менее рекомендуется плавающей точки избегать если есть возможность написать алгоритм в целый числах. Применительно к нашей радиолюбительской тематике - лучше считать в милливольтах,а не в вольтах с сотыми долями. То есть будет фактически тип с фиксированной подразумеваемой точкой которого нет в Си но есть например в Ada(писал на ней,хотя и немного).
При использовании плавающих чисел даже простое сравнение с константой может выкидывать странные фокусы из-за особенноей двоичного представления таких чисел. Напишешь так if (v == 4.5) а оно возьмет и не сработает потому что при вычислениях в переменной v может образоваться значение с хвостом типа 4.5000000ХХХХ где на месте иксов достаточно произвольные цифры,причем зависящие от предидущих действий с этой переменной и от входных данных. Чтобы всегда сработало - надо из v вычесть эти 4.5 и проверить что результат получился меньше некоторой малой (для данного случая) дельты. Если значения могут быть отрицательными то использовать модуль. А еще совершенно обычные числа в десятичной системе легко могут оказаться периодической дробью в двоичном виде.
И нет, в популярных книжках-самоучителях об этом обычно не пишут и особенности двоичного представления чисел на разных процессорных архитектурах не рассматривают,как и тонкости процессорной арифметики.
Не нужно боятся сложностей. Получится, хорошо, не получится - вы пытались.
Ну да, сначала создать себе трудности,потом героически их преодолеть. Комсомольский подход какой-то - я успел застать эту идеологию.
А если боятся и не попробовать, то тогда точно не получится!
Вообще рекомендуется выбирать инструмент под задачу. И я просто не могу придумать задачу где не хватило бы avr. А начальства которое придумывает задачи - надо мной нет так как уже полтора десятка лет не работаю по найму(есть небольшой пассивный доход).

Добавлено after 6 minutes 25 seconds:
[uquote="OKF",url="/forum/viewtopic.php?p=4711142#p4711142"]Офигеть! Мужики, ну КАК можно СТОЛЬКО писать![/uquote]
Для владеющего слепым набором в темпе примерно как неспешная беседа - это не сложно.
Видимо вы в IRC не сидели и не обсуждали что-нибудь достаточно сложное.
Там обычный темп разговора, но через клавиатуру, и за вечер существенно больше получается.
Да кто это будет читать? Та не в жизнь.)
Это форум,а не личная переписка. Всё читать вас никто и не заставляет.

Добавлено after 16 minutes 15 seconds:
[uquote="jcxz",url="/forum/viewtopic.php?p=4712124#p4712124"]некоторые рукамиводители уже хотят ставить ESP32 куда попало[/uquote]
А ардуино УЖЕ ставят. К счастью пока во всякие не особенно ответственные вещи. Читал например описание пульта управления каким-то грузовым лифтом(без права нахождения людей внутри). Подъемник этот производился и продавался как законченное изделие (в комплекте с услугами по монтажу).

Добавлено after 8 minutes 29 seconds:
[uquote="roman.com",url="/forum/viewtopic.php?p=4712176#p4712176"]Если я буду делать цветомузыку... то с управлением по телефону.[/uquote]
Вам так критично сэкономить на удобных физических кнопках и крутилках что вы готовы мириться с неудобным управлением через сенсорный экран?
К тому же чтобы что-то переключить придется каждый раз искать где лежит телефон и подключать его к цветомузыке. Причем для подключения по wifi кнопок надо
нажать больше чем просто провод воткнуть.
Мурик писал(а):Закрытый SDK - огромнейший минус
Ну и не очень прям уж надо разбираться что там внутри
Если задача сделать устройство,продать и наплевать на пользователей (как это часто делают китайцы) - то да,можно не разбираться.
А если делается для себя то во внутренностях разбираться приходится при использовании любого чужого кода на любом контроллере.

Добавлено after 17 minutes 6 seconds:
[uquote="roman.com",url="/forum/viewtopic.php?p=4712313#p4712313"]Как управлять МК ?
Проще всего по интернету...[/uquote]
Физическими кнопками и крутилками.
Обновление прошивки (если надо) - через последовательный порт.
Пример простой цветомузыки...
У меня есть в наличии такая же или малоотличимо похожая цветомузыка.
Так вот пультом там управляется ... встроенный mp3 плейер! Это отдельная плата внутри,
я его вытащил и использовал отдельно в своей самоделке. По качеству звука -
на уровне переносной магнитолы.
Собственно "цветомузыка" это несколько весьма ярких светодиодов и моторчик который двигает
плату с ними чтобы пятна света перемещались. Есть еще микрофон так как по замыслу производителя
светодиоды должны были переключаться в такт ритму. Но работает это крайне плохо из-за сильной зависимости
от общего уровня громкости. Собственно после появления у меня этой цветомузыки и ознакомления с ее работой
у меня и возникла идея переделать старую советскую цветомузыку на "мигание в такт".
- цветомузыкой можно управлять с пульта.
- цветомузыкой можно управлять с телефона (по интернету).
Мне удобней второй вариант.
Удобство - штука субъективная. Мне вот удобнее наличие кнопок и крутилок на самой цветомузыке(а также и на усилителе,эквалайзере).
-во первых несколько миллисекунд никак не влияет на работу двигателя.
Смотря какого. К примеру прыгающий на несколько миллисекунд момент зажигания в высокооборотном ДВС это не есть хорошо.
Также и длительность открытия форсунок,дозирующих топливо.
Хотя вот как раз тут-то беспроводное соединение могло бы быть полезно - например для "общения" компа с блоком управления
двигателем в картинге прямо на ходу - для получения логов и настройки. У них обычно трасса на небольшой площади, дальности wifi
должно бы хватать.

Добавлено after 18 minutes 33 seconds:
[uquote="КРАМ",url="/forum/viewtopic.php?p=4712514#p4712514"]Ты на ассемблере хоть что то серьезное писал?[/uquote]

Я на ассемблере писал. Много. Под х86 в начале 90х. А в середине нулевых видел устройство где ассемблерным кодом было занято примерно половина памяти Атмеги128. Когда писавший это уволился и уехал из РФ, мне пришлось пару месяцев это поддерживать пока настоящего программиста наняли. Я там так, совместителем был и официально в штат не хотел. И я понимаю ваш неявный намек на то,что большие объемы кода надо всё-таки на ЯВУ писать. Но если при этом используется чужой код - он строго обязательно должен быть в исходниках чтобы можно было взять только нужное и была возможность отладки этого взятого,нормальной,на уровне исходника. Вот были бы доступны исходники той библиотеки от ESP - мы бы посмотрели что там прерывания запрещает и переписали. А так желающим использовать ESP придется с нуля всю библиотеку писать. Собственно, для STM32 примерно так и сделали - https://github.com/libopencm3/libopencm3
Но там проще было потому что значительная часть исходников от производителя была доступна.

Добавлено after 8 minutes 28 seconds:
[uquote="Мурик",url="/forum/viewtopic.php?p=4712556#p4712556"]Иначе как работать с железом если нет документации?[/uquote]
Дизассемблировать библиотеку и разбираться. Как это со всеми закрытыми девайсами и делают аж с начала 90х.
Значительная часть например линуксовых драйверов так и написана. В том числе даже драйверы видеокарт были такими пока из Нвидии большие куски исходников не утекли несколько лет назад. А под многие видеоускорители, встроенные в планшетно-телефонные процы, и сейчас так.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25122
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Главный принцип Ардуинавтики- в чем?

Сообщение КРАМ »

[uquote="WatchCat",url="/forum/viewtopic.php?p=4712587#p4712587"]Понял что для моих любительских задач - это из пушки по воробьям.[/uquote]
Любой МК для простых задач - это "из пушки по воробьям". Однако заметно экономичнее в смысле материальных затрат.
Или вы тщательно выбираете размер флеша и ОЗУ, чтобы ни единого байта не пропало в залпе по воробьям?
ARMы в самом простом исполнении кратно дешевле AVR. И понятно почему.
Так в чем прикол платить больше? Может проблема просто в лени?
[uquote="WatchCat",url="/forum/viewtopic.php?p=4712587#p4712587"]
Что же вы так боитесь DMA
Потому что он асинхронный по отношению к исполняемой программе. Из-за этого его сложно отлаживать.[/uquote]
Это чушь. С таким же успехом можно утверждать, что асинхронные ШИМ и УАРТ "сложно отлаживать" и потому их надо кодить ногодрыгом.
Кстати, сам код в части прерываний асинхронен самому себе. Вы шарахаетесь и от прерываний? :music: :music: :music:
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15543
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Главный принцип Ардуинавтики- в чем?

Сообщение BOB51 »

Ядрена энергия выделяемая в спорах "о первенстве курицы и яйца"...
Эту энергию, да на благие цели!...
8)
:beer:
jcxz
Мудрый кот
Сообщения: 1717
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: Главный принцип Ардуинавтики- в чем?

Сообщение jcxz »

[uquote="roman.com",url="/forum/viewtopic.php?p=4712545#p4712545"]я выше сказал что вся проблема в библиотеках...
если вы не можете работать с ESP без дуратских библиотек... то это уже ваши проблемы, а не проблемы ESP.
:tea:[/uquote]А разве в ESP32 возможно запустить что-то беспроводное без этих "дурацких библиотек"?
Можете привести пример - как запустить хотя-бы WiFi, хотя-бы его нижний уровень, чисто на регистрах? Чтобы без библиотек?
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Главный принцип Ардуинавтики- в чем?

Сообщение Мурик »

WatchCat писал(а):Я как раз попытался, и именно что STM32,правда из младших. Даже одну самоделку сделал. Понял что для моих любительских задач - это из пушки по воробьям.
Наверное ваши задачи не сложнее "помигать светодиодом".
WatchCat писал(а):Аппаратный uart есть даже в avr.
Обычно только один. А если нужно больше? Или если это ардуина и uart занят микрухой USB-UART?
Короче это в STM32 их бывает несколько да в простых и дешевых моделях, а в AVR один и он обычно занят.
WatchCat писал(а):А так чтобы в одной самоделке надо было два уарта и оба обязательно на высокой скорости - случай очень не частый.
Дело не в скорости, а во времени обработки остальных прерываний. Если оно длительное, можно пропустить внешне прерывание от программного uart.
Или это, в AVR не густо с USB и прикручивают программный, а там скорость потока 1.5 мб/с! Любое другое прерывание может помешать программному USB.
WatchCat писал(а):Впрочем, в этом случае можно использовать Atmega128 где их два аппаратных.
А лучше дешевый STM32F103C8T6 на blue pill плате. Там 3 аппаратных UART. И аппаратный USB есть.
WatchCat писал(а):Потому что он асинхронный по отношению к исполняемой программе.
Прерывания тоже асинхронны. Тоже их боитесь и избегаете?
WatchCat писал(а):Из-за этого его сложно отлаживать.
Нет сложностей в отладке DMA. Вы на STM32 пробовали с ним работать?
WatchCat писал(а):Первый раз я его как раз на помянутом вами 286 когда-то отлаживал.
Не думали что DMA могут отличаться в компе и МК?
WatchCat писал(а):А смысл перекладывать если в STM32,во всяком случае в том что у меня был, максимальная частота 72 МГц была если правильно помню.
Потому что проц не для того что можно сделать аппаратно периферией. Проц выполняет вычисление, настраивает периферию и дальше забирает из нее данные. Заниматься ногодрыгом или периодически пинать АПЦ и забирать каждый байт это дело излишнее, когда это может делать периферия.
WatchCat писал(а):Ну да, особенно что-нибудь асинхронное по отношению к основной программе
Как я уже написал, все прерывания асинхронны по отношению к основной программе. Вы их всячески избегаете? DMA такой же асинхронный как прерывания.
WatchCat писал(а):и при отсутствии хорошего симулятора где это асинхронное можно буквально по одному такту исполнять
Зачем по такту? Что вам это даст?
Отладчик может останавливать не только проц, но и периферию, DMA в частности.
WatchCat писал(а):Напишешь так if (v == 4.5)
Так пишу только самые неопытные и недавно начавшие программировать. Плавающая точка для вычислений, а не для точных сравнений.
WatchCat писал(а):Вообще рекомендуется выбирать инструмент под задачу.
Верно. Не нужно использовать AVR везде даже там где он не подходит под задачу.
WatchCat писал(а):Дизассемблировать библиотеку и разбираться.
Там много кода. Придется 10 лет или даже больше потратить чтобы разобраться в нем.
Попробуйте дизассемблировать весь SDK и посмотреть какой получится объем.
Думаете оно того стоит?
Ответить

Вернуться в «Arduino»