IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Actualités Discussion :

STMicroelectronics propose des outils pour développer en Java sur micro-contrôleurs

  1. #1
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut STMicroelectronics propose des outils pour développer en Java sur micro-contrôleurs
    Le géant du semi-conducteur STMicroelectronics a annoncé il y a quelques jours la sortie d'outils de développement et d'une gamme de micro-contrôleurs associée pour pouvoir développer des applications en Java. STMicroelectronics propose ainsi une solution pour créer des interfaces utilisateurs complexes, graphiquement évoluées, à la manière des smartphones mais pour des appareils bien moins puissants. Les processeurs cibles sont en effet ceux de la gamme STM32, des micro-contrôleurs 32 bits utilisant les architectures Cortex-M d'ARM.

    Le produit s'appelle STM32Java et propose un environnement de développement, un compilateur Java, des plateformes Java optimisées pour les micro-contrôleurs STM32, des bibliothèques et des outils pour construire vos applications. Il est possible d'interfacer de manière simple du code en C et du code en Java. Un simulateur permet de tester sur PC l'application telle qu'elle sera compilée et déployée sur la cible matérielle.

    La licence annuelle est de 2600USD pour un poste.

    STMicroelectronics a crée un site dédié à ce produit. On peut y acheter des licences et des kits d'évaluation, la liste des références des puces compatibles est consultable et STMicroelectronics fournit des ressources pour prendre en main le produit (manuel, notes d'applications, spécifications...). Des vidéos montrent que l'environnement de développement est basé sur Eclipse et montrent l'exécution en parallèle de la même application sur le simulateur et une carte d'évaluation. On peut y voir le rendu des applications façon smartphone promis par STMicroelectronics.




    Sources :

    Communiqué de presse de STMicroelectronics
    Le site dédié à STM32Java
    Page produit dans le catalogue


    Et vous ?

    Seriez-vous intéressés pour faire vos développements embarqués en Java ?

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par Bktero Voir le message
    La licence annuelle est de 2600USD pour un poste.
    Je suis un peu surpris qu'une firme franco-italienne, avec un actionnariat partiellement étatique de surcroit, donne un prix en USD et pas en EUR.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  3. #3
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Je ne trouve pas particulièrement étonnant qu'une firme internationale s'adressant en anglais à ces clients du monde entier donne ses prix en USD, la monnaie de référence des échanges mondiaux

  4. #4
    Expert confirmé Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 619
    Points : 4 350
    Points
    4 350
    Par défaut
    Citation Envoyé par Bktero Voir le message
    Seriez-vous intéressés pour faire vos développements embarqués en Java ?
    Pas sûr. Est-ce qu'on a un bon contrôle de la mémoire ? Parce que si c'est pour embarquer un Garbage Collector, je ne suis pas certain des performances finales.
    http://www.traducteur-sms.com/ On ne sait jamais quand il va servir, donc il faut toujours le garder sous la main

  5. #5
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    Citation Envoyé par ManusDei Voir le message
    Pas sûr. Est-ce qu'on a un bon contrôle de la mémoire ? Parce que si c'est pour embarquer un Garbage Collector, je ne suis pas certain des performances finales.
    Si tu poses la question c'est que visiblement tu ne sais pas comment on gère la mémoire avec Java autrement que par le fait de dire "le GB il est là laissons le faire".
    Je te recommande cet article : http://schmitt.developpez.com/tutoriel/java/memoire/
    Le GB n'est pas une taupe, c'est juste une autre façon de programmer et de gérer la mémoire.
    La mauvaise image de Java qu'on a vient surtout de la tonne de développeurs qui ne savent pas programmer (oui j'utiliserai plutôt le terme de bidouiller pour eux) et l'énorme demande en développeur Java/JEE demandée par les SSII(qu'on ne parte pas dans le troll je ne cible pas toutes les SSII) qui ne sont au final pas très regardantes sur la qualité.

    C'est intéressant cependant de voir que ST s'est penché sur le Java.
    Car effectivement ce langage ramené directement à un niveau processeur (ou microprocesseur dans ce cas là) est loin d'être une bouse. J'ai actuellement un collègue qui fait mumuse sur un ARM Cortex A8 avec du Java. Et pour vous donner de la suite dans les idées, il fait du développement temps réel.
    Il a encore de nombreuses choses à tester, mais pour le moment il a retourné le bouzin dans tous les sens et n'a pas un seul point en défaveur de java.

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  6. #6
    Membre extrêmement actif

    Profil pro
    Grand Timonier des Chats
    Inscrit en
    Décembre 2011
    Messages
    879
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Grand Timonier des Chats

    Informations forums :
    Inscription : Décembre 2011
    Messages : 879
    Points : 3 302
    Points
    3 302
    Par défaut
    Citation Envoyé par transgohan Voir le message
    Si tu poses la question c'est que visiblement tu ne sais pas comment on gère la mémoire avec Java autrement que par le fait de dire "le GB il est là laissons le faire".
    Je te recommande cet article : http://schmitt.developpez.com/tutoriel/java/memoire/
    Le GB n'est pas une taupe, c'est juste une autre façon de programmer et de gérer la mémoire.
    La mauvaise image de Java qu'on a vient surtout de la tonne de développeurs qui ne savent pas programmer (oui j'utiliserai plutôt le terme de bidouiller pour eux) et l'énorme demande en développeur Java/JEE demandée par les SSII(qu'on ne parte pas dans le troll je ne cible pas toutes les SSII) qui ne sont au final pas très regardantes sur la qualité.

    C'est intéressant cependant de voir que ST s'est penché sur le Java.
    Car effectivement ce langage ramené directement à un niveau processeur (ou microprocesseur dans ce cas là) est loin d'être une bouse. J'ai actuellement un collègue qui fait mumuse sur un ARM Cortex A8 avec du Java. Et pour vous donner de la suite dans les idées, il fait du développement temps réel.
    Il a encore de nombreuses choses à tester, mais pour le moment il a retourné le bouzin dans tous les sens et n'a pas un seul point en défaveur de java.
    Le Java est peut-ête tout-à-fait utilisable, mais n'est-t-on pas en pleine illustration de "When all you have is a hammer, all problems look like a nail"?

  7. #7
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    Citation Envoyé par MiaowZedong Voir le message
    Le Java est peut-ête tout-à-fait utilisable, mais n'est-t-on pas en pleine illustration de "When all you have is a hammer, all problems look like a nail"?
    Cette tirade est tirée par les cheveux.
    J'ai des collègues qui te répondront que c'est du n'importe quoi d'utiliser du C à la place du C++ (et ce quelque soit le type de système), ou inversement.
    Pour aller encore plus dans le ridicule j'en connais deux qui préférerons faire certaines applications simples en assembleur plutôt qu'en C.

    Bref selon moi quand on maîtrise une technologie c'est pas la peine de s'emmerder à aller faire autre chose parce que c'est la mode.

    Et encore une fois... Java n'est pas un marteau, je ne parle absolument pas de l'immondice de JVM que vous avez sur vos ordinateurs. Je parle du bytecode intermédiaire interprété par le CPU comme instruction machine...
    Java ne se limite pas à sa JVM, Java est un langage avant tout et non une plateforme.

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  8. #8
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Je me suis souvenu que je n'avais jamais donné mon avis sur le sujet ^^

    transgohan a une bonne vision de la chose. Java ne se limite pas à la tasse à café qui apparaît des fois en bas de votre écran et fait (faisait car ce n'est plus tout à fait vrai) ramer votre PC. Java est comme C : il y a des spécifications qu'un éditeur logiciel peut choisir d'implémenter. Le monde ne se limite pas à la JVM Oracle.

    MiaowZedong : non, on est en illustration du problème : si j'ai un clou, il me faut un marteau; si j'ai une vis, il me faut un tournevis. Java n'est pas fait pour remplacer C, comme C n'est pas fait pour remplacer l'assembleur. Selon les problèmes posés, on utilise le bon outil.

    ManusDei : tu n'es pas certain et tu as sûrement tord et raison à la fois. C'est justement parce que tu dois utiliser Java quand c'est pertinent. Si tu veux faire une gestion à l'octet près, alors oui, ce n'est pas Java qu'il te fait puisse que la gestion de la mémoire est assurée par le GC. Avoir un GC et le laisser faire ne veut pas pour autant dire que tu dois coder n'importe comment, on reste dans un contexte embarqué avec des ressources limitées.

    Il faut prendre du recul sur l'évolution des micro-contrôleurs et des applications qui tournent sur ces puces. Il est aujourd'hui devenu (presque) courant d'avoir 1Mo de flash et 128ko de RAM et les STM32F4 (Cortex M4) sont des gros machins ! On peut voir les tailles de puces compatibles ici. C'était inimaginable il y a quelques années. La complexité des applications qui rentrent désormais sur un micro-contrôleur a donc forcément explosé. La POO donne de nombreux outils pour gérer la complexité, je pense que c'est assez indéniable. Il devient donc pertinent d'avoir des langages OO sur embarqué, Java par exemple. STM32Java est tourné vers les IHM, l'apport de l'OO avec un design pattern tel que MVC est pertinent.

    Pour ce qui est des performances, un système embarqué a de nombreux points pouvant le ralentir comme absence de contrôleur d'écran ou lecture et écriture sur des mémoires externes. Il y a énormément de points d'attention et l'utilisation de Java n'est vraiment pas le point bloquant. Les vidéos montrent bien que le rendu de l'IHM est bon

  9. #9
    Expert confirmé Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 619
    Points : 4 350
    Points
    4 350
    Par défaut
    Je sais être dans un domaine particulier, mais là où je bosse on utilise du C, avec des macro assembleur inline pour des questions de performance. Et c'est pas pour la frime, c'est nécesssaire pour respecter les contraintes du système.

    J'imagine pas vraiment la même chose en Java, mais je suis peut-être dans un domaine un peu trop particulier (je suis jeune diplômé donc je connais pas tout, loin de là).

    Faudrait que je regarde, j'ignore totalement si l'utilisation de la POO a un impact sur la taille du code.
    http://www.traducteur-sms.com/ On ne sait jamais quand il va servir, donc il faut toujours le garder sous la main

  10. #10
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Tu as raison de ne pas l'imaginer : ce n'est pas fait pour ^^

    Java n'est de base pas fait pour l’algorithmie pure. Prend le cas d'un calcul matriciel : Java vérifie si tu ne dépasses pas d'un tableau quand tu essayes d'accéder à une case. Chaque accès à chaque case sera donc bien plus lent que le même code en C puisque C ne fait pas de vérification des bornes. Si tu veux encore optimiser certains temps de calcul, tu fais ce que tu fais : tu passes en assembleur. Dans ton cas, Java ne convient pas.

    En revanche, si tu veux faire une IHM complexe sans calcul compliqué derrière, tu ne le feras pas en assembleur. Tu auras besoin de mécanismes haut niveau pour la gestion des widgets graphiques. Java est alors pertinent. A titre d'exemple, ce produit est fait avec en grande partie avec du Java et la puce est un micro-contrôleur type Cortex M. Ils cherchent là à faire une interface complète, complexe, modulable.

    Au passage, Java est portable donc tout ce qui a été écrit en Java pourra être réutilisé sur un autre appareil qui fournit une JVM et les bibliothèques utilisées. Toujours chez Deltadore, tu pourras regarder ce produit qui a la même interface graphique. Ce n'est pas dû au hasard

    A chaque problème une solution. Je ressors ma vis et mon marteau.

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/11/2012, 11h31
  2. Réponses: 0
    Dernier message: 15/11/2012, 16h22
  3. Réponses: 0
    Dernier message: 20/09/2012, 08h54
  4. Réponses: 0
    Dernier message: 29/10/2009, 11h04
  5. [Logiciel] Outil pour développer des jeux vidéos
    Par Kiri dans le forum EDI et Outils pour Java
    Réponses: 4
    Dernier message: 16/06/2004, 20h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo