- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 49

Thema: HaikuVM A Java VM for ARDUINO and other micros using the leJOS runtime.

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    28.10.2012
    Beiträge
    26

    HaikuVM A Java VM for ARDUINO and other micros using the leJOS runtime.

    Hallo,

    ich möchte in diesem Forum HaikuVM vorstellen.

    HaikuVM ist eine weitere JAVA VM für Micros (ich habe mal mit ARDUINO und deshalb AVRs angefangen). In diesem Forum wurde schon mal NanoVM vorgestellt die das auch ähnlich konnte. Das Besondere ist, dass ich entschieden habe keine eigene Runtime zu bauen (viel zu aufwendig). Statt dessen nutze ich die von leJOS, einem großen JAVA Projekt für Lego Mindstorms Robotics Invention Kit Bausätze.

    HaikuVM funktioniert indem JAVA bytecode nach C Code konvertiert wird um letztlich durch einen C cross compiler für die Zielplattform kompiliert zu werden.

    Notwendige Software:
    1. JAVA 1.6
    2. WinAVR (C cross compiler für AVRs)
    3. HaikuVM
    4. Eclipse IDE (optional)


    HaikuVM wurde für Hobbyisten gebaut welche Applikationen für den ARDUINO bauen, um für sie die Welt von JAVA zu öffnen.
    Ja, mit HaikuVM kann man einen ARDUINO in JAVA programmieren!

    Wer schon immer mal das LED seines ARDUINO Boards in einem parallelen Thread blinken lassen wollte ... so geht's:
    Code:
    package arduino.tutorial;
    
    import static haiku.avr.lib.arduino.WProgram.*;
    
    public class BlinkWithThread extends Thread {
        static byte ledPin = 13;            // LED connected to digital pin 13
    
        public void run()                   // run over and over again
        {
            while (true) {
                digitalWrite(ledPin, HIGH); // sets the LED on
                delay(1000);                // waits for a second
                digitalWrite(ledPin, LOW);  // sets the LED off
                delay(1000);                // waits for a second
            }
        }
    
        public static void main(String[] args) {
            pinMode(ledPin, OUTPUT);        // sets the digital pin as output
            new BlinkWithThread().start();
        }
    }

    Features von HaikuVM:
    • Preemptive threads
    • Exceptions
    • Synchronization
    • double and float support
    • Arrays, including multidimensional ones
    • Recursion
    • Garbage collection
    • Supports inheritance and interfaces
    • Runs on AVR ATmega8, AVR ATmega328p (and Windows, UNIX)
    • Configurable 64, 32 or 16 bit data types including half precision float
    • Configurable 16 or 8 bit char type
    • Tested with Suns JAVA 1.6
    • Zero Assembler Code
    • Requires only down to 5k Bytes of code memory (includes HaikuVM and your Java program)
    • Needs only 250 Bytes RAM (the rest is for your JAVA application)
    • About 55k Java opcodes per second on 8 Mhz AVR ATmega8


    Und noch was: HaikuVM ist so klein, dass es sogar auf einem Atmega8 und dem ASURO Roboter läuft.
    Und ja, man kann damit auch einen ASURO Roboter mit JAVA programmieren!

    Wer neugierig geworden ist und probieren will wie HaikuVM läuft finden hier alles Nötige. Hilfe brauche ich vor Allem beim Test und bei der Portierung auf weitere Plattformen.
    Geändert von haikuvm (07.01.2013 um 21:51 Uhr)

Ähnliche Themen

  1. [ERLEDIGT] [ARDUINO] 2 Motoren + Servo mit dem Arduino Uno steuern
    Von Torrentula im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 31.08.2011, 17:31
  2. ARDUINO ARDUINO l293D + MegaservoLib
    Von m1ch15inner im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 2
    Letzter Beitrag: 11.07.2011, 12:50
  3. Runtime Error! in AVR Studio
    Von NemesisoD im Forum C - Programmierung (GCC u.a.)
    Antworten: 6
    Letzter Beitrag: 05.01.2007, 20:30
  4. (LEGO MINDSTORMS) lejos Klassen Facharbeit
    Von George Dorn im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 0
    Letzter Beitrag: 01.03.2006, 17:29
  5. lego, lejos, logitech ;)
    Von maze2k im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 21.05.2005, 23:21

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress