• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Делюсь опытом Power Profiler на рельсах AdHoc protocol

pvvx

Активный участник сообщества
Вот второе я и сделал, итоги написал выше, скачивать и изучать подробно желания вообще не возникло, исходя из увиденного...
cheblin не понимает или не знает основных языков программирования, по этому у него и возникают непонятки в том, что описать структуру в CИ/С++ проще и быстрее и меньше ошибок, чем установить пакеты с SDK/DDK Java.
При переносе текста структуры в другие языки бывают проблемы. Особенно это связанно с любимыми языками cheblin-а, но они не применяются в MCU или малых SoC.
Там везде подходит и проще описание пакетов в виде структуры на СИ.
 

pvvx

Активный участник сообщества
Посмотреть вложение 8742

не жалуюсь. это у юзернейма не влазит.
Тогда мое предположение верно - вы не знаете или плохо читаете Си и C++.
От туда же и позыв сделать авто-генерацию кода.

PS: у меня всё всегда путается с языками - за жизнь их было много. По этому пытаюсь писать как проще, да и я не программист.
 

A_D

Active member
Посмотреть вложение 8742

не жалуюсь. это у юзернейма не влазит.
гитхаб хоть иногда открывайте в браузере...
upload_2020-1-28_22-0-39.png



upload_2020-1-28_22-0-57.png

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

pvvx

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

cheblin

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

а я кстати ваш проектик сдул, а там HAL и это хорошо. после исходников оригинального Power Profiler, от которого у меня ничего не осталось, тоже перекатываюсь на HAL.
нужно было с самого начала лепить на HAL ибо, его можно любить или ненавидеть, но с ним знакомы ВСЕ.

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

почитайте описание моего какбы-проекта в части псевдо ассемблерных инструкций, которые выполняет контроллер. получается универсальная машина, которой пофиг, что там за устройства на I2C шине и сколько их там.

и ещё один очевидный момент. слишком маленькие пакеты
upload_2020-1-29_9-53-14.png
одиночное измерение от АЦП малоинформативно ибо часто случаюмся выбросы, мусор, который удаётся отбросить только имея массив измерений

для чего передавать timestamp в пакете совсем не понятно. короче будет интересно обсудить.

особенно интересно как, имея перед глазами исходный Power Profiler, каждый сделал свои выводы
 

pvvx

Активный участник сообщества
длинная непонятная строка, не влезающая даже в гитхабовский вьюер.
Курсор на неё и в конец строки... :) Окно двигается - туда и обратно :)
Про монитор с 4k вам говорить бесполезно, т.к. вы заняты разводкой плат и там без максимального кол-ва точек на экране делать нечего...
 

pvvx

Активный участник сообщества
а там HAL и это хорошо. после исходников оригинального Power Profiler, от которого у меня ничего не осталось, тоже перекатываюсь на HAL.
нужно было с самого начала лепить на HAL ибо, его можно любить или ненавидеть, но с ним знакомы ВСЕ.
Ха - тут вы сильно промахнулись, т.е. облажались в очередной раз.
Во первых HAL у всех вариантов даже STM отличается и нет того, кто его знает -> c ним знакомы ВСЕ - это ваш очередной бред по незнанию.
Во вторых, в оригинальном Power Profiler HAL остался и нет ни одной работы непосредственно с регистрами данного MCU.
И в третьих: основной цикл крутится в своем отдельном треде мультизадачки. Только название у него "mаin()" :p
Это всё и не дает возможности осилить поток более чем с INA219.
 

cheblin

Member
моя текущая активность на данном подсайте преследует несколько целей
  1. обнаружение улучшений которые можно сделать:
    это уже произошло и происходит
  2. нахождение путей наиболее эффективного донесения идей AdHoc:
    вплетение сгенерёного кода AdHoc в код, сгенерённый HAL- ом - отличный метод быть легко понятым
и как результат упрощение жизни многим пользователям AdHoc.
устранение, хоть в небольшой части, скучной, нудной, ненужной рутины из их програмисткой жизни
 

pvvx

