LCD Problem

fiatx

Neues Mitglied
22. Jan. 2011
14
0
0
Sprachen
Hallo,

ich dreh noch durch

habe ein 2*20 LCD an einen Atmega8 angeschlossen
Code:
$regfile = "m8def.dat"
$crystal = 1000000

Config LCD = 20*2

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

Cls

Cls
waitms 100
Locate 1,1
waitms 10
Lcd "FZ"

end

soweit läuft alles aber wenn jetzt im Ausgabetext irgendwo ein A steht wird der Text kurz angezeigt und verschwindet dann.

also wenn ich

Locate 1,1
Lcd "A"

mache anstelle von FZ oider irgendwas anderes verschwindet der Text sofort wieder

egal ob ich die Ausgabe in eine Endlosschlefe lege oder nich es Funktioniert alles andere wie locate oder Cursor an/aus blinken usw.

nur wenn ich im Text ein A drin habe geht nichts mehr?

habe ich irgendwas übersehen oder was ist da los?

lg sven
 
Hi Sven,

Hallo,

ich dreh noch durch
ei ei ei ... na da wolln wir mal sehen ...

habe ein 2*20 LCD an einen Atmega8 angeschlossen
Code:
$regfile = "m8def.dat"
$crystal = 1000000

Config LCD = 20*2

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

Cls

Cls
waitms 100
Locate 1,1
waitms 10
Lcd "FZ"

' ==== DIESE STELLE IST INTERESSANT ===

end

soweit läuft alles aber wenn jetzt im Ausgabetext irgendwo ein A steht wird der Text kurz angezeigt und verschwindet dann.

also wenn ich

Locate 1,1
Lcd "A"

mache anstelle von FZ oider irgendwas anderes verschwindet der Text sofort wieder

egal ob ich die Ausgabe in eine Endlosschlefe lege oder nich es Funktioniert alles andere wie locate oder Cursor an/aus blinken usw.

nur wenn ich im Text ein A drin habe geht nichts mehr?
das ist also dein gesamtes Programm ?

habe ich irgendwas übersehen oder was ist da los?
ist das WIRKLICH dein GESAMTES Programm ?? Wenn ja, dann hast du was
ganz entscheidendes übersehen ;)
Ein Mikrocontroller ist _kein_ PC ! Er beendet den Programmablauf nicht
einfach nur weil da ein End steht. Setz an die Stelle wo ich "Interessant"
reingeschrieben habe mal 2 Zeilen rein ...
Code:
do
loop
und dann probier es nochmal ...

Gruß
Dino
 
Hallo Sven!

Ist das nur ein Auszug aus deinem Programm, oder ist das wirklich alles?

Abgesehen von der Zeile:
Code:
Config LCDbus = 4
die hier überflüssig ist

und diese Zeile:
Code:
waitms 10
die zwischen Locate und LCD auch überflüssig ist
kann ich nichts finden, was dein beschriebenes Phänomen hervorrufen sollte.


Um was für ein Display handelt es sich denn?
Besteht dein Programmcode vielleicht doch noch aus anderen Programmteilen?

Grüße,
Cassio
 
Hi,

also das mit dem End ist anscheinend doch so das Bascom dann alle Arbeiten
stopt. ...
Bascom-End.png
Also müßte theoretisch doch noch irgendein anderer Bock drin sein.
Früher hieß "End" eigentlich nur das ab dieser Stelle für den Compiler nichts
interessantes mehr kommt und man ab da auch irgendwelche Dokus
reinschreiben konnte. Naja ... ok ... Bascom ist da anscheinend "etwas anders" :rolleyes:

Gruß
Dino
 
Hallo Sven!

Ist das nur ein Auszug aus deinem Programm, oder ist das wirklich alles?

Abgesehen von der Zeile:
Code:
Config LCDbus = 4
die hier überflüssig ist

und diese Zeile:
Code:
waitms 10
die zwischen Locate und LCD auch überflüssig ist
kann ich nichts finden, was dein beschriebenes Phänomen hervorrufen sollte.


Um was für ein Display handelt es sich denn?
Besteht dein Programmcode vielleicht doch noch aus anderen Programmteilen?

Grüße,
Cassio

Ja das ist alles ich hatte noch mehr aber ich habe alles wieder raus genommen um zu Testen ob etwas falsch läuft.

Hatte auch als Hauptschleife ein do loop ohne inhalt.

gleiches Problem auch wenn ich die anzeige in ein do loop setzte mit und ohne pause, gleiches Problem.

Auch wenn ich die Taktfrequenz extern nehme gleiches Problem.

Der Controller war feefused, konnte ihn aber wieder mit meinem mysmart usb MK2 retten.

Habe ihn auch Testweise in ein Pollinboard gesteck und da läuft er normal.

Das Display ist von Pollin und ist HD 44 irgendwas kompatibel.


Also egal was ich mache wenn ein A bei der ausgabe dabei ist geht nichts mehr?
 
Ja das ist alles ich hatte noch mehr aber ich habe alles wieder raus genommen um zu Testen ob etwas falsch läuft.

Hallo !

Frag mich bitte nicht warum das so ist, aber ich habe mit dieser Vorgehensweise in letzter Zeit meine Probleme unter BASCOM.

Ich habe hier z.B. auch so ein paar Programme die mir ständig einen Fehler melden.... obwohl gar nichts mehr vorhanden ist. :hmmmm:
Hat vielleicht mit der CFG-Datei für das Programm zu tun.... oder was auch immer. :cool:

Aus diesen Erfahrungen heraus nehme ich zum Testen immer eine komplett NEUE Datei!
Dort werden die zu prüfenden Inhalte neu eingetragen, kompiliert und dann ausprobiert.


Es soll jetzt kein Werturteil sein, aber......
Wenn du das Display von Pollin hast, dann kann es ja auch mal defekt sein. ;)
Ich habe hier gestern auch ein nagelneues kleines 16x2 aus den Schrank genommen, dass ich vor Monaten mal bei Pollin gekauft hatte.
Tja.... da habe ich leider Pech gehabt. Das Display ist definitv defekt. :cool:
Für einen Umtausch ist es schon zu lange her und außerdem ist diese Type nicht mehr lieferbar. :mad:


Ich überlege nun gerade, was du noch testen könntest.
Normalerweise würde ich bei unerklärlichen Problemen immer die Hardware checken.
Anschlüsse und Verbindungen prüfen und ggf. neu machen.
Manchmal spielen einem Wackelkontakte oder temporäre Übergangswiderstände einen mächtigen Streich.

Grüße,
Cassio
 
mache anstelle von FZ oider irgendwas anderes verschwindet der Text sofort wieder
Bist du sicher, dass es bei jedem Zeichen passiert?
Es könnte z.B. sein, dass du zwei benachbarte Pins verbunden hast und das LCD dann resettet. Je nach ASCII Code des Zeichens liegen ja nicht alle Leitungen auf High.
Im Programm kommt dann kein Initlcd mehr und es wird nichts mehr angezeigt.
Probier doch mal sowas:
Dim Zeichen As Byte
'Zeichen = 65 'Ascii Wert vom "A"
Zeichen = 32 'ASCII Wert vom " "
Do
Initlcd
LCD CHR(Zeichen)
Wait 1
Incr Zeichen
Loop


und schau mal, welche stehen bleiben und welche nicht.

HBA
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)