Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программирование STM32 на Java
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
kiuaki
Существует ли бесплатная альтернатива MicroEJ ( http://www.is2t.com/en/products-microej)
для программирования STM32 Cortex M микроконтроллеров на Java?
Google в поиске пока не помощник поскольку при поиске по Cortex М3 , Java, Environment и тп выдаёт в
основном то, что Eclipse требует устновки Ява для программирования ARM, или Cortex на "С".
Или что-то другое но всё равно не лежащее в области интереса.
Моя цель - приобретение STM3220G-JAVA и написание кода для программирования Кортексов на Java.
Приходящяя в наборе демо версия MicroEJ будет работать только три месяца.
polyname
А что даст Java по сравнению с C/C++ на STM32 ?
_Артём_
Цитата(polyname @ Oct 16 2012, 00:01) *
А что даст Java по сравнению с C/C++ на STM32 ?

Видимо появится возможность писать на джаве = кроссплатформенность - отлаживаешь на ПК, работает всё на STM32.

polyname, а может лучше взять .Net microFramework? Он бесплатный (но не знаю как там с поддержкой STM32).

kiuaki
Суть вопроса не в количестве плюсов и минусов. В данный момент пробую найти и освоить небходимые инструменты. Пока не нахожу как можно использовать .Net microFramework
polyname
Цитата
Видимо появится возможность писать на джаве = кроссплатформенность
не поверите, на С/С++ тоже можно писать кросс-платформенный код - GCC есть на всех платформах. Нужно только немного выпрямить руки и мозги.
На счет Java/NET на STM32 - да, хороший анекдот. Вы явно недооцениваете необходимое для этого количество ресурсов.
Нужны контроллеры помощнее, с полноценным MMU и Linux, на которых работает Android.
AlexandrY
Цитата(kiuaki @ Oct 16 2012, 01:04) *
Суть вопроса не в количестве плюсов и минусов. В данный момент пробую найти и освоить небходимые инструменты. Пока не нахожу как можно использовать .Net microFramework


Ждите обновлений Keil-а:
http://www.drdobbs.com/jvm/oracle-launches...edded/240008172

Oracle Java ME Embedded 3.2 гораздо мощнее MicroEJ.
Стоит подождать.
kiuaki
AlexandrY, cпасибо, если больше никто ничего не посоветует, придётся заняться ожиданием.
Нашел,однако, одну статью
http://www.eetimes.com/design/microcontrol...k-for-the-STM32
и комментарии к ней из чего следует что .NET micro framework может сработать, но боюсь
что надолго увязну на этапе сбора и подготовки инструментов.
SyncLair
портируйте лучше Луну )) Lua ! Она кстате вроде под влиянием Явы создавалась

помоему её уже портировали ) под LPCшку точно есть )!
oll
может пригодится
http://dmitry.co/index.php?p=./04.Thoughts...a%20micro%20JVM
AlexandrY
Цитата(kiuaki @ Oct 16 2012, 18:28) *
... из чего следует что .NET micro framework может сработать, но боюсь
что надолго увязну на этапе сбора и подготовки инструментов.


Я полагал, что Java у вас принципиально в свете последних трендов с Android-ом и бурным развитием экосистемы для Java.
А так конечно посоветовал бы .NET MF.
Сам занят его портированием.


Цитата(oll @ Oct 17 2012, 07:59) *


Это очень примитивный и медленный движок выполнения уже скомпилированных классов Java без реализации большинства стандартных классов Java ME.

Цитата(SyncLair @ Oct 16 2012, 23:49) *
портируйте лучше Луну )) Lua ! Она кстате вроде под влиянием Явы создавалась

помоему её уже портировали ) под LPCшку точно есть )!


Да, LUA неплохой вариант. От тех же движков Java его отличает то, что он идет вместе с компилятором и занимает при этом меньше 100 Кб Flash памяти.
Т.е. в микроконтроллер можно грузить не скомпилированные на PC классы, а просто исходники.
Таким образом легко на LUA делать встроенные серверные скрипты например в WEB страницы embedded сервера по типу PHP.
Связь с C-и кодом у LUA очень простая.
Но вот нету открытых проектов для отладки на PC кода работающего на целевой платформе. Симуляторов платформ нет.
Нет стандартных API и библиотек доступа к периферии и сетевым стекам. Вообще язык мало кому знаком.

