Das mit dem wiederstand kapier ich jetzt nicht so.
Ich könnte dir ein LCD-Proggi geben, das ist aber auf meine Norm gesetzt, deshalnb müsstest du die Ports angleichen, wär' das was?
Hallo, sicherlich nervt es vereinzelt die profis das hin und wieder nervige simple fragen auftauchen. nun auch hinweise auf die suchoptionen sind wahrlich etwas überflüssig. ich Suche einen der mir ein kleines programm schreiben kann. es geht hierbei nur darum das ich einmal verstehe wie man das 2x16 LCD Display ansteuern kann. klar sind beispielprogramme hier und da hilfreich,jedoch nicht immer. ich versuche über eine if anweisung einen sprung zu einer lcd ausgabe zu realisieren,aber ohne erfolg.auch beim versuch ein fertiges beispielprogramm umzubasteln führte mich mehr zu anderen erfolgen als zu dem was ich benötige. ich versuche eine lampencontrol zu realisieren,E-technisch kein thema jedoch das signal bei defekt soll eben am LCD display erscheinen. das AD Signal ist kleiner 10 welches am LCD DIsplay eben ausgeben soll "Lampe defekt" welches auch beim größer 10 eingang wieder vom LCD gelöscht werden soll.(CLEAR) bitte helft mir... wenn auch nur tips.
thx
mago
PS: noch ne andere frage, wenn der eingang unter 10 (von 255) ist dann ist doch die spannung kleiner.ich verwendete einen transistor der GND schaltet... und habe den IN stecker am Colektor nach einem Wiederstand geschalten.dieser wiederstand dann ist an der spannung. somit ist doch das signal IN immer zur masse oder? transistor C - E Strecke wird somit gemessen ?!?!?! müßte dann auch ca 200mV sein ~ <10 von 255
Das mit dem wiederstand kapier ich jetzt nicht so.
Ich könnte dir ein LCD-Proggi geben, das ist aber auf meine Norm gesetzt, deshalnb müsstest du die Ports angleichen, wär' das was?
Back on the road again...
Falls ihr wissen wollt, was ich so in meiner roboterfreien Zeit gertieben hab: www.plasmaniac.de.vu
Code:' ___ __ __ ' | | | \ | | | | | \ ' | | | | --- | | |--| |--- ' |___ |___ |__/ \___/ | | | \ define a 97 define b 98 define c 99 define d 100 define e 101 define f 102 define g 103 define h 104 define i 105 define j 106 define k 107 define l 108 define m 109 define n 110 define o 111 define p 112 define q 113 define r 114 define s 115 define t 116 define u 117 define v 118 define w 119 define x 120 define y 121 define z 122 define lcd byteport[2] define rw port[13] define rs port[14] define enable port[15] define buffer byte define parameter byte define zahl word define ziffer byte define jahr byte define tage byte gosub initialisierung pause 10 #sync if year<97 then beep 150,50,0 else goto sync beep 150,25,25 #loop gosub lcd_out goto loop #lcd_out parameter=1 gosub whichline parameter=e-32 gosub writeletter parameter=s gosub writeletter parameter=32 gosub writeletter parameter=i gosub writeletter parameter=s gosub writeletter parameter=t gosub writeletter parameter=32 gosub writeletter zahl=hour ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter parameter=58 gosub writeletter zahl=minute ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter parameter=58 gosub writeletter zahl=second ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter if day<>tage then goto date tage=day return #date parameter=32 gosub writeletter parameter=a gosub writeletter parameter=m gosub writeletter parameter=32 gosub writeletter #mo if dow>1 then goto di parameter=m-32 gosub writeletter parameter=o gosub writeletter parameter=n gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter goto trennteil #di if dow>2 then goto mi parameter=d-32 gosub writeletter parameter=i gosub writeletter parameter=e gosub writeletter parameter=b gosub writeletter parameter=s gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter goto trennteil #mi if dow>3 then goto do parameter=m-32 gosub writeletter parameter=i gosub writeletter parameter=t gosub writeletter parameter=t gosub writeletter parameter=w gosub writeletter parameter=o gosub writeletter parameter=c gosub writeletter parameter=h gosub writeletter goto trennteil #do if dow>4 then goto fr parameter=d-32 gosub writeletter parameter=o gosub writeletter parameter=n gosub writeletter parameter=n gosub writeletter parameter=e gosub writeletter parameter=r gosub writeletter parameter=s gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter goto trennteil #fr if dow>5 then goto sa parameter=f-32 gosub writeletter parameter=r gosub writeletter parameter=e gosub writeletter parameter=i gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter goto trennteil #sa if dow>6 then goto so parameter=s-32 gosub writeletter parameter=a gosub writeletter parameter=m gosub writeletter parameter=s gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter goto trennteil #so if dow>7 then goto trennteil parameter=s-32 gosub writeletter parameter=o gosub writeletter parameter=n gosub writeletter parameter=n gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter #trennteil parameter=32 gosub writeletter parameter=d gosub writeletter parameter=e gosub writeletter parameter=n gosub writeletter parameter=32 gosub writeletter zahl=day ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter parameter=46 gosub writeletter zahl=month ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter parameter=46 gosub writeletter zahl=year ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter if day=30 and month=1 then gosub geburtstag return #geburtstag parameter=2 gosub whichline parameter=h-32 gosub writeletter parameter=e gosub writeletter parameter=r gosub writeletter parameter=z gosub writeletter parameter=l gosub writeletter parameter=i gosub writeletter parameter=c gosub writeletter parameter=h gosub writeletter parameter=e gosub writeletter parameter=n gosub writeletter parameter=32 gosub writeletter parameter=g-32 gosub writeletter parameter=l gosub writeletter parameter=u gosub writeletter parameter=e gosub writeletter parameter=k gosub writeletter parameter=w gosub writeletter parameter=u gosub writeletter parameter=n gosub writeletter parameter=s gosub writeletter parameter=c gosub writeletter parameter=h gosub writeletter parameter=32 gosub writeletter parameter=z gosub writeletter parameter=u gosub writeletter parameter=m gosub writeletter parameter=32 gosub writeletter parameter=49 gosub writeletter parameter=52 gosub writeletter parameter=46 gosub writeletter parameter=g-32 gosub writeletter parameter=e gosub writeletter parameter=b gosub writeletter parameter=u gosub writeletter parameter=r gosub writeletter parameter=t gosub writeletter parameter=s gosub writeletter parameter=t gosub writeletter parameter=a gosub writeletter parameter=g gosub writeletter #initialisierung lcd=off parameter=&h38:gosub command lcd=&b00000010 tog enable tog enable parameter=&h28:gosub command parameter=&h0c:gosub command #clear parameter=&h02:gosub command parameter=&h02:gosub command return #whichline if parameter=1 then parameter=&h80 if parameter=2 then parameter=&hc0 goto command #command buffer=off goto write_ #writeletter buffer=&b00100000 #write_ lcd=buffer or (parameter shr 4) tog enable tog enable lcd=buffer or (parameter and &h0f) tog enable tog enable return
Back on the road again...
Falls ihr wissen wollt, was ich so in meiner roboterfreien Zeit gertieben hab: www.plasmaniac.de.vu
das mit dem wiederstand ist so gemeint, ein stromkreis der mit der C-control sensorspannung betrieben ist.zwischen den 5V und dem GND ist eine Collektor Emitter strecke,am collektor ist ein 1KOhm Wiederstand. an diesem Collektor hängt mein Signal IN an die Control. dieses gemessene signal müsste also nicht die am wiederstand abfallende spannung messen,sondern die die über dem transistor am C - E abfallen.
(ca. 260mV)
nun und ich versuche eben bei einem signal (wenn dieser oben erwähnte stromkreis durch den transistor geschlossen wird.) auf dem display auch auszugeben das es dieses signal ist. je nachdem wie ich den stromkreis nenne. bin leider mit LCDs derzeit auf neuland. danke an matthias werde mal dein progi versuchen zu nutzen.
thx
Also nen Analogausgang auf'm Display Ausgeben? Kein Problem. Wenn du willst, kann ich dir heute noch eins Posten. Du musst mir nur die Genaue Belegung des LCDs auf dem Applikationboard sagen.
Back on the road again...
Falls ihr wissen wollt, was ich so in meiner roboterfreien Zeit gertieben hab: www.plasmaniac.de.vu
....geschafft... die daten fürs display sind die vom applikationsboard (beispielprogramme) habs aber mit ASCII Codes gemacht.
...
define lcd_port byteport[2]
define lcd_rs port[14]
define lcd_rw port[13]
define lcd_e port[15]
define lcd_buf byte
define lcd_param byte
define Eingang AD[8]
gosub LCD_INIT
pause10
#LOOP
if Eingang >10 then goto LOOP
if Eingang <10 then goto Ausgabe
#Ausgabe
lcd_param = 1
gosub LCD_GOTOLINE
lcd_param = 84
gosub LCD_WRITECHAR
lcd_param = 69
gosub LCD_WRITECHAR
lcd_param = 83
gosub LCD_WRITECHAR
lcd_param = 84
gosub LCD_WRITECHAR
if Eingang >10 then gosub LOOP
if Eingang <10 then goto Ausgabe
'*****LCD Interface*****
...
jedoch weiß ich nicht ob mein original programm optimal ist... hab da noch durchs löschen eben beim zustandsänderung das flackern des lcds durch das gosub lcd_init (löschen des displays auch)
wenn du mal mein programm ansehen magst würd ichs dir gern mal schicken. weiß nicht so recht wie ichs hier so poste wie du.
PS: der Eingang AD[8] ist meine selbstgebaute Lampencontrol die bei defekter Lampe ein Signal ausgibt. Möchte das in mein Auto später über eine AVR ATMEL128 überwachen lassen.(Alle Lampen) Möglichst über unterschiedliche wiederstrände (addierend) so das ich nur ein analog eingang verwenden kann. *g*
greetz
und danke für die hilfe.[/code]
Um das so zu schreiben muss du "2 schreiben.Code:" den text und "
Hier ist der code:
Um einen Buchstaben zu schreiben, musst du einfach nur schreiben:Code:define lcd byteport[2] define rw port[13] define rs port[14] define enable port[15] define buffer byte define parameter byte define zahl word define ziffer byte define zaehler word define a 97 define b 98 define c 99 define d 100 define e 101 define f 102 define g 103 define h 104 define i 105 define j 106 define k 107 define l 108 define m 109 define n 110 define o 111 define p 112 define q 113 define r 114 define s 115 define t 116 define u 117 define v 118 define w 119 define x 120 define y 121 define z 122 define ad1 ad[8] gosub initialisierung pause 10 #loop zahl=ad1 gosub lcd_out goto loop #lcd_out parameter=1 gosub whichline ziffer=zahl/100 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*100 ziffer=zahl/10 parameter=ziffer+48 gosub writeletter zahl=zahl-ziffer*10 ziffer=zahl parameter=ziffer+48 gosub writeletter return #initialisierung lcd=off parameter=&h38:gosub command lcd=&b00000010 tog enable tog enable parameter=&h28:gosub command parameter=&h0c:gosub command #clear parameter=&h02:gosub command parameter=&h02:gosub command return #lcd_shift parameter=&b00011100 gosub command pause 8 goto lcd_shift #whichline if parameter=1 then parameter=&h80 if parameter=2 then parameter=&hc0 goto command #command buffer=off goto write_ #writeletter buffer=&b00100000 #write_ lcd=buffer or (parameter shr 4) tog enable tog enable lcd=buffer or (parameter and &h0f) tog enable tog enable return
parameter=m
gosub writeletter
Wenn der buchstabe groß geschrieben werden soll, muss du noch -32 dranhängen.
Back on the road again...
Falls ihr wissen wollt, was ich so in meiner roboterfreien Zeit gertieben hab: www.plasmaniac.de.vu
Mist, eigentlich sollte da: " [ c o d e ] " den text und " [ c o d e ] " stehen. Die Leerzeichen sind dazu da, dass nicht wieder das ganze umgewandelt wird.
Back on the road again...
Falls ihr wissen wollt, was ich so in meiner roboterfreien Zeit gertieben hab: www.plasmaniac.de.vu
Lesezeichen