Hallo liebe Robotikgemeinde,
ich möchte diesen doch schon recht alten Thread noch einmal aufgreifen und eine Frage stellen. Ich benutze die selbe Kombination aus RN-Mega128Funk und RN-Joypad. Das Joypad betreibe ich am LCD-Port. Nun habe ich auch ein LCD (RN-LCD-Adapter) und dieses wie in der Anleitung beschrieben am JOY-Anschluß des Boards. Damit das funktioniert, habe ich die Pins angepasst. Nachfolgendes soll der Beispielcode erledigen:
- Display anschalten, Peepton erzeugen, Beleuchtung abschalten, 2Sekunden warten, Beleuchtung anschalten, Text ('** Test **') ausgeben
- Über Funk auf das Terminal Text ('RN-Mega...') ausgeben und danach die aktuellen Positionen des Joysticks ausgeben
Code:
$regfile = "m128def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000
$baud = 19200
Config Ping.0 = Output
Lcdpower Alias Portg.0
Sound Portg.2 , 400 , 450
Config Ping.3 = Output
Lcd_rw Alias Portg.3
Lcd_rw = 0
Lcdpower = 0
Wait 2
Lcdpower = 0
Config Lcd = 20 * 4a , Chipset = Ks077
Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0 , E = Porte.7 , Rs = Portg.4
Config Lcdbus = 4
Initlcd
Cls
Locate 1 , 1
Lcd "** Test **"
Config Portf = Input
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim Joy1x As Word
Dim Joy2y As Word
Print "**** RN-Mega128Funk ****"
Start Adc
Do
Joy1x = Getadc(1)
Print "Joystick 1 Position X=" ; Joy1x
Joy2y = Getadc(2)
Print "Joystick 2 Position Y=" ; Joy2y
Wait 1
Loop
End
Leider erfolgt das Display ein/ausschalten nicht. Außerdem zeigt auch mein Joystick immer 1023 für X und Y an, auch wenn ich ihn bewege. Wenn ich das Display abziehe, dann verhält sich der Joystick korrekt. Wenn ich das Display am LCD-Port betreibe, funktioniert auch dieses korrekt. Nur in Kombination leider nicht.
Hat jemand einen Tipp für mich, was ich als nächstes testen kann? Oder hat schon jemand einmal ein RN-Display am JOY-Port betrieben und kann mir sagen, ob der Fehler eventuell an meiner PIN-Belegung liegt!?
Vielen Dank für Eure Hilfe.
Lesezeichen