Gast
#2913764
Hallo liebe Forengemeinde, Vorneweg sollte ich vielleicht erwähnen, dass ich nicht aus der Elektronikbranche komme und in der Programmiersprache C auch nicht besonders gut bewandert bin. Mein Problem/Ziel: Ich möchte ein EA EDIP160W-Display mit einem ATmega8 verbinden. Vom Display sollen Daten an den Mikrocontroller gesendet und gegebenenfalls verarbeitet werden. Ausserdem soll der ATmega8 natürlich Daten an das Display verschicken können. Nach langem Probieren und Durchforsten von diversen Internetseiten habe ich eine UART-Verbindung erstellt und kann mittlerweile Befehle an eine Terminalanwendung des PC's senden sowie Befehle vom ATmega an das Display senden. Die Kommunikation mit dem Display erfolgt mit der Hilfe des smallprotokoll (Seite 10 im Datenblatt: http://www.lcd-module.com/fileadmin/pdf/grafik/edip160-7.pdf ) Mein Problem ist nun, dass ich nicht weiter komme und vom Display keine Daten abholen kann. Wenn ich das richtig verstehe sollte folgendes Makro im Display programmiert einen String zum Senden bereitstellen: #SB "HELLO". Laut Datenblatt entleer die Befehlsfolge <DC2>, 1, S, bcc den Sendepuffer des Displays. Das Display antwortet zuerst mit der Quittierung <ACK> und beginnt dann alle gesammelten Daten wie z.B. Touchtastendrücke zu senden. Allerdings funktioniert bei mir scheinbar gar nichts. Ich muss dazu aber auch sagen, dass ich nicht weiss wie ich die Kommunikation zwischen den beiden belauschen kann um so Rückschlüsse auf Programmierfehler meinerseits zu machen. Gibt es eine Möglichkeit die Kommunikation der beiden zu belauschen? Oder kann mir jemand helfen einen Codeschnippsel zu erstellen, der den gesendeten String in ein Array auf dem Mikrocontroller schreibt? Ich habe da in etwa an folgendes gedacht:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
Ich hoffe man kann zumindest meinen Gedankengängen folgen und sehen was meine Absicht eigentlich wäre. Mit einer LED habe ich herausgefunden, dass das Programm in der for-Schleife hängen bleibt. Ich bin euch für jede Hilfe dankbar ;) Freundliche Grüsse, Matt