Перейти к содержанию
    

AlekErm

Участник
  • Постов

    38
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные AlekErm


  1. 4 минуты назад, Serhiy_UA сказал:

    Ваша задача с проблемой уровней, вопросами синхронизации потоков и парсинга хорошо ложится на возможности FPGA (хотя советы других тоже работают). В FPGA доступны уровни 1.5, 1.8, 2.5 и 3.3В, а также софт-процессоры, например Nios-II, ну и много ОЗУ с большим числом UART. Придется конечно программировать на С/С++, а также освоить один из HDL (рекомендую verilog). Вам это может оказаться по силам, судя по обсуждению. Начните со статьи "Технология FPGA для тысяч применений"  https://habr.com/ru/post/505838/ 

    Спасибо большое, обязательно ознакомлюсь с этой темой! C++ тоже буду подтягивать :ok:

  2. 7 минут назад, AlexandrY сказал:

    Если любите скрипты, то вот 17-е место в списке критично важного софта на С-и от Гугла - https://github.com/RIOT-OS/RIOT
    В проекте поддерживаются Basic, LUA, Python, JS ... Эт что прям в глаза там бросается. Может и ява есть. Прикольная свалка

    Я не говорил про скрипты, что я совсем дурак что ли не понимаю различий.

    JAVA — объектно-ориентированный язык программирования, а JavaScript — объектно-ориентированный язык сценариев.

  3. 20 минут назад, Quasar сказал:

    Java, так же как и C++ это язык, который используется в хреновой туче разных мест (от телефончиков на андройде до банковских серверов).

    Я Java использую много, для написания прикладного софта на ПК. Обычно, этот софт работает с какими-то моими или чужими железками и GUI. Какие-то вещи из этой бредятины, я использую регулярно, например ексепшены (исключения), ключевые слова для синхронизации и блокировок, синтаксис для итераций по коллекциям и замыкания, реализованные в Java с помощью лямба-выражений, но это совершенно не значит, что нельзя было бы написать тот же софт не используя все это (или вообще на другом языке). Но, та же рефлексия с интроспекцией могут быть зачем-то нужны разработчикам библиотек, потому что им так удобнее, и мне совершенно не хочется их учить работать и лезть в их сложности, утверждениями о бредятине или ненужности того или иного механизма.

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

     

    По поводу автора, у меня крутится в голове только следующая цитата Булгакова:

     

     

    Мне совершенно пофиг что вы обо мне думаете, но я уже получил все ответы. Главное что многие другие высказали много полезной информации. Я же говорю не бредятину, а подстегиваю народ подумать поразмыслить высказаться. Кто то нормально рассуждает, а кто то до личностей сваливается :)

    Господа, заканчивайте перемывание косточек, я уже понял ваше объяснение, что реализацию приема данных нужно делать на низшем уровне единственным проверенным инструментом, а работу с самими данными делать уже как мне хочется и каким хочется языком на ПК. Просто я давно не работал с мк и посмотрев на них, предположил что мощности современных мк достаточно чтобы объединить эти две задачи.

  4. 44 минуты назад, MrBearManul сказал:

    В 10-й раз: возьмите одноплатник с линуксом, виндовсом или иной ОС, и летайте. Зачем вы сами опускаетесь до уровня закрылков (не закрылок) и дросселя подачи топлива, и пытаетесь туда превнести излишнюю автоматизацию? Ну или другими словами: зачем вы тащите свой мир с ПК на микроконтроллеры, которые предназначены совершенно для иных целей. Ага, давайте на микроконтроллер, который ставится в счётчик электроэнергии, внесём мир Java.

    Это я сделаю, но позже, там ещё дофига чего придется делать на одноплатнике! Сейчас же мне нужно провести оценку потока данных, реализовать это я хочу на 401м

  5. 13 минут назад, Quasar сказал:

    Я не перестаю удивляться местной аудитории. Приходит некий товарищ, который задает безграмотный вопрос, не понимая, чем среда разработки отличается от среды исполнения, попутно утверждая, что все местные занимаются чем-то "ниже плинтуса", и вообще все делают не так. И куча народу его начинает в чем-то убеждать...

    Разговор на уровне: "что за дебилы сделали столько кнопочек и рычажков в Airbus A320? Я хАчу чтобы он просто летел куда мне надо, я не хочу заморачиваться всеми этими руководствами по летной эксплуатации и прочим гЭ. в котором ковыряются современные дураки пилоты...".

     

    Ну вот, я же говорю :biggrin:

    Если вы пришли сюда обсуждать только личности, то проходите пожалуйста мимо. Я уже сто раз объяснил что хочу. Давайте на вашем языке аналогий. Да, я хочу лететь, а не менять вручную углы наклона закрылок и открывать дроссели подачи топлива, все это уровнем ниже делает автоматика, на современных самолётах! А если хотите управлять ИЛ-2 например, или кукурузником, то пожалуйста, дергайте нужные тросы как вам заблагорассудится! Вопрос был в том, чтобы как можно меньше было акцента и траты времени на нижнем уровне! Вот вы когда едете в машине, вы прям так и представляете себе что сейчас когда нажмёте педаль газа как начнет приоткрываться клапан подачи топлива, воздушные заслонки и все другие механизмы? Вы просто увеличиваете Скорость движения Автомобиля и едете к цели, оценивая дорожную обстановку и сигналы навигатора, но никак не думаете о передаче сигнала по проводам от педали газа в бортовой комп, который далее собирает информацию с кучи датчиков и на ее основе корректно управляет работой мотора! Все это вы будете изучать потом, когда где то что то разладится, застучит загремит! Вот так по аналогии и с данной темой.

  6. 39 минут назад, MrBearManul сказал:

    Давайте я встану на вашу сторону. И вот вам задачка: берём это и это. Читайте внимательно описание обоих микроконтроллеров. Обратите внимание, что в первом случае у вас фактически два микроконтроллера разного уровня сложности. Как предполагаете упростить программирование? Что общего между этими двумя представителями? Каким образом вы избавите от "плинтуса" человеческое общество? Как собираетесь систематизировать "низы/плинтусы"? Как предлагаете избавиться от махания кочергой и гаечным ключом, о чём вы тут нам толкуете уже не первую страницу?

    На уровне абстракций, переходящих ниже на уровень драйверов. Ведь протокол ModBus, CAN, стек TCP/IP, это всё остаётся общим на верхнем уровне для любого контроллера. Ну так и написать библиотеки драйвера под каждое железо. Просто начать создавать коллекцию на общем ресурсе. Хотя сейчас все это и раскидано хрен знает где по форумам, но времени на поиски тратится дофига и больше! Да, от специфики это не спасет, но часто повторяющие реализации будут уже в одном месте лежать. Я не знаю, может я пытаюсь очередное Ардуино изобрести, вот и скажите мне где тут подводные камни, которые вообще не дадут сделать подобное решение.

  7. 10 минут назад, mantech сказал:

    Нет, это уже ИИ, причем очень навороченный, поэтому такого еще нет...

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

    Я и говорю про компиляцию java в IDE, а не на таргете!

  8. 7 минут назад, mantech сказал:

    Тогда не разменивайтесь на мелочи, вот вам идея для стартапа - система автоматического программирования!

    Для "написания" программы нужен только телефон или планшет с подключением к устройству, подключаем, пишем текстом: 1) при таком-то условии, нужно включить то-то

    2) когда что-то произошло, делаем так, если... то... и т.п.  

    3) и так далее, все свои хотелки)))

    Если осилите, то одним махом ликвидируете нас, кодеров, как класс, ибо каждая домохозяйка сможет изменить или переделать программу в своем телике, телефоне, да хоть в микроволновке.

    Зачем? У вас меняется код при каждом запуске программы? Представьте, сколько ресурсов отъест компилятор, плюс буфер кода и пр... 

    Это уже Arduino ))

    Я говорю про компиляцию java программы, сразу всей

  9. 2 минуты назад, mantech сказал:

    Очень сомневаюсь, ибо с виртуалками и байткодовыми интерпретаторами "на ты". Представьте, сколько машинного времени уйдет на парсинг и компиляцию текстового исходника, хоть на яве, хоть на Сях, и сравните с байткодом из того же .jar-файла, где все это уже сделано. Единственный вариант, это когда этот исходник сразу весь компилится в тот-же байт-код, записывается в буфер и потом исполняется уже он, а не исходник, но это уже не JIT в "чистом виде", а просто предкомпиляция...

    Вот это по идее и нужно

  10. 4 часа назад, MrBearManul сказал:

    У вас тут уже не первый раз намёки, что для вас все всё должны сделать. А что же будете делать вы? Пожинать плоды? Хитрый, однако.

    Я говорю глобально, а не только для себя. Наверняка я не первый кто задавался таким вопросом. Я то и так все без вас сделаю, это я уже понял давно :blum3:

    А намеки у меня на всеобщее объединение. Глядишь и прогресс быстрее пойдёт.

  11. 12 минут назад, Arlleex сказал:

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

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

    Коллеги, всем спасибо за консультацию, больше не смею вас отвлекать! :ok:

    Я в принципе ожидал подобных разговоров, так что не удивлен. Никто не хочет просто так объединять ресурсы, все коммерциализировано. Дальше могло быть много букафф высказывания мнений, но уже не по технической части данной темы, так что ограничимся :bye:

  12. Я могу написать что угодно и на чем угодно, вопрос времени.

    Здесь же я спрашивал не на чем это написать, а есть ли тот инструмент который мне хочется.

    И понял, что мамонта по прежнему убивают палкой и камнями.

  13. 48 минут назад, Arlleex сказал:

    За время, которое Вы потратили на пустые разговоры на ровном месте, можно было уже в машинных кодах написать ПО к Вашей приблуде:crazy:

    Лучше сначала запастись оружием и патронами, чем потом шапкой отбиваться.

  14. Наверное пора заканчивать эту тему. Либо меня не понимают, либо я плохо пытаюсь донести мысль.

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

    Мне нужно чтобы я, написав программу на java, пусть на java подобном языке, в удобном для этого IDE, прогнал бы ее через компилятор и получил бы результат не хуже или близко, как и написанный на C и годный для работы в МК. Я понимаю что прямая java в реалтайме это большой вред, но потеря времени для меня ещё больший вред.

    Я так же прекрасно понимаю эту мудрость Всякой Работе Свой Инструмент, не надо в это меня многократно тыкать. Я уважаю ваш нелегкий труд, так уважайте и мой - попробуйте ка на вашем мк поработать с большими массивами данных, с big data, всякая работа хороша, выбирай на вкус. Я всего лишь хочу подружить наши уровни, а не как собаки из-за забора перебрехиваться.

  15. 2 минуты назад, jcxz сказал:

    печалька.... :cray: Но скажу по-секрету: у нас "нормальное" давно уже есть, а если его нету у вас - то это ваши проблемы. :unknw:

    И что же у вас есть нормальное, когда каждый как ни выскажется, все хает. Если вы имеете ввиду закрытую оборонку, то может быть.

  16. 2 минуты назад, jcxz сказал:

    Когда хоть немного изучите это самое железо, увидите насколько оно разнообразно.

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

    Для профи нормальный язык это - си/си++, поэтому ни на какие явы/васики/и_компания они и не обращают внимание.

    А для чайников, такая задача непосильна. :unknw:

    Так и ехайте. Если уж так хочется явы, то МК на котором оно работало и работает уже назван в этой теме. Изучайте и вперёд.

    Так может всё-таки - не ваше оно? За несколько дней можно много чего успеть сделать. Ну это конечно если не пытаться искать в инете готовые "либы", а читать мануалы и разбираться в теме... :unknw:

    Я имел ввиду создать нормальные проверенные библиотеки под периферию, под каждый мк.

    Профи канеш если себя не похвалят, то кто еще ))))

    Да, может и чайник в некоторых вещах, иначе бы сюда не писал

    Мне хочется нормальный высокоуровневый язык, а не копание в байтах! Потому что задачи есть не только в работе с периферией, а в обработке информации.

  17. 1 минуту назад, AlexandrY сказал:

    Вообще-то тут собрались представители разных течений, если вы не поняли. 
    Есть здесь и "ковыряльщики", как я их называю. Вспомните кто тут вам советовал ассемблер. Есть "самописцы", которые все сами. 
    Есть "перфекционисты" которые будут долбить до самозабвения на плюсах оболочки к GPIO и UART-у, шобы код их стал чистый как слеза младенца. 
    Я же всегда агитирую за "платформы", что бы это ни значило. 
    Но на яве достойных платформ нет, вот и все. Что тут еще сказать.   

    Дак надо создавать платформу! Но опять же все будет как и 10 лет назад - погремит тут каждый своим ведром и разойдутся, все что обсуждали тут можно будет просто сжечь....

    Главное что в России то платформ вообще не создается, мы ж не создаем софт, мы им только пользуемся!

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

    Сколько лет уж я наблюдаю это и всегда находятся ярые защитники низкоуровнего программирования. И вот сидят они годами разрабатывают одну железку, аппелируя к особенностям железки, вместо того чтобы систематизировать все изобретенные "велосипеды" и просто спокойно складывать "стеночку" софта для железки. Вы посмотрите насколько выросли возможности железа, а вы все ковыряете порты каждый раз с нуля, похоже вам это просто доставляет удовольствие.

    Лично мне нужно "ехать", а не "шашечки"!

    Заранее прошу прощения за дерзость, но накипело, за несколько дней поиска хоть чего то толкового!

  19. 1 час назад, MrBearManul сказал:

    Ну наймите же уже толкогового специалиста, заплатите ему деньги. Их всё равно платить придётся.

     

    З.Ы. Вам уже ни один раз правильно сказали: мир встраиваемых систем это вам не мир ПК. На ПК вам доступны, по сути, безграничные ресурсы. Всё самое сложное (операционная система, драйвера, материнская плата) за вас уже сделаны. Вам остаётся взять только вашу яву или qt и начать ваять ПО. Не всегда, кстати, оптимальное по использованию этих ресурсов. Но ведь их много, и стоят они копейки. Вот и выходит, что программа, выводящая окно и кнопку весит под 8 (восемь) мегабайт сразу под Qt. Ну да ладно, не в этом суть. Суть в том, что на микроконтроллере вам придётся делать это всё самому. И не забывайте о железе. Отладочные платы не всегда подходят для установки в конечное устройство. Как правило, они нуждаются в доработке, ну хотя бы нужно обеспечить питание, защиту от статики, помех. Кто это всё сделает вам? А из-за неправильно подобранного железа вы иногда можете ловить программные ошибки, природу которых выяснить будет весьма трудоёмко без специальных знаний. Подумайте об этом.

    И сколько стоит нынче такой специалист? Применительно к моей задаче

  20. 19 минут назад, AlexandrY сказал:

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

    Этот черный ящик (он на STM реализован) вероятно все равно придется программировать, так что я начал изучение STM с простой, но заодно нужной мне функции работы с USART

  21. 4 минуты назад, mantech сказал:

    Не понял, почему в СТМ-то все уперлось, чем мелкий одноплатник на линукс-андроид не угодил?

    И такое тоже будет. Пока мне нужно данные отловить, понять, стоит ли ввязываться.

  22. 8 минут назад, AlexandrY сказал:

    Реверс протоколов удобнее всего делать на PC.
    Я бы подключился прямо к компьютеру через UART-USB адаптер, и анализировал бы в Simulink.
    Лучшей среды для парсинга неизвестно чего не найти.  

    А вот именно этого мне и не удалось сделать, тот переходник что у меня имеется хоть и можно разогнать до таких скоростей, но по логическим уровням он не проходит, поскольку черный ящик выдает 1.8В логические уровни. А переходнику выше 2В надо. Пробовал логический согласователь, но не поехал он почему то, сильно искажает сигнал. В итоге я решил что два МК одного семейства вполне сдружатся по логике.

  23. 12 минут назад, Arlleex сказал:

    Ну да. И это лишь только для программирования конкретного МК.
    Сюда сколько лопатой не накидывай - все равно будет полдела.
    Ведь все это лишь инструментарий для решения прикладной задачи.

    Любой вменяемый проект похож на айсберг - верхушка это прикладной уровень (логика приложения).
    А под ней вся остальная ж*па - от оптимизации схемы и планнинга ресурсов МК до оптимизации самого кода.
    Чтобы грамотно спланировать взаимодействие периферии нужно тоже тонны мануалов прошерстить. Оценить возможности.
    А чего уж про RTOS-ы или стеки каких-то протоколов или сервисов говорить. Своя наука, в которой тоже надо разбираться (с наскоку тоже не получится).
    А сформировать окружение для поддержания нормального функционирования изделия и его жизненного цикла (всякие WDT, сервисы, bootloader-ы и т.д.) как?

    Ну у прикладников все несколько проще - чуть какой глюк - бэкэнд саппорт пофиксил все глюки и команда работает дальше. Даже перекурить не успели.
    А в embedded что? Что-то глючит - ты виноват. Сиди и разбирайся, чини. Исходники все открыты, ничего не мешает. На кривые библиотеки не пожалуешься.

    У дилетантов всегда все просто. Только потом оказывается, что на "какой фреймер поверх UART юзать будем?" выкатывают :shok: и просят больше так не ругаться.
     

    Так вот и ответили бы сначала себе на вопрос, как Вы будете синхронизировать скорости двух UART-ов, как будете буферизовать, где парсить.

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

    3 минуты назад, AlexandrY сказал:

    Так это что, подпольный реверс? Чужой самокат решили клонировать? 
    Так с этого надо было и начинать.
    Ничего против реверса не имею, но это в корне меняет весь подход.
    Тут во-первых не экономят, во-вторых платформа должны быть беспроводной, чтобы реверсить на реальном объекте и без опасений за наводки и сбои. 

    Практически да, реверс, но не самоката :)  Реальное изделие состояло из двух половинок - слишком умных мозгов, которые сгорели и исполнительной части, которая осталась жива. Вот к ней и подбираюсь.

×
×
  • Создать...