PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LCD- Ansteuerung mit ATMEGA48 funzt nicht :(



aykay
19.03.2009, 22:39
Hallo Leute!

Ich habe ein kleines Problem...mein LCD will nicht an meinem mega48.
Es handelt sich dabei um ein LM16A211 LCD mit einem HD44780UA Controller.
Das Programm wurde im BASCOM- AVR geschrieben und compiliert, anschliessend mit PonyProg übertragen. Ich habe Kontroll- Led's programmiert und angeschlossen, diese funktionieren. Also an der Uebertragung oder den Fuse- Bit's kann es nicht liegen.
Auch an den Datenleitungen zum LCD habe ich nach mehreren Leerläufen LED's angeschlossen, welche auch nach dem Schema des Simulators, in dem alles funtioniert, leuchten.
Am LCD sehe ich nur einen Cursor blinken im ersten Feld der oberen Linie. Eigentlich sollte da aber etwas stehen, was leider nicht der Fall ist.
Ich betreibe das LCD im Pin- Modus, 4- Bitig also.
Das Programm sieht so aus:



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600

Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren


Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1
Config Lcd = 16 * 2 'LCD Konfigurieren


Cls 'Löscht das LCD
Home 'Geht zum Beginn der Zeile
Upperline 'Obere Linie
Lcd "Hello World!" 'Schreibe "" auf das LCD
Waitms 1000 'Warte eine Sekunde


sbi Portb, 1 'Ist das Programm ausgeführt, zeigt diese LED dies an
End


Durch das Einsetzen in diesem Beitrag hat es das Vormat geändert, jedoch habe ich dies im Programm Korrekt - keine Syntaxfehler oder sonstige Fehler.
Könnt ihr mir sagen was hier nicht gehen soll??

Mit freundlichen Grüssen
Andi

Ceos
20.03.2009, 07:18
benutze doch die "[ c o d e ] dein code [ / c o d e ]" tags, lass einfach nur die leerzeichen weg dann bleibt der Text auch im Format auch wie im editor


"C", im BASCOM- AVR wie bitte? das hab ich nicht ganz verstanden Bascom und C sind 2 unterschiedliche sachen oder meinst was anderes ?

was für eine bibliothek hast du benutzt ? dass der cursor blinkt ist schonmal ein gutes zeichen, hast du die timings eingehalten beim initialisieren ? dem muss man doch 2-3 mal das konfigurationsbyte zusenden damit das LCD richtig funktioniert und dabei die timings möglichst genau einhalten

Magic_X
20.03.2009, 08:25
Hallo,

du hast den R/W auf Masse gelegt?

An deinem Programm ist mir jetzt spontan nicht so ganz viel Falsches aufgefallen.
Probier mal folgendes: Füge nach "Config Lcd = 16 * 2 'LCD Konfigurieren"
ein "waitms 200", also eine Verzögerung ein. Eventuell braucht die Anzeige einige Millisekunden zum Initialisieren. Schaden kann es jedenfalls nichts ;-)

Gruß
Magic

aykay
20.03.2009, 10:16
Also.. das Programm wurde in BASCOM- AVR geschrieben....ein IDE von Atmel zur Verfügung gestellt. Und wenn ich nicht alles falsch verstanden habe, schreibt man in diesem Programm mit der Sprache "C", also kein Assembler oder sonst was.

Hier ist nochmal der Quelltext:


$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren


Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1
Config Lcd = 16 * 2 'LCD Konfigurieren
Waitms 1000

Cls 'Löscht das LCD
Home 'Geht zum Beginn der Zeile
Upperline 'Obere Linie
Lcd "Hello World!" 'Schreibe "" auf das LCD
Waitms 1000 'Warte eine Sekunde


sbi portb, 1 'Ist das Programm ausgeführt, zeigt diese lED dies an
End


Also alles was ich benutze an Bibliotheken und sonstigen Include- files steht im Quelltext.
Das ist lediglich diese Datei $regfile = "m48def.dat" und die ist in der Bibliothek im Programm zu finden. Also ein Produkt von Atmel.

Ich hab jetzt diese 200ms auf 1000ms gerundet, kann ja nicht schaden und unterhalb nochmal ne Sekunde warten eingefügt, das Kontroll- LED leuchtet mir sonst zu schnell :D Der Cursor blinkt noch immer genau gleich wie vorhin schon. R/W ist auf Masse, das stimmt auch. Der Kontrastabgleich mit einem Poti geht auch wunderbar, nur meinText fehlt mir noch immer. Und soll ich die Datenleitungen welche ich nicht brauche (Db0- Db3) auf Masse legen?

MfG