Активный участник сообщества
моя текущая активность на данном подсайте преследует несколько целей
  1. обнаружение улучшений которые можно сделать:
    это уже произошло и происходит
  2. нахождение путей наиболее эффективного донесения идей AdHoc:
    вплетение сгенерёного кода AdHoc в код, сгенерённый HAL- ом - отличный метод быть легко понятым
и как результат упрощение жизни многим пользователям AdHoc.
Прочитайте где нить что такое HAL. А то по ходу вы его с чем-то другим путаете.
устранение, хоть в небольшой части, скучной, нудной, ненужной рутины из их програмисткой жизни
Дык уже выяснили, что программисту на MCU/малые SoC приходится оперировать CИ или C++ и в них описать структуру пакета быстрее и понятнее, чем изучать java и изучать какие надо поставить пакеты и будет ли это совместимо со средой разработки.
А опыт гласит - к примеру если программируем на камнях GSM от ведущих брендов, то там обычно строгая версия java и не дай бог её сбить на рабочем компе...
Как это обойти с помощью других вещей - известно, но не у всех на работе есть возможности получить для этого необходимое железо в компе :p
 

cheblin

Member
чем изучать java и изучать какие
....эта песня хороша начинай сначала

ку-ку, у тебя перед глазами сгенерёный код где ты там java увидел, пальцем покажи.
время пошло!

описать структуру пакета быстрее и понятнее, чем
поциент знает/слышал что нибудь про Endianness ? а строки поциент как передавать в структурах собирается?

жду. время пошло!
 

pvvx

Активный участник сообщества
....эта песня хороша начинай сначала

ку-ку, у тебя перед глазами сгенерёный код где ты там java увидел, пальцем покажи.
время пошло!


поциент знает/слышал что нибудь про Endianness ? а строки поциент как передавать в структурах собирается?

жду. время пошло!
pvvx/STM32INA2xxPowerProfiler
 

pvvx

Активный участник сообщества
поциент знает/слышал что нибудь про Endianness ?
Ага - значит дело имеем с троллем. А говорил что AdHoc пишет, помочь....
Какой индеец в IP пакетах?
ку-ку, у тебя перед глазами сгенерёный код где ты там java увидел, пальцем покажи.
время пошло!
Дык там код высосанный из пальца, а не сгенерированный! :p
 

cheblin

Member
что ты суёшь это позорище, на камне с другой Endian тебе придётся ещё и клиента тотально переписать. .. красава чо!

и строки, строки как передавать будешь? не томи.
 

pvvx

Активный участник сообщества
что ты суёшь это позорище, на камне с другой Endian тебе придётся ещё и клиента тотально переписать. .. красава чо!

и строки, строки как передавать будешь? не томи.
Структура позволяет передать и строки и индейцев перевести в резервацию.
А вот это не позволяет:
На данный момент генератор кода AdHoc построен как SaaS . Чтобы получить сгенерированный (и протестированный) код, необходимо: установите JDK 8, пожалуйста, убедитесь, что javac(компилятор Java) находится в PATH и доступен из консоли. установить любую JAVA IDE ( Intellij IDEA - просто отлично)
 

pvvx

Активный участник сообщества
Вам ещё как маленькому надо объяснять зачем timestamp или подобное?
Если проц перегружен, пусть по причине неувязок в USB - там это бывает - плохо согласовано, система компа тормозит, кабель китайский ..., то часть отсылаемых пакетов будет потеряна. timestamp дает возможность отметить пустые позиции на графике.
 

pvvx

Активный участник сообщества
в заголовках IP пакетах big endian, а вот в содержимом, в том что пакет передаёт ХЗ!

только стоп, а причём тут IP и приведёный выше как пример PowerProfiler ? м?
А при том:
А как вы догадались что в заголовке "big endian"?
 

pvvx

Активный участник сообщества
тебе чё 200 мегабайт влом скачать? тебе сказать сколько кайло весит? и сколько оно с собой
Оно снесет работу с камнем GSM. Мне это не грозит - у меня обычно в компе последний камень и RAM в предел мамки и поставить виртуалки не в лом .
Для обычных программистов (российских, работающих на дядю) это грозит вторым компом.
 
Сверху Снизу