IOW24 und LCD Probleme

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

VIB170AL
Posts: 3
Joined: Sat Nov 04, 2006 12:26 pm

Post by VIB170AL »

Guido Körber wrote:Warum kann das nicht am Kontrast liegen? Der wird doch durch ein externes Poti eingestellt, ist das mit dem LCD fest verbunden?

Die Daten vom Log sehen korrekt aus.
Die Potis fuer Kontrast und Backlight sind auf der Rückseite des LCDs verdrahtet (ich hatte es ja früher am Parallel Port laufen, und da funktioniert es ja auch noch).
Ich habe das Display noch mal an die 5V vom PC-Netzteil gehängt, hat aber auch nichts gebracht.

Nochmal zum Log:
Ist die letzte Zeile wirklich korrekt? Ich hätte erwartet, das da auch "41 42 43 44 45 46" steht.
Ich habe auch nochmals die Initalisierungssequenz im Datenblatt fuer den Controller (S6A0069) des Displays überprüft und die scheint auch zu stimmen.
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Stimmt, die letzte Zeile sieht komisch aus. Wie lang ist denn das Kabel zwischen IO-Warrior und LCD?
VIB170AL
Posts: 3
Joined: Sat Nov 04, 2006 12:26 pm

Post by VIB170AL »

Ausgezeichnet! Es lag doch tatsaechlich an der Kabellaenge. Ich habs jetzt von ca. 35cm auf 9cm gekuerzt.

Danke fuer die Hilfe!!!!!

Welche Kabellaenge kann ich maximal verwenden??
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Also ich sehe immer zu nicht über ca. 10-15cm zu kommen. Viele Testaufbauten bei uns im Labor haben das Display direkt auf der Platine.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Problem mit Display

Post by schnubbi »

So mein IOWarrior ist fertig gelötet und das LCD display hängt und schein zu funktionieren. Das LCD ist ein 20x2 LCD Display.
Problem:
Ich besitze MAC OSX deshalb teste ich im Moment noch immer mit dem IOWarrior Prober. Nun ich schicke dem Warrior über Interface 1 folgende Befehle:
- Enable LCD --> LCD Beleuchtung geht an und ein schwarzer Balken ist nun deutlicher in der ersten Zeile zusehen.
- Init LCD --> Der Balken verschwindet und es erscheint an aller erster Stelle ein komplett Schwarzes Rechteck. Position 3 des LCD ist ein blinkender Cursor.
- Move to first LCD --> Ich denke der blinkende Cursor sollte dann an erster Stelle stehen. Dort bleibt aber des tief schwarze Rechteck und der blinkende Cursor wandert zu Pos. 5.
- Write to LCD --> der schwarze Fleck wandert zu Position 5 und ab Pos 6 wird der Text tweT angezeigt.
Ich kann mir aber beim besten willen nicht vorstellen das dass der richtigkeit entspricht ...

Mit freundlichen Grüßen
Daniel
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Hört sich nach einem Kurzschluss an einer Datenleitung an. Dadurch können die Befehle verfälscht werden.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Post by schnubbi »

Also ich habe soeben noch einmal alles fein säuberlich gelötet. Leider ist es immer noch das selbe Phänomen.

Jetz wäre meine Frage wie kann ich die korrekte Funktionsweise des IO-Warrior ganz einfach feststellen?

Gruß#

Daniel
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Einfach mal nichts an den IO-Warrior ranhängen (also auch LEDs abhängen) und dann Bitmuster $55 oder $AA auf die Pins schreiben, die müssen genauso zurück kommen, so findet man Kurzschlüsse zwischen benachbarten Pins.

Kann natürlich auch sein, dass am Kabel zum Display der Kurze ist oder das Display einen Schuss hat.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Post by schnubbi »

wie meinst du das mit Bitmuster senden dass die so zurück kommen das versteh ich jetzt noch nicht ganz.

Hmm kann ich nicht nacheinander alle pins 1 und 0 setzen und messen? Wäre dass dann ein sicherer Beweis?
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Den IOWarriorProber nehmen und auf "Read" klicken, dann sieht man was der Status an den Pins des IO-Warrior ist, der sendet den Status nämlich jedes mal wenn sich was ändert. $55 und $AA sind die Bitmuster 01010101 und 10101010.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Post by schnubbi »

Ich hab das gemacht er schreib dann in den Warrior

55 00 und sofort kommt bei Read zurück 55 00
Dasselbe mit AA 00

Also liegts wohl doch am LCD

Ich werde des Display heute mal direkt mit dem LPT Port verbinden um gewissheit zu haben dass es nicht doch an meiner Leitung liegt.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Post by schnubbi »

Mittlerweile habe ich ein neues Display gekauft und alles funktioniert Wunderbar, auch die ganze Funktionsweise mit Bits und hex und so weiter habe ich mittlerweile gerafft. Man muss sich einfach mal intensiv damit beschäftigen. So nur stehe ich jetzt vor dem Problem dass scheinbar mein IR-Empfänger nicht funktioniert. Kann aber ja theoretisch auch an der Fernbedienung liegen. Aber ich werde nicht schlau daraus wie ich des so richtig testen kann. Am liebsten wärs mir mit dem IOWarriorProber für OSX.

Mit freundlichen Grüßen
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Ist denn sicher, dass der Sender auch RC5 Code verwendet? RC5 ist zwar weit verbreitete, aber immer noch nur einer von etwa fünf bis sechs Codes die verwendet werden.
schnubbi
Posts: 23
Joined: Sat Oct 15, 2005 3:06 pm

Post by schnubbi »

So also auch der IR Funktioniert nur folgendes problem ich möchte mit dem jetzt selber Programmieren und umgehen.

Wie funktioniert das mit AppleScript ich werde noch nicht ganz schlau.

Also ich sende ihm mit

Code: Select all

WriteInterface0 Port0 1
den Befehl zum aktivieren des Infrarotempfängers/specialmode so soweit ganz toll, LED geht an und mit dem IR-Test programm kann ich jetz auch sehen das was empfangen wird.
Jetzt ist die Frage wie muss ich mit den Befehlen
  • StartBufferedReading
  • ReadBufferSize
  • ReadInterface0
umgehen damit ich in meinem Script zum Beispiel eine Variable erhalten in der zum beispiel die Zahl 01 drinsteht für die Taste 1 die gedrückt wurde oder 16 für die Taste Vol+ ...

Ich komm nämlich nicht mehr weiter, gut ich bin auch nicht mehr ganz aufnahmefähig heute, aber es will einfach nicht klappen
Guido Körber
Site Admin
Posts: 2878
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Ganz falsch...

Also AppleScript ist nicht gerade meine Stärke, daher kann ich nur die grundsätzliche Vorgehensweise beschreiben.

Code:
WriteInterface0 Port0 1

Ist auf jeden Fall kontraproduktiv, damit werden nur diverse Pins auf Null gesetzt. WriteInterface1 ist das richtige AppleScript Kommando. Damit schickt man den Befehl zum einschalten der RC5 Funktion.

ReadInterface1 ist dann zuständig dafür die Daten zu lesen die die IR Funktion empfängt.

Für die Beschreibung des Kommandos und der Daten bitte ins Datenblatt sehen.
Post Reply