| |
|
|
| Laut diesem Thread: [...] kann man wohl ein folgendes Display:
Display HD44780 mit 2x16 Zeichen 8Bit ein Controller Schaltbild: [...]
betreiben:
Maik Borchardt, URL=www.rgh-soft.de/forum01/read.php?f=6&i=5949&t=820, ZEITPUNKT=12.11.2009 14:35
... das delay ist als pause gedacht KompilierenMarkierenSeparierenDEF @OUT32(2) ! "INPOUT32.DLL", "Out32"
DEF @INP32(1) ! "INPOUT32.DLL", "Inp32"
Def delay(1) !"KERNEL32","Sleep"
declare portaddr%,portbyte&, Control%,Data%
declare EN%,RS%,RW%
cls
Portaddr%=$378
DATA%=Portaddr%
Control%=Portaddr%+2
proc set_control
PARAMETERS EN%,RW%,RS%
EN%=abs(EN%-1)
PortByte&=inp32(CONTROL%)
Portbyte&=setbit(Portbyte&,0,EN%)
Portbyte&=setbit(Portbyte&,1,RW%)
Portbyte&=setbit(Portbyte&,2,RS%)
out32(CONTROL%,portbyte&)
delay(20)
endproc
proc befehl
parameters byte&
RS%=0
set_control 1,RW%,RS%
out32(DATA% , byte&)
set_control 0,RW%,RS%
endproc
proc Zeichen
parameters byte&
RS%=1
set_control 0,RW%,RS%
out32(DATA% , byte&)
set_control 1,RW%,RS%
print chr$(byte&);
endproc
proc lcd_init
rw%=1
initialaisierung
befehl($000f)
befehl($0001)
cls
locate 1,1
befehl($0038)
endproc
lcd_init
zeichen ord("T")
zeichen ord("e")
zeichen ord("s")
zeichen ord("t")
zeichen ord("l")
zeichen ord("a")
zeichen ord("u")
zeichen ord("f")
befehl %11000000 sprung zweite zeile
locate 2,1
zeichen ord("b")
zeichen ord("e")
zeichen ord("s")
zeichen ord("t")
zeichen ord("a")
zeichen ord("n")
zeichen ord("d")
zeichen ord("e")
zeichen ord("n")
waitinput
Xp Home Profan 7.5
Sowas macht bestimmt Spass, vlt. macht mal einer ein Video.
Aufgenommen in Hardwarebastelecke [...] |
|
|
| |
|
|
|
Maik Borchardt | Hallo...
in den letzten 3 tagen habe ich mich mit diesem Thema beschäftigt, naja intensiver als bisher. Ich hatte bis dato um Datenleitungen einzusparen über I²C-bus (Seriell 2 Datenleitungen) gehändelt bisher. Kurz um... David hatte evtl. um ein Video gebeten. Leider hab ich nur ein Olles Motorola handy mit CAM, die Qualität ist nicht die Beste, aber ich denke man kann erkennen was so gemacht wird ect.
Ich lese ein paar system infos aus, und zeige diese auf dem Display an. Dazu habe ich eine "Progressbar" funktion gebastelt um Balkengrafiken darstellen zu können. Da die Matrix 5x7 ist für eigene Zeichen muß man ein paar einschränkungen in kauf nehmen. es mußten natürlich ein paar eigene Grafiken in den Displayspeicher geschoben werden. Insgesamt kann man bis zu 8 eigene Zeichen im Display Ram speichern und nach bedarf drauf zugreifen.
Das video könnt ihr hier (clipfish) sehen [...]
Außer die BAR funktion habe ich noch ein paar kleine Funktionen gemacht BAR Zeile_x, SPalte_y,WERT,MAXWERT,LängeaufDisplay
ein Locate Zeile_x,Spalte_y,"Ausgabetext" left Zeile_X,"Ausgabetext" center Zeile_x,"Ausgabetext" right Zeile_x,,"Ausgabetext"
und ein paar andere Routinen...
Es wird ein VUMeter angezeigt (Musikpegel) der wert wird über die BASS.DLL abgefragt wie ggf. zu erkennen ist, besteht eine gewisse Trägheit, ist ggf. noch Optimierungs Fähig, oder evtl. fällt es nicht mehr so auf wenn das Programm als eigenständige EXE läuft statt im "ausführ Modus"... Ich habs dann mal eben getestet..japp die trägheit zur Musik ist in Compilierter weise tatsächlich geringer, aber nicht ganz weg.
Tschia was soll ich sonst sagen.
Sind externe bauteile Notwendig??? Nicht unbedingt, auf die Potis habe ich verzichtet, und den jeweiligen PIN auf MASSE (GND) gelegt evtl sollte man nen kleinen Transistor BC587 o.ä als schalter fürs Display einbauen, und diesen über den einen noch freien ausgang steuern, zum ein und ausschaten des Display selber. macht sinn, muß aber nicht unbedingt sein.
Naja Davids Überschrift ist nicht ganz 100% richtig.
es sollte heißen
HD44780-Kompatible LCDs Ansteuern die kompatiblen gibt es in ausführung von 1x8 bis 8x40 soweit ich weiß, ggf. sogar noch mehr
Das hier ist aber nur bis maximal 4x20, da es sich hier um 1Prozessor je Display handelt bei Displays mit mehr als insgesamt 80 Zeichen sind zwei Prozessoren auf den Displays verarbeitet und da sieht es dann mit der Ansteuerung dann doch etwas anders aus.
So nu aber genug fürs erste.... wenn jemand Interesse oder fragen hat... einach melden...
Gruß Maik |
|
|
| |
|
|
|
| Nett! Wie verhält es sich mit USB? |
|
|
| |
|
|