Hallo zusammen,
ich möchte gerne die Displayhelligkeit meines LC Displays eDIP240-7 mit
einem Bargraph einstellen. Leider weis ich nicht wie ich den
eingestellten Wert als Variable über die RS232 auf den PC geben kann.
Hier ein Ausschnitt meines Codes:
TouchMakro: TmDisplay_Helligkeit
#DL
#AL 0,1 ; Touch-Bereich löschen
#SB "DispH" ; Wert zum PC senden
#RO 0,0,239,127,0 ; Rechteck mit Muster zeichnen
#ZF 5 ; Font einstellen
#ZL 65, 10, "Diplay Helligkeit" ; Zeichenkette ausgeben
#ZF 2 ; Font einstellen
#ZL 15, 55, "5%" ; Minimalwert
#ZL 210, 55, "100%" ; Maximalwert
#ZL 120, 55, DISPH ; Wert auf Display
#BR 5, 20,30,219,50,10,100,1,1 ; Bargraph definieren
#BA 5, DISPH ; Bargraph mit Wert setzen
#AB 5 ; Bar per Touch einstellbar
#AA 5 ; Bargraph aktivieren
#AQ 1
#B 2, 5, DISPH ;Barwert automatisch senden, diesen
Befehl verstehe ich nicht. Hier sollte eigentlich die Variable DISPH zum
PC gesendet werden
#YH DispH ; Displayhelligkeit auf Wert
einstellen
Ich hoffe ihr versteht was ich meine und freue mich über jede Hilfe.
Gruß
Gast
Das sind direkt die Steuercodes, die über die RS232-Schnittstelle
laufen.
# heißt hier "ESC" = ASCII (27)
Nun hab ich wiederum einige Fragen:
- "#B 2, 5, DISPH [...] diesen Befehl verstehe ich nicht[...]"
Wieso nicht, Du hast ihn doch programmiert? Oder anders herum gefragt,
wenn Du ihn nicht verstehst, woher hast Du ihn dann?
Diese Zeichenkette, nämlich ESC B nr wert, sendet das Display
automatisch über die RS232, wenn vorher ESC A Q nr aktiviert wurde.
Was ich noch nicht verstanden habe:
WO willst Du WAS einstellen, und WOHIN sollen die Daten gesendet werden?
Verstehe ich Dich richtig, dass Du am Touch Display dessen Helligkeit
einstellen willst und das dann gleichzeitig am Display als Bargraph
und als Variable über die RS232 an den PC geschickt haben willst?
Greetz
kmt
Guten Morgen zusammen,
erst mal danke für die Antworten.
Markus, der Befehl "#B 2, nr, Wert" steht in der Doku, nur wenn ich ihn
so programmiere gibt der Compiler eine Fehlermeldung raus. In der Doku
steht die 2 für anz, nur weis ich nicht was mit anz gemeint ist.
"Was ich noch nicht verstanden habe:" ja, das hast Du richtig
verstanden. Denn ich kann nicht die Helligkeit des Display direkt mit
dem Bargraph einstellen, sondern muss dies mit dem PC machen. Wenn ich
mit dem Bargraph einen Wert einstelle, so soll dieser zum PC gesendet
werden. Dann möchte ich den Wert mit dem Befehl "#YH, Wert" wieder
zurück zum Display senden und die Helligkeit einstellen. Später soll
soll dies ein µC erledigen, nur zur Zeit ist es halt einfacher alles mit
einem Terminalprogramm zumachen.
Gruß
Rene
Guten Morgen,
>>Befehl "#B 2, nr, Wert" steht in der Doku
ja, stimmt, Tabelle Seite 16 deren Überschrift ist: "Antworten des EA
eDIP240-7 über die serielle Schnittstelle"
Soll heißen: das sendet Dein Display wenn ein Wert des Bargraph geändert
wurde. Ist klar das das Display damit nichts anfangen kann, wenn es doch
der PC (später Dein µC) per RS232 bekommt.
Guten Morgen ;-)
Genau das sehe ich auch so. "#B 2, nr , Wert" ist die Zeichenkette,
die in Deinem Terminalprogramm ANKOMMEN sollte als Rückmeldung vom
Display,
dass der Bargraph geändert wurde. Die "2" heißt nur, dass auf die
Zeichenkette "#B" 2 Bytes an Daten folgen. "anz" heißt hier einfach
"Anzahl der nun folgenden Bytes".
Verstehe ich Dich richtig:
1. Einstellen des Helligkeitswertes mittels Bargraph/Touchscreen
2. Display sendet aktuellen Bargraphwert an PC
3. PC sendet Bargraphwert an Display zurück, um Helligkeit zu ändern
Dann kannst Du den "Befehl" "#N 2, nr , Wert" einfach weglassen.
Das ist gar kein Befehl, sondern die Zeichenkette, die Dein Display
bei Änderung des Bargraphs an den PC ausgibt. Als Hexadezimalwerte
ausgedrückt, müßte dann folgende Zeichenkette bei Dir ankommen:
(ich nehme jetzt mal einen %-Wert von 0 % für den Bargraph an):
0x1B (= ESC)
0x45 (= B)
0x05 (= Bargraph 05)
0x00 (= Wert 00)
Alles klar?
Greetz
kmt
Hallo zusammen,
ja danke, jetzt habe ich's kapiert. Nun habe ich noch ein weiters
Problem. Das Display reagiert manchmal sehr träge auf Touchbefehle oder
hägt sich teilweise auf. Ich benutzte zur Zeit kein SMALL Protokoll,
kann das daran liegen?
Gruß
Rene
@Rene: JA! Wenn der Input nicht passt, kann sich das Teil aufhängen.
Habe das Display drahtlos via RS232 angebunden und lange dran gesessen,
die Verbindung fehlerfrei hinzukriegen. Bis dahin immer wieder
Abstürze... Gruss Pit9
Guten Abend und frohe Weihnachten,
ich habe auch so ein Display und möchte es gerne am ATMEGA 8 über den
UART anschließen. Bin totaler Anfänger in C-Programmierung. Hat jemand
von euch eine Prog vom UART mit SMALL_Protokoll?
Viele Grüße
Knut
Hallo!
Ich hab auch ein Problem mit diesem Display!
Folgendes: ich will ein Rechteck zeichnen anschl. dieses löschen
und dann eine Linie.
Beispiel:
int main
{
...
zeichReck(0,0,50,50);
display_clear();
zeichLinie(0,0,20,20);
...
}
Problem er zeichnet nur das Reck, dieses wird nicht gelöscht.
ich mit einem delay versucht -> auch nicht.
Wäre toll wenn mir einer weiter helfen könnte.
Danke!
Hallo zusammen
Habe hier ein fast gleiches Problem. Ich möchte einen Bargraph dazu
nutzen, die Displayhelligkeit zu verändern. Dies soll aber nicht über
den PC gehen, sondern direkt im Display ablaufen.
Hier mal wie ich den Bargraph definiert habe
#BR 1,0,112,112,120,0,100,3,10; Bargraph definieren
BR,Nummer,x1,y1,x2,y2,aw,ew,typ,linie
#BA 1,100 ; Anfangswert setzen
#AB 1 ; Bargraph 1 für Toucheingabe vorbereiten
Ich sehe im Moment den Bargraph und kann diesen auch verschieben. Nun
will ich aber gerne den aktuellen Wert auslesen um die Helligkeit zu
steuern
#YH (1-100)
Der Bargraph ist schon so deklariert, dass er Werte von 1-100 ausgibt,
aber wie bekomme ich die dort hin. Im Datenblatt habe ich nur was
gefunden wie man den Wert an den PC übertragen kann, das nützt mir aber
leider nichts :o)
Wäre toll wenn mir jemand weiterhelfen könnte
Gruss reflection
Du musst ein Touchmakro definieren, das dem Code zugewiesen wird, den
der Barcode zur Identifikation liefert.
Ein Beispiel sollte eigentlich beim Display-"Compiler" dabei sein.
Das habe ich schon verstanden, der Rest läuft auch auf dem Display. Habe
auch so eine animierte Erde gemacht die sich dreht. Weiss also schon das
ich das mit Makros lösen muss, aber aus obenstehendem Beispiel sehe ich
nur wie er mit Werten gesetzt wird und nicht wie er Werte zurückgibt,
oder sehe ich das falsch?
Gruss reflection
Vielleicht muss ich es anders schreiben. Wie kann ich in der Deklaration
von einem Slider angeben welches Makro ausgeführt werden soll?
Rein theoretisch ergeben sich ja 100 Werte die der Slider annehmen kann
(0-100). Nun müsste ich ja 100 Makros zur Verfügung haben um in jedem
Makro z.B. die Helligkeit des Display entsprechend zu setzen (wenn ich
es 1 Schrittweise möchte) Wie löst man so was? Anzeigen mit Bar ect. ist
kein Problem, also setzen eines Wertes, aber ich will genau das
umgekehrte, dass er je nach Position das Display heller oder dunkler
macht, also einen Wert zurückgibt, so ala position = BargraphStellung.
Dann könnte ich die Position Nutzen um #YH zu setzen...
Gruss reflection
probier es mal mit hoch und runterzählen der Werte.
Es gibt eine schöne Simulation, wo man das ganze testen kann.
Ich sehe allerdings keinen Sinn darin die Helligkeit ständig zuändern.
Ich setze die Helligkeit beim einschalten, wenn das Display nicht mehr
gebraucht wird, schalte ich es aus. Timer gesteuert.
Es soll halt per Menu in den Grundeinstellungen einstellbar sein. In der
Nacht soll es der User z.B. dimmen können. Und der Weg über den uP
wollte ich eigentlich nicht wählen, weil es keinen Sinn macht.
"probier es mal mit hoch und runterzählen der Werte"
Was meinst Du damit? Ich habe ja keinen Rückgabewert vom Slider, das ist
ja das Hauptproblem
Greets reflection
Also, ich bekomme es einfach nicht gebacken. Habe es jetzt anders
gelöst, oder zu mindest versucht. Verbringe an der blöden
Helligkeitsregelung bereits mehr Zeit als an dem ganzen Rest...
Ich wollte nun zwei Buttons machen mit denen ich die Helligkeit
einstellen kann. Also ein Button + einer - und dazwischen ein Bargraph
welcher einfach einen Wert anzeigt und nicht als Touch deklariert ist.
Beim PowerOn Makro wird ein erstes mal DISPH mit 60 initialisiert, damit
ich rauf und runter kann...
Hier die entsprechenden Zeilen
TmSystemSettings = 7
TmPlus = 10
TmMinus = 11
TouchMakro: TmSystemSettings
#AL 0,0
#DL
#ZL 2,2,"System Settings:"
#BR 1,20,114,100,122,0,100,3,10
#BA 1,DISPH
#UI 103,110,plus
#UI 2,110,minus
#UI 225,0,cross
#AE 0
#AT 225,0,239,15 TmMain, 1
#AT 103,110,120,125 TmPlus, 0
#AT 2,110,17,125 TmMinus, 0
#AE 1
TouchMakro: TmPlus
DISPH = DISPH + 30 ; erhöhe Helligkeit
#YH DISPH
#BA 1,DISPH
TouchMakro: TmMinus
DISPH = DISPH - 30 ; verringere Helligkeit
#YH DISPH
#BA 1,DISPH
Ich habe nun folgendes Phänomen:
Wenn ich einschalte fährt das Display auf 60% der Helligkeit zurück.
Dann gehe ich ins TouchMakro TmSystemSettings, dort ist im MOment nur
ein Titel und der Bargraph mit Tasten gesetzt. Diese sehe ich auch, die
Tasten reagieren auf das drücken (invertierte Darstellung) Drücke ich
ZUERST die Minus Taste, passiert nichts. Drücke ich ZUERST die Plus
Taste wird das Display heller und der Bargraph geht rauf. Wenn ich
einmal Plus gedrückt habe, geht dann auch Minus, aber nicht von Anfang
an. Ein weiteres Problem ist, dass ihc es nicht schaffe zweimal
hintereinander Minus oder Plus zu drücken. Ich muss immer abwechseln
(Tasten) Wenn ich zweimal die selbe Taste hintereinander drücke passiert
nur beim ersten Drücken etwas, beim zweiten reagiert zwar der Touch,
aber weder der Bar noch die Helligkeit ändern sich.
Tausche ich nun die beiden Makros TmPlus und TmMinus, dann muss ich
zuerst Minus drücken bevor ich Plus drücken kann. Ich verdrehe also
wirklich die Logik.
So, und nu wär ich glücklich wenn mir jemand sagen könnte wo der Fehler
liegt, oder einen Tipp geben.
Merci im Voraus
Gruss reflection
> Ich muss immer abwechseln> (Tasten) Wenn ich zweimal die selbe Taste hintereinander drücke passiert> nur beim ersten Drücken etwas, beim zweiten reagiert zwar der Touch,> aber weder der Bar noch die Helligkeit ändern sich.
So wie du es beschreibst hast du die beiden Tasten als Schalter mit
gegenseitiger Verriegelung definiert?
Du musst sie als Tasten definieren.
Das dachte ich auch, aber wie oben bereits im Code steht habe ich sie
als TouchTasten deklariert
#AT 103,110,120,125 TmPlus, 0
#AT 2,110,17,125 TmMinus, 0
Die Frage für mich ist langsam, was macht er genau wenn ich ein
TouchMakro in einem TouchMakro starte? Führt er es aus und springt
danach zur aufrufenden Stelle zurück oder wie funktioniert das?
Gruss reflection
Liegen da Tasten und Schalter evtl. übereinander? Soll heißen, du hast
Taster definiert ohne vorher an der selben Position die Schalter zu
löschen.
So hab ich mich mal ausgetrickst.
Nö, ist auch nicht der Fall :o)
Ich habe mich noch mit dem Support in Verbindung gesetzt. Also das was
ich zuerst wollte, Einstellen der Helligkeit über einen Slider ist NICHT
möglich. Wieso das andere nicht funktioniert weiss ich auch nicht.
Gruss
> wenn ich ein TouchMakro in einem TouchMakro starte?
Die Definitionen, die zuletzt geschrieben wurden, bleiben solange
erhalten, bis sie umdefiniert werden.
Beim Rücksprung aus einem Makro wird nichts restauriert.
Ah, na dann kann der Fehler ja nicht dort liegen. Bin jetzt halt eine
Lösung am machen wo ich 5 RadioButtons mache und so wenigstens ein paar
Stufen einstellen kann. Ist nicht schön, aber erfüllt den Zweck
Falls Dir aber doch noch was in den Sinn kommt wäre ich natürlich froh
wenn Du es mir mitteilen könntest
Greets
Ehrlich gesagt finde ich es schon ein bisschen schwach das man das nicht
kann. Wenn man schon so viel implementiert wäre das ja auch kein Prob
mehr. Das Teil hat ja sicher irgend eine Art uP drauf, oder?
Ich werde es schon an einem uP betreiben, aber ich will den halt so
wenig wie möglich mit solchen Sachen auslasten, wieso auch :o) Nun ja,
habs jetzt mit 5 Buttons gelöst, funktioniert auch.
Gruss und Danke für die Hilfe
reflection
Auf dem Teil ist ein ATMega32 nebst 32 kB RAM und dem eigentlichen
Displaycontroller T6963 untergebracht.
Eine bessere Firmware würde dem Display ungemein gut tun ...
Salu Rufus
Weisst Du, oder vielleicht jemand anderes wie man ein zusätzliches Eprom
an das Display hängt und welches man nehmen muss? Glaube mal im Netz so
was gesehen zu haben, aber finde es nicht mehr. Das wird dann über drei
Pins vom Display angehängt und sollte dann schon funktionieren wenn ich
das richtig verstanden habe. Kennt das Teil jemand?
Gruss reflection
Ha noch niemand das EEPROM erweitert? Wäre über jede Info dankbar. Kann
man da einfach eines drauf machen, dieses 24C256 oder wie das heiss?
GIbts ja von verschiedenen Herstellern, ist das immer das selbe?
Gruss reflection
Hi!
habe eine Frage zur Helligkeitseinstellung bei dem Display:
Ich versuche das Display so schnell wie möglich auf eine recht niedrige
Helligkeit zu setzen. Ideal wäre es, direkt bei/nach dem Einschalten
diese niedrige Helligkeit zu haben.
Egal was ich versuche, das Display scheint sich zunächst mit 100%
Helligkeit zu initialisieren und benötigt dann ein paar Zehntelsekunden
um auf die niedrige Helligkeitsstufe runter zu fahren.
Kann ich das Display irgendwie direkt "dunkel" initialisieren, oder muss
ich mit der hellen Zeitspanne zu Beginn leben?
reflection wrote:
> Ha noch niemand das EEPROM erweitert? Wäre über jede Info dankbar.
Mein Ansatz ist komplementaer: mein EDIP ist mit SPI an einen AVR
Prozessor angehaengt - d.h. statt EEPROM Erweiterung viel Flash
Speicher. Vorteil grosse Flexibilitaet beim Programmieren, und das EDIP
wir netzfaehig (der Prozessor ist ein AT90CAN). Bisher habe ich mich
damit um Makro Programmieren sogar druecken koennen (will ich aber nicht
mehr lange - und Probieren mit externem Programm hilft beim Vorbereiten
der Makros!).
Siehe auch Beitrag "Erfahrungen im Einsatz von eDIP240"
Hallo allerseits,
und zwar habe ich auche in Problem mit Edip, ich will das Display mit
einer Waage verbinden, derzeit weiss ich nicht wie ich das Gewicht als
Variable wiedergebe in Edip, das wars eigentlich auch, das Tochdisplay
soll also mehr oder weniger nur das Gewicht wiedergeben können. Könnte
mir da jemand weiterhelfen? Wäre sehr nett von Euch.
Mit freundlichen Grüßen