.NET MF требует побольше памяти, но зато средства разработки и библиотеки у него мощнее.
MrYuran
Цитата(polyname @ Oct 16 2012, 09:19) *
На счет Java/NET на STM32 - да, хороший анекдот. Вы явно недооцениваете необходимое для этого количество ресурсов.
Нужны контроллеры помощнее, с полноценным MMU и Linux, на которых работает Android.

Вообще-то, Java изначально разрабатывалась как раз для очень тонких контроллеров, чтобы можно было вставить их в каждый чайник/пылесос/стиралку итд.
Это потом её подхватили веб-программисты и, естественно, все опошлили.
Но JME работала ещё на старинных телефонах 10-летней давности.
Взять хотя бы культовый Siemens S55. Ядро Infineon С166.
И под яву выделен аж мегабайт памяти sm.gif
polyname
Цитата
Вообще-то, Java изначально разрабатывалась как раз для очень тонких контроллеров
так вот мне непонятно какие такие преимущества у Java над С/С++ для тонких контроллеров ?
Aner
Цитата(MrYuran @ Oct 17 2012, 10:08) *
Вообще-то, Java изначально разрабатывалась как раз для очень тонких контроллеров, чтобы можно было вставить их в каждый чайник/пылесос/стиралку итд.
Это потом её подхватили веб-программисты и, естественно, все опошлили.
Но JME работала ещё на старинных телефонах 10-летней давности.
Взять хотя бы культовый Siemens S55. Ядро Infineon С166.
И под яву выделен аж мегабайт памяти sm.gif


Java изначально разрабатывалась ... Sun M. не для тонких контроллеров точно!
Независимость байт-кода от OS, возможно и достоинство, но насколько оно актуально сегодня? ...

Цитата(polyname @ Oct 17 2012, 11:16) *
так вот мне непонятно какие такие преимущества у Java над С/С++ для тонких контроллеров ?

использование для встроенных (сетевых приложений) преимущества Java над С/С++.
С/С++ пока слабоват для этого.
polyname
Цитата
использование для встроенных (сетевых приложений) преимущества Java над С/С++.
каких например ?
AlexandrY
Цитата(Aner @ Oct 17 2012, 12:18) *
Java изначально разрабатывалась ... Sun M. не для тонких контроллеров точно!
Независимость байт-кода от OS, возможно и достоинство, но насколько оно актуально сегодня? ...


использование для встроенных (сетевых приложений) преимущества Java над С/С++.
С/С++ пока слабоват для этого.


Имелось в виду наверно Java ME.
Когда появилось Java ME в модулях Nokia12 на ARM7, то те микроконтроллеры были слабее в несколько раз чем современные Cortex-M4.
На тех модулях успели подняться десятки стартапов по всему миру.
На программировании игр на Java ME поднялось еще больше компаний.
Сетевые приложения здесь не при чем.
MrYuran
Цитата(Aner @ Oct 17 2012, 13:18) *
Независимость байт-кода от OS, возможно и достоинство, но насколько оно актуально сегодня? ...

Не только от ОС, но и от аппаратной платформы.
Очень актуально.

Достаточно посмотреть основные тенденции:
Apple -> Clang/LLVM
Google -> Java/DalvicVM
MS -> C#/.Net
AlexandrY
Цитата(MrYuran @ Oct 17 2012, 14:11) *
Достаточно посмотреть основные тенденции:
Apple -> Clang/LLVM
Google -> Java/DalvicVM
MS -> C#/.Net


Ну это как раз монстры, и независимость от аппаратной платформы там конечно условная.
На Google Play необходимо всегда учитывать совместима программа с аппаратом или нет.

Для разработок на Cortex-M я бы назвал главным достоинством таких языков это изоляция юзера от платформы и любой информации о реализации фирмваре (т.е. защита IP ) и одновременная привязка пользователей к платформе. Так дело обстоит например в GSM модулях.
Это прямо наоборот чем платформенная независимость.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.