De Java à base de Microcontrôleurs?
J'ai été à la recherche en micro-contrôleurs et je me demandais si la majorité d'entre eux sont en C/C++? Je suis très à l'aise en java et que vous voulez demander de vous les gars si quelqu'un connaît un bon rapport coût efficacité, de java à base de micro-contrôleur, je pouvais le voir.
Toutes les réponses sont appréciées!
Les langues sont si semblables que vous devriez passer un bon micro-contrôleur avec une bonne communauté et d'apprendre. Par exemple Arduino est un sous-ensemble de C#, mais il n'est pas fou pour apprendre à venir à partir de Java...
Arduino est programmé en C ou C++. Il n'y a pas de C# ou de. impliqué que ce soit.
Je ne crois pas qu'il soit, mais ici il est. Bien sûr, autre que pour un passe-temps je ne sais pas pourquoi vous programme un système embarqué à l'aide de C# ou Java.
être programmé en C#" ne signifie pas que C# est la valeur par défaut/officiel/les plus utilisés de la langue. (Ce qui n'est pas le cas, car celles-ci sont le C et le C++. Bien sûr, j'ai aussi essayé de compiler mon propre moteur de script et d'exécuter un programme sur un 8-bit AVR, mais C trop, donc...)
Je suis pas si HO, vous ne devriez pas être encore considérant programmation rien d'autre qu'un haut de gamme des processeurs intégrés à l'aide de Java. Il est trop lent et trop beaucoup d'une charge à l'aide de Java pour les processeurs qui ne peut pas exécuter quelque chose comme Linux. Les régulateurs, Cortex M3/M4s et autres sont tout simplement pas adapté pour l'utilisation de Java. Aussi, l'idée qu'un processeur est C/C++ de base est un peu une étrange expression. Aucun processeur n'est basé sur aucune autre langue que l', on pourrait dire, de ses natif de langage d'assemblage.
Arduino est programmé en C ou C++. Il n'y a pas de C# ou de. impliqué que ce soit.
Je ne crois pas qu'il soit, mais ici il est. Bien sûr, autre que pour un passe-temps je ne sais pas pourquoi vous programme un système embarqué à l'aide de C# ou Java.
être programmé en C#" ne signifie pas que C# est la valeur par défaut/officiel/les plus utilisés de la langue. (Ce qui n'est pas le cas, car celles-ci sont le C et le C++. Bien sûr, j'ai aussi essayé de compiler mon propre moteur de script et d'exécuter un programme sur un 8-bit AVR, mais C trop, donc...)
Je suis pas si HO, vous ne devriez pas être encore considérant programmation rien d'autre qu'un haut de gamme des processeurs intégrés à l'aide de Java. Il est trop lent et trop beaucoup d'une charge à l'aide de Java pour les processeurs qui ne peut pas exécuter quelque chose comme Linux. Les régulateurs, Cortex M3/M4s et autres sont tout simplement pas adapté pour l'utilisation de Java. Aussi, l'idée qu'un processeur est C/C++ de base est un peu une étrange expression. Aucun processeur n'est basé sur aucune autre langue que l', on pourrait dire, de ses natif de langage d'assemblage.
OriginalL'auteur user2855405 | 2013-11-20
Vous devez vous connecter pour publier un commentaire.
La différence entre un langage comme java (ou c#) et un langage de plus bas niveau comme le c ou le c++ est le fait qu'ils ont une machine virtuelle.
Cela a de nombreux avantages, comme faire de la plate-forme d'application indépendante. Mais cela signifie aussi que chaque plate-forme doit avoir la vm.
Maintenant, microcontrôleurs ne sont pas uniformes et varient en puissance, de la mémoire, et de nombreuses autres fonctionnalités. Donc, l'adoption de la JVM (java virtual machine) pour eux n'est pas facile, même lorsque cela est possible.
La plupart du temps sa juste impossible - la plupart de l'uc ont une très faible capacité de la mémoire (une partie de ce qui rend bon marché) - ce serait raccord tout usage général de la JVM, il est impossible, pour ne pas mentionner également avec le code de l'application.
Je suis au courant de certains partielle des implémentations de java pour les microcontrôleurs. Par exemple, "java" cartes sim (qui ont un très petit contrôleur à l'intérieur) sont là, mais ils ont très peu de la version de java.
Donc, fondamentalement, je pense que votre meilleur pari pour écrire "embedded java" (surtout si vous êtes un novice) est de travailler sur le dessus de microcontrolers qui sont en fait qu'une petite entièrement le fonctionnement de l'ordinateur, qui exécute un bon OS qui a déjà une JVM. Il suffit de regarder dans l'un des nouveaux "micro-ordinateur" projets open source comme framboise pi ou beaglebone. Les deux coûtent environ 2x d'un arduino et sont beaucoup plus puissants.
Espère que j'ai aidé.
OriginalL'auteur itai
Ont un look à la Java-prêt microcontrôleurs STM32 ou Renesas RX.
Comme alternative, vous pouvez exécuter un stripped-down la JVM sur AVR/Arduino à l'aide de Haiku-VM, NanoVM ou uJ.
Vous pouvez aussi écrire à l'Arduino croquis en Java et cross-compiler pour C à l'aide de VBB.
OriginalL'auteur niutech
Il y a Java alternatives, mais je pense qu'ils sont coûteux. Par exemple, ST Microelectronics a ce java IDE basé sur eclipse:
Java SDK
Je n'ai aucune expérience avec java sur les micro-contrôleurs, mais Java ont beaucoup de similitudes (C en fonction de la langue) à C++ (qui est plus pris en charge avec des microcontrôleurs), mais c'est toujours le C qui est dominant. Il devrait être possible de l'apprendre assez vite si vous savez déjà Java.
Arduino utilise C++ et sont faciles à utiliser pour les personnes inexpérience avec C/C++.
Je vous suggère d'essayer le STM32 Java forum pour voir si il y a des utilisateurs déjà le partage de leurs expériences:
STM32 Java forum
Autant je comprends que vous pouvez flasher le microcontrôleur à partir de l'IDE. Sur le fond de cette page, vous pouvez trouver beaucoup de documents PDF qui va vous expliquer ce que le logiciel peut et ne peut pas le faire, mais ici, c'est la citation de l'un des documents: "STM32Java est une solution complète pour développer et déployer des applications sur des microcontrôleurs STM32 en utilisant les technologies Java".
OriginalL'auteur iQt
JArduino pourrait être un bon point de départ pour vous, car il vous permettra d'écrire des programmes Java qui interagissent avec une carte Arduino. L'API Java fourni par JArduino est pleinement en phase avec l'Arduino API. Ensuite, une fois que vous vous habituez à l'API Java, il devrait être facile de passer à la plaine de programmation Arduino (comme l'a fait remarquer, le C/C++ basés sur Arduino n'est pas loin de Java, de toute façon). Être conscient du fait qu'avec JArduino vous n'avez pas vraiment programmer le micro-contrôleur lui-même (votre principal logique s'exécuter sur votre PC et l'Arduino serait tout simplement être "contrôlée", sans aucune logique avancée en cours d'exécution sur le bord).
OriginalL'auteur bmorin