Ceos
20.03.2009, 10:45
bascom ist ein "basic"-derivat, C schreibt sich erheblich anders ^^
ich seh grad bascom hat ja auch schon funktionen für LCD integriert ... mh kann cih net viel sagen ich programmier alles in c meist ohne bibliothek wo bleibt sonst der lerneffekt ^^

aykay
20.03.2009, 10:55
hehe ja ich hab mir das Buch von Helmut Erlenkötter "C, Programmieren von Anfang an" gekauft und üb mich n wenig darin.... ich habe vorhin PIC's mit Assembler programmiert und wollte einfach mal die AVR's ausprobieren, welche n paar Vorzüge gegenüber den PIC's haben

aykay
22.03.2009, 14:06
Ich habe auch schon anderee Befehle ausprobiert, nur um einmal ein Text sehen zu können.



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Waitms 1000
Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.0 , Rs = Pinc.1
Waitms 200
Config Lcd = 16 * 2 'LCD Konfigurieren
Waitms 1000

Initlcd

Cls 'Löscht das LCD
Home 'Geht zum Beginn der Zeile
Upperline
Display On 'Obere Linie
Print "Hello World!"
Waitms 1000
Cls
Lcd "hallooo"
'Schreibe "" auf das LCD
Waitms 1000

Display Off 'Warte eine Sekunde


sbi portb, 1 'Ist das Programm ausgeführt, zeigt diese lED dies an
End


...alles um sonst, nichts geht ausser diesem Cursor der ständig an erster Stelle blinkt.

Rone
22.03.2009, 14:24
Hallo!

Schau mal in der Bascom Hilfe unter "Config Lcd" wie da z.B.
der "Home"-Befehl angewendet wird.

Mfg
caargoo

aykay
22.03.2009, 18:15
Ja das habe ich mal nachgeschaut...es geht auf keine Weise...ich muss dazu sagen dass ich das LCD mal verdreht rum betrieben habe..also Pin1 = Pin14 und andersrum.
Kann es sein dass es dadurch zerstört wurde?
Aber der Cursor Trotzdem blinkt?

MelMan
23.03.2009, 13:30
Meines Erachtens feht da noch die Fontdefinition oder ist das nur bei LCDAT nötig?



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Waitms 1000
Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.0 , Rs = Pinc.1
Waitms 200
Config Lcd = 16 * 2 'LCD Konfigurieren
Waitms 1000

Setfont Font8x8

Initlcd

Cls 'Löscht das LCD
Home 'Geht zum Beginn der Zeile
Upperline
Display On 'Obere Linie
Print "Hello World!"
Waitms 1000
Cls
Lcd "hallooo"
'Schreibe "" auf das LCD
Waitms 1000

Display Off 'Warte eine Sekunde


sbi portb, 1 'Ist das Programm ausgeführt, zeigt diese lED dies an
End

$include "Font8x8.font"

patti16
23.03.2009, 13:55
setzt das ganze doch mal in ein schleife.

ausserdem würde ich das font weglasen genauso wie die wait befehle zwischen den configs


Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.0 , Rs = Pinc.1
Waitms 200
Config Lcd = 16 * 2 'LCD Konfigurieren
Waitms 1000

aykay
23.03.2009, 14:06
@ merlman: also ich habs mal so versucht aber da tut sich nix, ausser dass er mir beim compilieren 2 fehler anzeigt... error 31: invalid dadatype und error 43: file not found.

aber danke trotzdem für die mühe!

gruss

aykay
23.03.2009, 14:13
@ patti16: ja das hilft auch nix...ich hatte ja diese font sachen ja gar nicht benutzt am anfang..und die waitbefehle sollten der ganzen sache n wenig zeit lassen zu konfigurieren. die schleife bringts auch nicht, da nach einem print "" befehl die sache ja stehen sollte....

aber auch dir danke

gruss

digitali
23.03.2009, 21:35
Hallo,

"Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.0 , Rs = Pinc.1"

Ich glaube so kann das nicht funktionieren.
Wenn dann eher so:

"Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1"

Zumindest habe ich das so in der ersten Form noch nicht gesehen. Schau mal in der Hilfe unter "config lcd".

Mit freundlichen Gruessen
Digitali

aykay
24.03.2009, 17:17
Hi!

Hättest du meinen ersten Eintrag gesehen, dann wüsstest du dass es diese Version auch schon gab :D

Danke trotzdem!

digitali
24.03.2009, 20:35
Hallo,

das habe ich gelesen.

In den ersten beiden Versionen schreibst Du es richtig. Allerdings sehe ich da kein InitLcd. Aber in der Version wo Du es mit

"Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.0 , Rs = Pinc.1"

versuchst, benutzt Du dann das InitLcd. Und somit kann keine Version funktionieren.

Also ich habe nun bestimmt schon an ATMega8/16/32/128 ueber 100 HD44780 kompatible Displays in Betrieb genommen. Und wenn man sich streng an das Beispiel aus der Hilfe orientiert, dann muss das funktionieren. Und wenn nicht, dann ist das Display nicht richtig angeschlossen, JTAG noch enabled (ich weiss jetzt gerade nicht ob das beim 48er auf PortC auch der Fall ist), oder sonstwas mit der Hardware nicht in Ordnung.

Mit freundlichen Gruessen
Digitali

aykay
24.03.2009, 21:46
Hallo!
Also das hilft auch alles nichts...Ich denke mal dass ich das Teil geschrottet habe... die Leitungen haben keine Unterbrüche, die Pins sind richtig angeschlossen, die Pins richtig konfiguriert, was auf Masse muss ist auf Masse, Kontrastabgleich funktioniert auch, der Cursor blinkt am Anfang des oberen Balken zu beginn der Programms und nachdem das Programm beendet ist hat sich da nichts verändert und der Cursor blinkt wie immer...
Ich habe mir neue LCD's bestellt und werde die jetzt mal testen, villeicht hab ich da mehr erfolg!
Ich danke euch allen herzlich für die Geduld, die Hilfe und den Support!

Mit freundlichen Grüssen
AyKay

Ceos
28.04.2009, 08:27
also etwas ähnliches hatte ich auch mal .... da habe ich das initialisierungsbyte zwar 3 mal wie in der anleitung gesegndet aber das timing hat nicht gepasst ... nachdem ich die pausen zwischen den initialisierungen größer gemacht habe funktionierte es einwandfrei

aykay
28.04.2009, 16:33
also wie meinste das genau? ich soll "initlcd" 3 mal verwenden?

aykay
28.04.2009, 16:36
mein code mit den 3 init's schaut so aus momentan:



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600

Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1
Config Lcd = 16 * 2


Initlcd
Waitms 1000

Initlcd
Waitms 1000

Initlcd
Waitms 1000

Cls
Home
Upperline
Display On
Lcd "Hallo"
End


leider passiert immernoch nicht viel ausser dass das lcd nach anlegen der spannung den obersten balken schwarz färbt

Andree-HB
28.04.2009, 18:07
Hast Du Deinen MC denn intern auch auf 4Mhz gefused ?

Und Du bist Dir sicher, dass die 6 Leitungen in korrekter Reihenfolge an den richtigen Portpins liegen ?

