Hi,
ich versuche, den Nibobee mit Java zu programmieren. Einfache Dinge wie zum Beispiel die Ansteuerung der LED's gelingen mir auch ganz gut, Probleme machen mir - wie eigentlich zu erwarten - die Hardware-Interrupts.
Java ist ja nun nicht für die direkte Kommunikation mit der Hardware gedacht. Also war mein Gedanke, die Interrupt-Routinen in C zu schreiben, und diese dann per JNI in meine Java-Anwendung einzubinden. In C (und ASM) hab ich mit dem Asuro auch schon einige Erfahrungen sammeln können, auch die Bearbeitung von Interrupts. Mit Java und insbesondere mit dem JNI habe ich aber keine Erfahrungen.
Hat jemand einen Lösungsansatz für mich?
Versucht habe ich, die Interrupts irgendwie ohne JNI einzubinden, indem ich einfach per setMemory8 GICR, MCUCR und SREG konfiguriert und dann eine ISR (wie ich naiv glaubte) namens SIGNAL_SIG_INTERRUPT1 zu schreiben. IRGENDWAS tut der Robot auch bei dem Interrupt, ich bin mir allerdings ziemlich sicher, dass unmittelbar ein RESET folgt.
Übrigens: Ich nutze außer haiku.vm.MemoryAccess keine vorbereiteten Pakete, auch nicht die Asuro-Lib (weil zum Beispiel Sleep oder Msleep nicht funktioniert, der Asuro ist ja ganz anders konfiguriert).
Lesezeichen