c303
10.01.2013, 23:35
Moin,
ich habe versucht ein 2 zeiliges Display, das von Conrad (14pins), an das M32 anzuschließen - über den LCD-Port. Das M32 ist über XUSB1 und USRUSB1 an die RP6 BASE angeschlossen. (Hier sind XUSB2 und USRUSB2 benutzt.)
Leider bekomme ich ich das Display nicht zum Laufen. Der kleine Selbsttest aus der M32 Anleitung funktioniert schon nicht. LED Test war ok. LCD hat nicht reagiert. Ich hab nen Beispielprogramm genommen und es auf den M32 übertragen:
// Includes:
#include "RP6ControlLib.h" // IMMER einbinden!!!
int main(void)
{
initRP6Control(); // IMMER als ERSTES aufrufen!!!
initLCD(); // Das LCD starten. Muss IMMER aufgerufen werden, BEVOR das LCD verwendet wird!
setLEDs(0b1111); // Alle LEDs ein
mSleep(500); // Eine halbe Sekunde warten
setLEDs(0b0000); // Alle LEDs aus
mSleep(500); // Eine halbe Sekunde warten
sound(180,80,25); // 2 mal Piepsen
sound(220,80,0);
showScreenLCD("################", "################"); // Etwas auf dem Display zeigen
mSleep(1500); // Warten
showScreenLCD("<<RP6 Control>>", "<<LC - DISPLAY>>"); //
mSleep(2500); // Warten
showScreenLCD("Hello World", "Example Program");
mSleep(2500); //Warten
clearLCD(); // Das LCD löschen
while(true)
{
mSleep(1500); // Ewig warten...
}
return 0;
}
Die LEDs funktionieren wie erwartet, aber das LCD schreibt gar nix. Das Display leuchtet und die erste Zeile ist mit 16 dunklen Rechtecken gefüllt. Sonst nichts.
Habe ich es falsch angeschlossen? Irgendwas vergessen zu initialisieren? Gibt es Konflikte bei den Libs? Sind die LCDs von Conrad manchmal Schrott?
Was kann ich tun, um das LCD anders zu testen?
Auch mit writeStringLCD_P(), setCursorPosLCD() und writeCharLCD() hatte ich keinen Erfolg.
Hat jemand eine Idee?
VG
Christian
ich habe versucht ein 2 zeiliges Display, das von Conrad (14pins), an das M32 anzuschließen - über den LCD-Port. Das M32 ist über XUSB1 und USRUSB1 an die RP6 BASE angeschlossen. (Hier sind XUSB2 und USRUSB2 benutzt.)
Leider bekomme ich ich das Display nicht zum Laufen. Der kleine Selbsttest aus der M32 Anleitung funktioniert schon nicht. LED Test war ok. LCD hat nicht reagiert. Ich hab nen Beispielprogramm genommen und es auf den M32 übertragen:
// Includes:
#include "RP6ControlLib.h" // IMMER einbinden!!!
int main(void)
{
initRP6Control(); // IMMER als ERSTES aufrufen!!!
initLCD(); // Das LCD starten. Muss IMMER aufgerufen werden, BEVOR das LCD verwendet wird!
setLEDs(0b1111); // Alle LEDs ein
mSleep(500); // Eine halbe Sekunde warten
setLEDs(0b0000); // Alle LEDs aus
mSleep(500); // Eine halbe Sekunde warten
sound(180,80,25); // 2 mal Piepsen
sound(220,80,0);
showScreenLCD("################", "################"); // Etwas auf dem Display zeigen
mSleep(1500); // Warten
showScreenLCD("<<RP6 Control>>", "<<LC - DISPLAY>>"); //
mSleep(2500); // Warten
showScreenLCD("Hello World", "Example Program");
mSleep(2500); //Warten
clearLCD(); // Das LCD löschen
while(true)
{
mSleep(1500); // Ewig warten...
}
return 0;
}
Die LEDs funktionieren wie erwartet, aber das LCD schreibt gar nix. Das Display leuchtet und die erste Zeile ist mit 16 dunklen Rechtecken gefüllt. Sonst nichts.
Habe ich es falsch angeschlossen? Irgendwas vergessen zu initialisieren? Gibt es Konflikte bei den Libs? Sind die LCDs von Conrad manchmal Schrott?
Was kann ich tun, um das LCD anders zu testen?
Auch mit writeStringLCD_P(), setCursorPosLCD() und writeCharLCD() hatte ich keinen Erfolg.
Hat jemand eine Idee?
VG
Christian