Hallo zusammen,
Auf dem Weg an die Brennerdaten vom A25 ranzukommen, bin ich inzwischen direkt am 2*16 LCD Display vom Atmos A25-Brenner
gelandet.
Das Ausmessen der einzelnen Pins an der ausgebauten Display-Platine mit dem Ohmmeter ergab, dass das LCD-Display im 4-Bit Mode,
also mit 4 Datenleitungen D4,D5,D6,D7 und E als Steuerleitung betrieben wird, weil die restlichen Datenleitungen D0,D1,D2,D3
auf Masse hängen.
Das folgende Bild mit dem Logicanalyser und der Protokollanalyse HD44780 von den LCD-Display-Daten zeigt
im Klartext "AC 07" meine Brennerdaten im 4-Bit Mode.
Time (s), Analyzer Name, Decoded Protocol Result
5.914219200000000,HD44780,Write Command '128' (0x80) (Set DDRAM Addr '0' (0x00))
5.915876500000000,HD44780,Write Data A (0x41) (Data 'A')
5.916116200000000,HD44780,Write Data C (0x43) (Data 'C')
5.916355800000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.916595400000000,HD44780,Write Data 0 (0x30) (Data '0')
5.916835200000000,HD44780,Write Data 7 (0x37) (Data '7')
5.917074800000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.917314400000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.917554000000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.917793700000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.918033400000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.918273100000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.918512600000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.918752300000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.918991900000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.919231600000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.919471300000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.919710900000000,HD44780,Write Command '192' (0xC0) (Set DDRAM Addr @ (0x40))
5.919950600000000,HD44780,Write Data v (0x76) (Data 'v')
5.920190200000000,HD44780,Write Data e (0x65) (Data 'e')
5.920429900000000,HD44780,Write Data r (0x72) (Data 'r')
5.920669600000000,HD44780,Write Data s (0x73) (Data 's')
5.920909200000000,HD44780,Write Data i (0x69) (Data 'i')
5.921148800000000,HD44780,Write Data o (0x6F) (Data 'o')
5.921388400000000,HD44780,Write Data n (0x6E) (Data 'n')
5.921628100000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.921867800000000,HD44780,Write Data 0 (0x30) (Data '0')
5.922107500000000,HD44780,Write Data . (0x2E) (Data '.')
5.922347100000000,HD44780,Write Data 1 (0x31) (Data '1')
5.922586700000000,HD44780,Write Data 8 (0x38) (Data '8')
5.922826300000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.923065900000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.923305600000000,HD44780,Write Data ' ' (0x20) (Data ' ')
5.923545200000000,HD44780,Write Data ' ' (0x20) (Data ' ')
Da das ganze sehr zeitkritisch ist, denn die Displaydaten werden alle 100ms ans LCD-Display geschickt,
das sind ca. 10mal pro Sekunde, habe ich mich fürs erste für meinen Arduino-Mega2560 zum Einlesen und dekodieren
der Displaydaten und den Raspi2 zum sammeln und speichern der Daten in eine Logdatei entschieden.
Der Arduino-Mega2560 ist per USB-Kabel mit dem Raspi2 verbunden. Eine Arduino-Software-IDE zum Programmieren
hab ich direkt auf dem Raspi laufen, so kann ich den Arduino-Mega2560 der am Raspi2 hängt direkt vom
Raspi2 aus programmieren. Der Raspi2 und der Arduino-Mega2560 sind im Heizraum direkt neben dem Brenner mit einem kurzen kabel mit
dem 2*16 LCD Display vom Atmos A25-Brenner verbunden. Der Raspi2 hängt am Netzwerk und ist somit per REMOTE-Desktop-Verbindung
vom entfernten Büro übers Netz bedienbar.
Im nächsten Bild sieht man wie das 2*16 LCD Display vom Atmos A25-Brenner an den Arduino-Mega2560 bei mir angeschlossen ist.
Damit konnte ich meine Brennerdaten auslesen und in eine Logdatei abspeichern.
Parametern -
LCD Anzeige Änderung festgestellt: CCx= 68
Eine Display Zeile besteht aus 68 Halb-Bytes, wegen 4-Bit Mode
1000-0-100-1001-110-1110-110-110-110-1111-111-10-110-1101-110-1-111-100-110-1001-110-1111-110-1110-10-0-10-0-10-0-10-0-10-0-
1100-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-10-0-
diese 68 Halb-Bytes wieder zusammengesetzt ergeben die folgenden 34 Hex-Bytes, sie entsprechen dem ASCII-Code
80-49-6E-66-6F-72-6D-61-74-69-6F-6E-20-20-20-20-20-C0-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-20-
...
Information -
Photozelle - 0%
untere Temp. - 32,2 C
oberer Temp. - 59,8 C
Ventilator - 0rpm
Forderschnecke - OFF
Schneckestorung - OK OK
Gluhspirale - 1:OFF 2:OFF
Spiralestorung - 1: OK 2: OK
Ausgangsreserve - 1-OFF
...
Screenshot mit den einzelnen Programmen vom Raspi2 von diesem Projekt auf einen Blick.
Gruß
Jürgen