aykay
28.04.2009, 18:41
also ich habe die E und RS leitungen vertauscht 8-[ ....jetzt tut sich gar nichts mehr am display! am ende des programmes habe ich noch eine LED angeschlossen, die wie erwartet nach 2 sekunden leuchtet, das heisst dass das programm am ende ist und auch der takt stimmt (würde die led nicht nach 2 sekunden leuchten wär was falsch)

mein code schaut so aus:



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600

Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcd = 16 * 2
Initlcd
Waitms 1000
Cursor Off

Cls

Enable Interrupts

Display On
Locate 1 , 1
Lcd "1234"
Locate 2 , 1
Lcd "4321"
Waitms 1000
sbi portb,1

End

Andree-HB
28.04.2009, 19:02
...nochmal die Frage, ob der Takt richtig gefused ist...ansonsten funktioniert`s nämlich nicht !

aykay
28.04.2009, 20:06
ja klar, sonst würd ja meine kontroll led am ende des programmes nach 2 sekunden nicht leuchten! (2* "waitms 1000" im programm)
CKSEL0 und CKSEL 1 sind angekreuzt. also CKSEL3...0 = 1100
das heisst dass beim Low Power Crystal Oscillator den bereich 3.0- 8.00 MHz gewählt ist...und ich hab n resonator dran, mit 4 MHz.

Pyro-Mike
28.04.2009, 20:39
Du sagst, du hast das Display im 4-Bit Modus angeschlossen?
muss da nicht ein
" Config Lcdbus = 4"
nach "Config LCDPin ?

Ceos
28.04.2009, 21:42
WICHTIG: dein controller darf NIE das END erreichen!!!! das ist ein undefinierter zustand ... am ende immer ne endlose schliefe machen

füge VOR dem ersten init doch ne mind. 32 ms lange pause ein bitte .. am besten 1000, wie du es schon zwischen den initialisierungen gemacht hast

möglich dass dein controller am ende des programm irgenwelche undefinierbaren zustände am ausgang hat, wenn er ins END geht, die dein display nochmals löschen

sry ich verwende C, kein bascom, ich arbeite da wesentlicher elementarer, vielleicht ist die zugrunde liegende bibliothek nicht ganz angepasst

nach einem schaden klingt es nicht direkt aber ich würde es nicht ausschliessen

aykay
28.04.2009, 21:43
ja danke, habs auch grad gesehen als die seite vorhin überlastet war und ich mal bei rn- wissen über lcd's gelesen habe! ist schon komisch dass dieser befehl in bascom nicht aufgeführt ist, bei der beschreibung wie man so ein ding in betrieb nimmt :-k
aber nun denn...er steht..uuuund....es geht immernoch nicht :(

also hier mein code:



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcdbus = 4

Config Lcd = 16 * 2
Initlcd
Waitms 1000

Enable Interrupts
Cls

Locate 1 , 1
Lcd "1234"
Waitms 1000
sbi portb,1

End

aykay
28.04.2009, 21:45
kann mir jemand ein quellcode schikcne, von dem er denkt er würde gehen? ich hab die leitungen alle mit dem multimeter ausgemessen, da stimmt also alles, kontrastabgleich geht auch, also ich weiss echt nicht an was es noch liegen könnte! muss man irgend eine libary inportieren oder wie siehts aus??

würde mich freuen wenn das endlich mal funktioniert :(

mfg
aykay

Sauerbruch
28.04.2009, 22:07
Über den Hinweis von Ceos habe ich beim lesen dieses Threads auch schon mal nachgedacht - wieso lässt Du den Controller am Schluss ins Leere laufen?

Hast Du´s schon mal mit einer Do-Loop-Schleife probiert, in der z.B. alle 100ms das LCD angesteuert wird?

(kann ja wohl nicht sein, dass das dermaßen hartnäckig nicht geht, oder??...)

Pyro-Mike
28.04.2009, 22:21
Probier mal folgenden Code, echt merkwürdig!



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600

$hwstack = 32
$swstack = 10
$framesize = 40


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Config Lcd = 16 * 2
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcdbus = 4

Initlcd
Waitms 1000

Cls

Do
Locate 1 , 1
Lcd "TEST123"
toggle portb.1
Waitms 1000
loop

End


[IronieON]
Hast du vielleicht einen Kettenbrief nicht weitergeleitet und hast deshalb 7 Jahre lang Pech oder sowas?
[IronieOFF] :-s 8-[

aykay
29.04.2009, 17:36
ja wenns nach diesen dämlichen kettenbriefen gehen würde, hätte ich noch nie ne freundin gehabt, wäre arbeitslos, seit jahren ohne kollegen, und hätte wahrscheindlich 100 mal lebenslänglich pech :D

...das traurige daran ist jedoch nur dass es immernoch nicht geht :( die led blinkt gemütlich vor sich hin währen ich hier am verzweifeln bin...also wenn ich die leitungen "RS" und "E" (während des betriebs- was man eigentlich nicht machen darf- ), vertasuche und das ganze nochmal neu starte (spannung aus/ein) blinkt der cursor an erster stelle....ansonsten passiert nichts, ausser dass der jetzt mit der led zusammen blinkt...(die verschwören sich wohl gegen mich!). mache ich diese vertauschung während des betriebs wieder rückgängig, ohne die spannung auszumachen, so blinkt der cursor an letzter stelle des displays!

ich habe sogar einen nigelnagel neuen mega48 von reichelt genommen! der war noch originalverpackt und auch der machts nicht besser als der alte... also an der hardware kanns nicht liegen..ausser am lcd....aber das ist doch komisch...

Gento
29.04.2009, 18:46
D0-D3 sind am LCD auf GND gelegt ?
Gento

aykay
29.04.2009, 19:40
jap hab ich gemacht, hilft auch nix! hat denn jemand schonmal mit so einem LM16A211 was zu tun gehabt? da muss man doch die pins 1-14 benutzen? von rechts nach links...(jetzt kommen die dummen fragen von mir, gscheits weiss ich nicht mehr zu fragen)

Gento
29.04.2009, 19:51
RW vom LCD muß auf Gnd liegen.


Ferner:
http://www.mikrocontroller.net/topic/101324

Gento

aykay
29.04.2009, 19:57
ja was die pinbelegung angeht hab ich schon 100 mal nachgenaut und die verbindungen mit dem multimeter ausgemessen, sprich es sind alle oke...diese seite hab ich allerdings schon mal gelesen...nur hat mein mega48 kein jtag und was für eine .lib brauch ich denn im bascom?

ich habe das toggle aus dem code genommen und die spannungen an den portpins des uC gemessen:

PC0: 4.5V
PC1: 0V
PC2: 4.5V
PC3: 4.5V
PC4: 0V
PC5: 0V

hier noch den code:



$regfile = "m48def.dat"
$crystal = 4000000
$baud = 9600

$hwstack = 32
$swstack = 10
$framesize = 40


Config Portc = Output 'PORTC als Ausgang definieren
Config Portb = Output 'PORTB als Ausgang definieren

Config Lcd = 16 * 2
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcdbus = 4

Initlcd
Waitms 1000

Cls


Locate 1 , 1
Lcd "TEST123"
sbi Portb,1
Waitms 1000

End

Gento
29.04.2009, 20:21
'Idiot' bist Du unbelehrbar ?

Vor Initlcd kommt das Waitms 1000
Und ansonsten steht im Code auch nur Murks.

Gento

aykay
29.04.2009, 20:35
Wie darf ich das verstehen, ich wäre unlehrbar?

Das Programm geht trotzdem noch nicht!
Wenn Du mal den ganzen Thread durchgelesen hättest, dann wüsstest Du was alles schon ausprobiert wurde.

Des weiteren ist es nun mal so dass ich in einer Ausbildung als Automatiker (Mechatroniker) bin und mir das Programmieren von Microcontroller selber beibringen musste, was bis jetzt auch gut funktioniert hat. Nur habe ich vielleicht nicht alle Grundlagen dazu vom Lehrer eingeimpft bekommen.
Dadurch verstehe ich leider nicht ganz was Du meinst mit "Murks im Programm".
Ein kleines Beispielprogramm ohne "Murks" würde ich dankbar annehmen.

MfG
aykay

Andree-HB
29.04.2009, 21:30
Kaufe Dir ein günstiges, schon zusammengebautes Board, welches auch schon eine eingebautes LCD-Anzeige hat - damit herumexperimentieren, damit Du Erfolgserlebnisse und Erfahrung sammelst, dann dort auch mal Dein Display dranhängen....

Noch mehr Tipps kann man Dir nicht geben ! Irgendwo hast Du Murks in Bauelementen, Verdrahtung oder in Software....mit obigen klammerst Du solche Probleme von vorneherein aus !

Denn so wie jetzt kommst Du nicht weiter ! Da nutzt es nix, die Hände in die Hüften zu stemmen und zu sagen "ich will aber". Nimm etwas Geld in die Hand, sonst dödelst Du noch in vier Wochen rum....

aykay
29.04.2009, 22:31
Ja da hast du grundsätzlich recht! Aber es ist mir jetzt gelungen! :D habs hinbekommen!!! JEAAAAAAH :D ich hab kein plan wieso es bis jetzt nicht funktioniert hat, als ich jedoch mal am kontrastabgleich gedreht habe hats funktionoert! ich habe den schon einmal eingestellt und abgeglichen..muss mir wohl rausgefallen sein und hab ihn dann verdreht rum eingesteckt...in der zwischenzeit muss das programm richtig geschrieben worden wein, und nun gehts :D ICH DANKE EUCH ALLEN FÜR EURE MÜHEN UND DEN VIELEN TIPPS!

finde es total cool dass ihr so viel gedult hattet und mir geholfen habt!


Mit freundlichen Grüssen

aykay

Gento
29.04.2009, 22:38
Am LCD sehe ich nur einen Cursor blinken im ersten Feld der oberen Linie. Eigentlich sollte da aber etwas stehen, was leider nicht der Fall ist.

Kontrastregler ..... wirkt auch auf den Cursor.

Witz komm raus.

Gento

Ceos
29.04.2009, 22:41
gento meint, dass in deinem code noch immer keine do loop endlosschleife am ENDE vor dem END drin ist ...

ausserdem sollst du VOR dem allerersten init ein wait von 1000 einlegen ...

aykay
30.04.2009, 10:15
ja ich habe den code nochmals geändert...es steht vor dem ende einfach "do" "loop" und dann "end"

ja als der cursor noch geblinkt hat war der poti auch noch richtig drinne einfach das programm falsch...

Andree-HB
30.04.2009, 12:10
...was mir noch einfällt - warum programmierst Du eigentlich in Bascom und überträgst per PonyProg ? Hast Du einen so inkompatiblen ISP ?

aykay
30.04.2009, 16:24
ja ich hab meinen serialprogrammer selber gebastelt :D der hat grad mal n paar z- dioden, 4...5 widerstände und 2..3 kleine kondenser...also ne primitivversion..AAAABER.......sie geht :D obs mit bascom auch geht hab ich ehrlich gesagt noch gar nicht ausprobiert...