-
eDIP240 data... fehlt
Hallo,
ich steuere ein eDIP240 per RS232 an. Wenn ich nun den Inhalt des Sendepuffers anfordere passiert folgendes:
Angenommen ein Taster wurde auf dem Display gedrückt, dann erhalte ich als Rückgabe:
ACK - korrekt
DC1 - korrekt
len - korrekt
data.. - fehlt
bcc - korrekt
warum fehlt zwischen len und bcc das datenpaket!?! Ich kann mir das irgendwie nicht erklären, weil ja vom Prinzip alles ordnungsgemäss klappt, nur eben die wichtigen Daten fehlen.
mfg Paul
-
kann es sein das der puffer leer ist? Das du vielleicht für die Touchtaste keinen "Up" oder "Down" Code vergeben hast?
Passt denn das "bcc" und "len" im bezug auf das fehlende Datenbyte?
-
code ist vergeben!
Habe auch SBUF an einen Interrupt angeschlossen. Er springt also auch nur rein wenn Daten im Puffer sind.
sowohl len als auch bcc stimmen im bezug auf die Datenbytes
-
ich versteh zwar nicht warum, aber wenn ich die Bytes zusammen einlese geht es. Ich hatte vorher die Bytes einzeln eingelesen. Macht für mich trotzdem keinen Sinn das genau die daten immer gefehlt haben :/
-
wie meinst du das mit "einzeln" und "zusammen" einlesen?
-
ich habe mit Bascom und inputbin gearbeitet und immer byte für byte eingelesen und ausgegeben:
inputbin var
Print var
inputbin var
...
wenn ich jeztt mache
Inputbin Ack
Inputbin DC1
Inputbin Len
Inputbin Ac(1) , 4
inputbin bcc
dann geht es (in Bacom heissen die Variablen natürlich anders)
wenn ich statt der 4 die variable für len nehme gehts wieder nicht. Vielleicht solte ich mal die baudrate runtersetzen...
edit: an der Baudrate liegts nich...
jetzt müsst ich langsam in die Bascom abteilung denn anscheinend geht das inputbin nich mit ner variablen als Anzahl der bytes die gelesen werden sollen
Hab das jetz in ne schleife gepackt... so gehts
-
ja von Bascom hab ich keine Ahnung, habe das in c gemacht. und auch nicht mit RS232 sondern über I2C. Sollte vom Ablauf aber das gleiche sein.
-
bascom is nich der hit -ich weiss ;)
will auch schon länger umsteigen, aber der Einstieg is immer etwas knifflig bis man die Befehle drauf hat. Ansonsten kann ich eigentlich C programmieren...
-
Hallo
Da bin ich ja genau richtig.
Ich hab auch dieses Display,steuere es aber per SPI an.
Könnt ihr mir den Algorythmus für die Checksumme bbc kurz erklären bzw. hier reinstellen?
MFG
Bertl
-
Im Datenblatt steht, dass die einzelnen Bytes zusammengezählt werden müssen und dann noch modulo 256 gerechnet werden müssen.