Hallo, Ich programiere gerade das edip 240 von Electronic Assembly. Ich will das Display via PC über ein einfaches Programm in C steuern bzw.vom Display Daten erfassen, den Puffer auslesen. Da ich noch keine Erfahrung mit RS 232 habe brauch ich ein Einfaches Beispiel Programm für das Display wie man Daten senden/ emfangen kann und eine einfache Ausgabe der Vektoren via PC. Dank im Voraus Raphael Lang
Hallo, der ganze Befehlssatz steht doch im beiligenden Manual beschrieben. Wichtig ist da Du die Brücke auf dem Display schliesst(Smartprotokoll)sonst wird deine Komunikation erst mal nicht gehen über RS232. Hier mal Codeschnipsel vom PC zum Edip, es gibt natürlich auch andere Varianten dieses zusenden.
1 | if($IPS_SENDER == "TimerEvent") |
2 | { |
3 | IPS_SetScriptTimer("Edip_Wetter", 0); |
4 | IPS_RunScript("Edip_Hauptmenu"); |
5 | return; |
6 | } |
7 | IPS_SetScriptTimer("Edip_Hauptmenu", 0); |
8 | IPS_SetScriptTimer("Edip_Wetter", 240); |
9 | |
10 | //Display einschalten und dimmen |
11 | XBee_SendBuffer(49578, chr(27)."DE"); |
12 | XBee_SendBuffer(49578, chr(27)."YH".chr(25)); |
13 | |
14 | //COMPort_SendText(26854, chr(27)."MT".chr(27)); |
15 | |
16 | $Sensor1 = GetValueBoolean("ks300_regensensor"); |
17 | $Sensor2 = GetValueBoolean("Regensensor"); |
18 | if ($Sensor1 or $Sensor2 == true) |
19 | { |
20 | //COMPort_SendText(26854, chr(27)."UI".chr(135).chr(47).chr(20).chr(0)); |
21 | XBee_SendBuffer(49578, chr(27)."UI".chr(100).chr(43).chr(14).chr(0)); |
22 | } |
23 | else |
24 | XBee_SendBuffer(49578, chr(27)."UI".chr(95).chr(45).chr(21).chr(0)); |
25 | |
26 | //Werte formatieren und ins Display schreiben |
27 | $Temp = GetValueFloat("ks300_temp_ist"); |
28 | $Temp = number_format($Temp, 1, ".", "."); |
29 | XBee_SendBuffer(49578, chr(27)."ZR".chr(55).chr(12)."$Temp".chr(0)); |
30 | |
31 | $Feuchte = GetValueInteger("ks300_luftfeuchte"); |
32 | $Feuchte = number_format($Feuchte, 0, ".", "."); |
33 | XBee_SendBuffer(49578, chr(27)."ZL".chr(90).chr(12)."$Feuchte".chr(0)); |
34 | if ($Temp >= 18 and $Temp <=22 and $Feuchte >= 50 or $Luftdruck <= 1014) |
hm ja schon, aber wie setzt ich das in einem C/ C++ programm um. Ich brauche ein Beispiel wie man rs 232 initialisiert komminkation ist dann klar. Ich habe leider bisher nur software mässig programiert. Bücher konnten mir auch nicht weiterhelfen gruß Raph
Versteh ich nicht, Das Edip hat doch alles an Board bis auf einen Max232. Diesen dazwischen und Du kannst mit Gott und der Welt über Edip reden. Im µC einen Uart einrichten mit RX/TX mehr ist doch nicht. Ich z.B übertrage Messdaten vom µC mit XBee auf das Display allerdings über einen PC, da ich dort auch die Daten benötige. Wie man einen Uart einrichtet ist hier ja schon zurgenüge beschrieben worden. Eventuell verstehe ich dich auch falsch.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.