PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LCD´s sterben wie die Fliegen...



Sauerbruch
14.04.2007, 19:24
Kann es sein, dass LCD-Displays unglaublich schnell kaputtgehen, oder mache ich nur was falsch?

Ich habe drei ANAG-VISION-Displays von Conrad (Datenblatt anbei), die alle funktioniert haben, als ich sie provisorisch mit meinem Experimentierboard verbunden habe. Jetzt habe ich ordentliche Steckverbinder drangelötet - und sie zeigen (alle drei!) nur noch schwarze Blöcke. Eines 8 von 16, die anderen beiden gleich alle 16 Stellen. Einzelne Drähte wieder drangelötet, mit dem Board verbunden - wieder das gleiche.

Ich habe übrigens äußerst schnell gelötet (mache das ja auch schon ein paar Jahre...). Thermische Schäden schließe ich mal aus.

Die Quarzfrequenz stimmt, die Anschlüsse auch (RS, E, DB4-DB7), Kontrast lässt sich super regeln - nur anzeigen tun sie nix.

Hier der Vollständigkeit halber der auf´s einfachste reduzierte Code:

$regfile = "m8def.dat"
$crystal = 3686400

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


Ddrd.6 = 1

Do
Cls
Lcd "LCD-Test"
Wait 1
Sound Portd.6 , 100 , 100
Wait 1
Loop


(Das mit "Sound" und Wait 1 ist nur um zu sehen, ob der Controller überhaupt was macht.)

Hat jemand vielleicht Erfahrung mit diesem Conrad-Display, oder noch ´ne Idee, wie man sicher feststellen kann, ob so ein Display definitiv hinüber ist ](*,) ?

SIGINT
14.04.2007, 19:47
Hi Sauerbruch,
ich halte es für sehr unwahrscheinlich, daß die Displays thermisch geschädigt wurden. Die ICs müssen ja auch das Reflowlöten überleben... die halten also schon etwas aus. Wenn du dir 100% sicher bist, daß alle Verbingungen ok sind und die Displays vorher funktioniert haben, dann wäre eine Schädigung durch ESD denkbar... vielleicht war der Lötkolben nicht gut geerdet.
Allerdings halten moderne Halbleiter schon viel aus... die wahrscheinlichkeit ist dashalb relativ gering.

Gruß,
SIGINT

Jon
14.04.2007, 19:50
Kann es sein, dass LCD-Displays unglaublich schnell kaputtgehen, oder mache ich nur was falsch?
Eigentlich halten die sehr lange. Also machst du irgendetwas falsch.


Jetzt habe ich ordentliche Steckverbinder drangelötet - und sie zeigen (alle drei!) nur noch schwarze Blöcke.
Dann wird es nicht an den LCDs liegen sondern an etwas anderem.

Das Programm sieht in Ordnung aus.

Piepse mal alle Verbindungen durch. Vielleicht stimm ja doch etwas an den Verbindungen nicht.

jon

EDIT:Mal wieder zu lange überlegt *g*

Ratber
14.04.2007, 20:44
@Sauerbruch

Nö,normalerweise sind LCDs recht robust.
Ich verbaue recht häufig welche und bis jetzt hab ich nur 2 zerstört.
Eins mochte es nicht das ich drauf rumtramle und das andere hat seltsamerweise keine 60V= vertragen.

Welche Art Leitung nutzt du und wie lang ist diese ?


Übrigens:

Auf das Initlcd sollte man nicht verzichten.
Kann in Kritischen Situationen helfen.

Dnerb
14.04.2007, 20:49
Meiner Erfahrung nach halten LCDs (HD44780 und Kompatible) einiges aus.

Ich habe sie schon verpolt und dabei einige Sekunden dran gelassen. Mußte ja erst das Proggi in den Controller laden. Und dann fiel mir ein Geruch auf. Ich habe dann den Displaycontroller abkühlen lassen (war richtig Heiß).
Das Display funktioniert heute noch.

Ich kenne jetzt Speziell die vom Conrad nicht.

Wie schon angesprochen ist evtl. der Lötokolben schuld.

Hast Du noch ein Display zum testen?

Wenn nicht, ich habe einige Displays hier. Kann Dir (sicher billiger als Conrad!) bestimmt was abgeben. Kann auch Deine 3 mal anschauen.

Melde Dich wenn interesse besteht.

Gruß Dnerb

edit: Wie schon von Ratber angesprochen sollte man INITLCD nicht vergessen, sonst tut sich bei manchen LCDs einfach nichts.
Ich habe welche die ohne InitLCD nur Müll anzeigen und andere machen gar nichts.

Sauerbruch
14.04.2007, 22:36
Also, Eure Antworten haben mich ermutigt, nochmal ordentlich im Netz rumzusuchen (verpolt hatte ich eines nämlich auch schon mal, allerdings nur für ´ne halbe Sekunde, denn ich hatte vorsichtigerweise ein Amperemeter zwischengeschaltet, und 250mA kamen mir dann doch etwas viel vor =P~ )

Und ich habe folgendes gelernt (Sprut sei Dank):

1. Pin 5 (R/W) sollte man entgegen andersautenden Aussagen überhaupt garnicht frei lassen (zumindestens hat der bei meinen Displays offensichtlich einen eingebauten PullUp). Nachdem ich R/W auf allen meinen Displays mit GND verlötet habe, zeigt das 16*2-Display alles korrekt an, und das 16*1 zumindestens schon mal die Hälfte.

2. 16*1-Displays mit einem Chip sind in Wahrheit 8*2-Anzeigen. Und da Bascom bei ConfigLCD "8*2" nicht akzeptiert, weiss ich jetzt auch, was sich in diesem Zusammenhang hinter "16*1a" verbirgt (*freu...)

Also - alles im Lot, vielen Dank auch an Dich, Dnerb, für das nette Angebot! Aber jetzt laufen alle drei Displays wieder tadellos.

Ratber
14.04.2007, 22:49
Zu 1 und 2:


Das war bis vor rund 5-6 Jahren allgemein anerkannter Standard und stand auch überall im Web so.

Leider haben einige halbseidene Modder (PC-Modding,LCD am Parport zur Statusanzeige usw.) massiv Fehlinformastionen verbreitet (Keine Ahnung aber jeder noob kopiert da beim nächsten ab) so das man Heute soviel unstimmige angaben hat.

Dabei gilt Heute wie schon vor 35 Jahrne in der Digitaltechnik das unbenutzte Eingänge definiert gelegt werden sollten.

Naja,jetzt bist du ja im Bilde.

Dnerb
14.04.2007, 23:01
Dabei gilt Heute wie schon vor 35 Jahrne in der Digitaltechnik das unbenutzte Eingänge definiert gelegt werden sollten.

*Klugscheißermodus an*

Soweit im Datenblatt nichts gegenteilges steht.

*Klugscheißermodus aus*

Killer
14.04.2007, 23:06
Hey
Wo liegen denn die häufigsten Fehlerquellen beim Anschließen?
Einen ATMega32 (16Mhz) kann ich da warscheinlich nicht für verwenden oder?

Dnerb
14.04.2007, 23:26
Hallo Killer,

Du mußt nur 6 Ports (für den 4-Bit Mode) frei haben, dann steht dem einsatz eines HD44780 kompatiblen Displays nichts im Weg. Zur Not tuts ein AT90S1200.

Das ist ja das schöne an den Controllern. Du entscheidest was an die Ports rankommt. Flexibler wie heute wars noch nie!

Gruß Dnerb

Ratber
15.04.2007, 00:02
@Dnerb


Soweit im Datenblatt nichts gegenteilges steht.

Ausnahmen bestätigen die Regel aber wie du schon sagtest stehen die dann auch in der Dokumentation drinne.



Du musst nur 6 Ports (für den 4-Bit Mode) frei haben, dann steht dem einsatz eines HD44780 kompatiblen Displays nichts im Weg. Zur Not tuts ein AT90S1200.

Es geht sogar mit noch weniger.
Wer auf absolute Geschwindigkeit verzichten kann und etwas Speicher übrig hat der kann es über I2C betreiben und vorallendingen auch an 8-Poligen Controllern wie zb. Tiny26 und natürlich Tinyx5.
Ich mach das schon ne ganze Weile so


@Killer

Sicher kannst du nen M32 nehmen.
Der hat Anschlüsse satt das es für mehrere Displays im 8-Bit Modus reicht.
Man muß sich bei Controllern nur von der Bunten Windowswelt verabschieden wo mit Rsourcen nur so umhergeworfen wird.

Killer
15.04.2007, 00:10
Ich hatte jetzt gedacht, dass für die Übertragung vom ATMega zum Display eine bestimmte Frequenz bestehen muss...aber wenn das mit dem M32 auch geht ist ja alles perfekt :-)

MfG Killer

Ratber
15.04.2007, 00:14
Ja,es gibt einige Displays bei denen gewisse Timings einzuhalten sind aber selbst die sind so unkritisch das auch ein Controller mit 1 Mhz das ohne Probleme bewältigen kann.

Bei vielen Displays besteht überhaupt kein Timing.
Dh. du kannst die Daten und Befehle sozusagen im Wochenrythmus "durchmorsen" :D

jar
15.04.2007, 10:54
Hey
Wo liegen denn die häufigsten Fehlerquellen beim Anschließen?
Einen ATMega32 (16Mhz) kann ich da warscheinlich nicht für verwenden oder?

ATmega32 und 4x20 LCD läuft prima,

im BASCOM ohne R/W , bzw, R/W auf GND
in C mit Peter Fleurys LIB will R/W auf einem Port liegen

einziges "Problem" bis jetzt, seit Umstellung auf 8MHz läuft das power on nicht richtig im LCD, nur der echte Reset vom BASCOM oder Pony via ISP läßt das LCD richtig starten, muss meine Init noch mal prüfen, obwohl bei lcd_clrscr() ist ja nix falsch zu machen ?

ich sehe aber noch nach power on, wirre Zeichen im LCD RAM die dort nix zu suchen haben, vielleicht muss ich den ganzen LCD RAM gezielt löschen, Anleitung vom LCD liegt in Fa.

SIGINT
15.04.2007, 11:03
Jo, das hab ich vor kurzem mal gemacht... ich hab mal just4fun das Delay bei einem PC-Programm auf 1s gestellt. Da taucht ein Zeichen nach dem anderen in Zeitlupe auf. Ich würde sogar wetten, daß man das Display mit Tastern (natürlich entprellt), von Hand, bedienen kann. Zum Thema I2C: Das ist doch viel zu teuer... ein Einfaches Schieberegister funktioniert auch und kostet nur den Bruchteil des PCF- Portexpanders. Interesannt wäre aber auch 1-Wire... ein Slave sollte man mit einem Atmega8 locker hinbekommen.

Gruß,
SIGINT

Dnerb
15.04.2007, 11:37
@SIGINT: die 44780er Displays kann man wirklich in Zeitlupe ansteuern.
Die erste Berührung mit den Teilen hatte ich (Oh Gott ist das lang her) mit einem Z80-System in der Berufsausbildung. Da konnte man den Z80 mit einem Taster takten und und zusehen was auf jedem Pin am Bus los ist. Die Displays haben das mitgemacht.
Aber zum Thema I²C: man muß ja keinen Portexpander benutzten, ab und zu kann man auch billig an ein Display rankommen das eine I²C-Schnittstelle schon integriert hat.

Killer
15.04.2007, 12:03
Was bedeutet wenn in der Bezeichnung von einem Display "positiv" mit vorkommt?? Gibts da auch "negativ" und beeinträchtigt das die ansteuerung in irgendeinem Maße? ;-)



ATmega32 und 4x20 LCD läuft prima
Ich hoffe doch auch Displays mit 16x2 Zeichen oder?

Ratber
15.04.2007, 12:09
@Jar


einziges "Problem" bis jetzt.......................LCD RAM gezielt löschen, Anleitung vom LCD liegt in Fa.

Initialisierst du das LCD denn auch bei jedem Programmstart ?



@Sigint


Zum Thema I2C: Das ist doch viel zu teuer... ein Einfaches Schieberegister funktioniert auch und kostet nur den Bruchteil des PCF- Portexpanders. Interesannt wäre aber auch 1-Wire... ein Slave sollte man mit einem Atmega8 locker hinbekommen.

Ja,richtig,schieberegister gehen auch.
Aber so Teuer ist I2C das nu auch nicht.
Nen Portexpander kostet gerademal 1.50 oder je nach Menge weniger Reichelt glaub ich so um die 1.70 je nach Gehäuse)
Der Vorteil ist die Adressierung ohne weitere CS-Leitungen und der Bidirektionale Betrieb (zb. LCD plus Tastatur/Drehencoder etc.) sowie ein einfaches Busprotokoll.
Ich nutze es seit Jahren gerne für die Entwicklung (LCD+Tastatur)
Da muß man mit S-Reg schon wieder mehr Leitungen investieren und verlorene Bits fallen erstmal nicht auf.
Dafür ist es ,wie du schon sagtest,natürlich superbillig.(zb. Ein 4094 für ca. 50 Cent)
Das nutze ich gerne für schnelle LED-Ansteuerungen (Lichtspielereien)

@Dnerb

Ja,mein erstes 780er Bastel-LCD hab ich aus einem alten Monitor.
Du erinnerst dich sicher.
So um 90 rum kamen ja Beleuchtete Alphanumerische LCD's in Multisyncmonitore als Statusanzeige für die Anzeigemodi (Hsync,Vsync,Wiederholrate use.) in Mode.(Verschwanden später schnell als OSD standard wurde).
Mein erster 17-Zöller hatte auch eins und als der Monitor nichtmal ein Jahr überlebt hatte (Man sollte die Teile auch nicht einfach vom Tisch schubsen) hab ich mir aus den Trümmern das LCD genommen und experimentiert.
Das habe ich übrigens immernoch hier in Betrieb auch wenn es jetzt langsam austrocknet.

Heute kann man jedemenge 2-Zeilige aus Systemtelefonen rausholen die bei Büromodernisierungen auf dem Müll landen.


@Killer


Was bedeutet wenn in der Bezeichnung von einem Display "positiv" mit vorkommt?? Gibts da auch "negativ" und beeinträchtigt das die ansteuerung in irgendeinem Maße?


Ich kann mir jetzt zwar was dabei denken aber gib doch einfach mal nen Beispiel.



Ich hoffe doch auch Displays mit 16x2 Zeichen oder?

1x8 bis 4x40 gehen alle ohne Probleme.
Ich betreibe auch einige 2x24 unter Bascom.Wird anstandslos akzeptiert.

jar
15.04.2007, 12:45
@Jar

einziges "Problem" bis jetzt.......................LCD RAM gezielt löschen, Anleitung vom LCD liegt in Fa.
Initialisierst du das LCD denn auch bei jedem Programmstart ?


ja, Fehler gefunden, es war (wie immer) eine nichtinitialisierte Variable, die wurde erst nach dem nächsten sekunden Update initialisiert, deswegen half auch kein DELAY...

ja immer daran denken, Variablen sollten definierte Zustände haben

Killer
15.04.2007, 12:47
Das Display das ich mir holen möchte heißt vollständig: "Textdisplay STN Grau positiv". Das geht doch hoffentlich auch?

Dnerb
15.04.2007, 12:58
Ich habe alle gängigen Displays von 1x8 bis 4x40 hier und auch testweise schon angesteuert. Funktioniert Problemlos. Ebenso "Exoten" wie das 4x27 von Pollin (übrigens ein Superteil), da muß man eben ein bissel selber mitdenken beim Zeilenadressieren. "LOCATE (2-4) , 1" geht z.B. in die Hose...
Einen ganz speziellen Exoten habe ich mal auf ebay bekommen:
Links 5 Zeichen, rechts daneben 2x5 übereinander und ein paar einzelne Segmante als Trennungsstrich kann man auch ansprechen. Da ging ein Abend drauf bis ich raus hatte wie die einzelnen Segmente adressiert werden.
Also Leute, ruhig bleiben solange ein (wirklich) HD44780 oder kompatibler drauf ist.

Ratber
15.04.2007, 13:07
@Killer

Ja,wie ich mir schon dachte.
Das "Positiv" bezieht sich auf die Darstellung.
Normalerweise werden Zeichen sozusagen "schwarz auf Weiß" dargestellt.
Das nennt man dannn "Positiv"

Invertierte Darstellung wie sie seit einiger Zeit in Mode ist wird meist als "Negativ" bezeichnet.


@Dnerb


4x27 von Pollin (übrigens ein Superteil)

Ja,davon hab ich auch schon einige verbastelt.
Meist als Großanzeigen ala "Big Digit".
Für den Preis sogut wie unschlagbar

Killer
28.04.2007, 22:27
Es gibt ja (abgesehen von der 4 oder 8Bit Übertragung) mehrere Übertragungsmöglichkeiten vom Atmel zum LCD. Welche ist denn so die Beste/Nicht-Aufwendigste zum Programmieren??

MfG Killer

Dnerb
28.04.2007, 22:39
Wenn Du Bascom nimmst ist es völlig egal.

Allerdings ist die Aussenbeschaltung eben unterschiedlich aufwendig zu realisieren. Da ich mit Ports gerne knausere, nehme ich den 4-Bit Mode.

Man kann das LCD ja auch an eine SRAM-Adresse legen, da brauchst man aber wieder eine Adressdekodierung und ausserdem ist das ja auch nur bei den Atmels mit Speicherinterface sinnig.

Wenn Du natürlich alles von Hand machen willst, dann ist 8-Bit das einfachste.

Gruß Dnerb

Killer
28.04.2007, 22:49
Ich versuche die 4Bit Variante bereits mit dem 2. Display. Aber das Einzigste was ich bisher zu Gesicht bekommen habe sind nir ein paar Vierecke, welche auf dem Display blinken und meistens nur auf der rechten Seite. Kannst du mal deinen Quellcode (in BASCOM) hier posten?
Dann kann ich mal gucken ob ich irgendwas falsch gemacht habe...

MfG Killer

Dnerb
28.04.2007, 23:03
Wenn Dus ganz genau machen willst:




Config LCDMODE = PORT

Config LCDBUS = 4

Config Lcdpin = Pin , E = Portd.1 , Rs = Portd.3 , Db7 = Portd.7 , Db6 = Portd.6 , Db5 = Portd.5 , Db4 = Portd.4

Config Lcd = 20*4

Initlcd



Aber eigentlich reicht auch wenn Du es in den Compiler Settings entsprechend einstellst.

Dann brauchst Du nur noch:




Initlcd



Nach dem Init mache ich immer ein "CLS".

Hatte mal ein Display das es unbedingt wollte.

Gruß Dnerb

Killer
28.04.2007, 23:11
Also bis hierhin im Quellcode hab ich alles wie bei dir, funktionieren tuts aber immernoch nicht. Das ist ja jetzt mein 2. Display und dass beide kaputt sind ist doch eigendlich unwarscheinlich oder?

MfG Killer

Dnerb
28.04.2007, 23:24
Ohne weitere infos kann ich keinen Tipp mehr geben, weils sonst nur pures herumraten wäre.

Ich benötige mindestens: Code, genauer Displaytyp, Beschaltung.

Ohne das machts leider keinen Sinn.

Gruß Dnerb

Killer
28.04.2007, 23:32
Das Display das ich momentan verwende ist dieses:http://www.conrad.de/goto.php?artikel=181664
Der Aufbau der Schaltung ist (nach mehrmaligem Prüfen) genau die wie die hier https://www.roboternetz.de/wissen/index.php/Bascom_und_LCD%27s aufgebaut. Die Codes zum Testen sind eigendlich nur die, die auch in Wiki drinne stehen!
Ist schon irgendwie seltsam... :-k

MfG Killer

Ratber
29.04.2007, 01:18
Im Wiki steht ja immernoch "LCD-Display" :D


@Killer

Eine weitere Ursache kann deine Spannungsversorgung sein.
wie Dnerb schon sagte: ojne nähere Infos ist das was für die Glaskugel

darwin.nuernberg
29.04.2007, 14:11
Evtl. bringst du die Pins am LCD durcheinander:

Schau's dir mal genau an:
https://www.roboternetz.de/phpBB2/album_thumbnail.php?pic_id=1436
Bild gross anzeigen (https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=1436)

Von Links nach rechts:
14-13-12-11-10-9-8-7-6-5-4-3-2-1 und dann 16-15


https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=1435

Killer
29.04.2007, 14:53
Wie schnell und wodurch kann ein derartiges Display denn den Geist aufgeben?

MfG Killer

darwin.nuernberg
29.04.2007, 15:05
Wie schnell und wodurch kann ein derartiges Display denn den Geist aufgeben?

MfG Killer

sehr schnell wenn z.B. die Versorgung verpolt wird,
oder wenn an einem Ausgang z.B. bei spez.Modulen welche eine neg. Spannung für z.B. den Displaykontrast liefern eine andere (pos.) Spannung einspeist,
oder man sich sont irgendwie nicht an die Spezifikationen hält.

Daher ist IMMER das "richtige" Datenblatt des Herst. heranzuziehen.


Wenn man sich nicht daran hält, KANN es zerstört werden.

Ratber
29.04.2007, 15:09
Ja,da sind wir wieder bei der Eingangsfrage und die Antwort ist dann wieder recht Pauschal.

Spannungsspitzen auf der Versorgung oder an den Steuersignalen.
Ein schwingender Spannungsregler (100nF vergessen usw.)
Zu hohe Spannung oder auch mal eine schleichende Negative so das die internen Ports langsam "Zerfressen" werden.
Auch denkbar sind unterschiedliche Versorgungsspannungen und die dadurch resultierenden Ausgleichsströme.
Falsche Signale also Signalkollisionen (zb. Beim Lesen des Displays die Ports gegensätzliche Pegel vom Steuernden Gerät.)

Es reicht sogar schon eine leichte EMV-Unverträglichkeit (Handy oder andere "Strahler" in der Nähe.)


usw.


Da kann man wie gesagt nur raten.


Edit:

Da war ich zu langsam :D

darwin.nuernberg
29.04.2007, 15:18
OFF TOPIC



Eins mochte es nicht das ich drauf rumtramle und das andere hat seltsamerweise keine 60V= vertragen.


Ja ist auch saublöd dass die ekeltronik das nicht abkann.

Ich hab mein (Firmen-) Notebook mal auf der RS232 Schnittstelle mal mit AC230V bestromt (nur ein paar ms bis die Haussicherung flog) 8-[

Hat es aber auch nicht ausgehalten

So ein Gerümpel..... :-&

Killer
30.04.2007, 18:24
Dann muss es kaputt sein. Ich habe die Schaltung unendlich mal überprüft, neu gebaut, verschiedene Übertragungsmöglichkeiten probiert, und die Programme ebenfalls unendlichmal neu programmiert (natürlich auf die Übertragungstechnik angepasst). Das einzige das MAL kommt, sind wild zuckende Striche, Punkte und Vierecke. Ich glaube das Display ist im A****!!! :-(

MfG Killer

timo1105
01.06.2007, 09:26
Hallo!
Lese gerade durch Zufall diesen Beitrag,Ich habe auch so ein LCD von Conrad, jedochhandelt es sich dabei um das 16*4. Ich habe ähnliche Probleme wie oben geschildert wurde.

Wenn ich R/W auf GND lege und diesen Code:

$regfile = "m8def.dat"
$crystal = 16000000


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




Do
Cls
Lcd "Hallo"
Wait 1
Loop
eingebe, dann zeigt er zwar "hallo" an aber das Display blinkt sozusagen im 1 sekunden Takt.
Lasse ich die wait 1 weg und schreibe nur cls und lcd in die do-loop schleife, dann flimmert das Display.
Wenn ich DO-Loop ganz weglasse, dann sind nur schwarze Balken zu sehen.

Das komische ist jetzt das, das Display mit dem RN-Control Atmega8-Besipielprogramm super läuft (Bis auf verschiebungen in den Zeilen).

Initlcd hilft auch nicht wirklich. Wo muss das eigentlich in meinem Code stehen?

Was mache ich falsch`?

Mfg
Timo

lorcan
01.06.2007, 10:04
Moin,
schreib mal das 'Cls' und das 'Lcd "hallo"' vor die Schleife, Dein Programm läuft in einer Endlosschleife und beschreibt das Display ständig neu!

Gruß Lorcan

timo1105
01.06.2007, 10:37
Hi!

Es ist schon irgendwie komisch...


$regfile = "m8def.dat"
$crystal = 16000000

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




Cls
Lcd "hallo"



Do
Loop

schreibe ich nach dem lcd"..." eine do-loop schleife ohne Inhalt funktioniert das LCD einwandfrei:-)
lasse ich sie weg, zeigt mir das Display schwarze Balken an. Ab und zu kommt das "hallo" zum Vorschein.

Ist das normal:-)??

Dirk
01.06.2007, 12:35
Hallo timo1105,


schreibe ich nach dem lcd"..." eine do-loop schleife ohne Inhalt funktioniert das LCD einwandfrei:-)
lasse ich sie weg, zeigt mir das Display schwarze Balken an. Ab und zu kommt das "hallo" zum Vorschein.
Ist das normal:-)??

Sag 'mal, ist dein Programm eigentlich vollständig?
Wenn du kein komplettes Programm schreibst, kann auch das LCD nicht richtig funktionieren.

1. Ein Bascom-Programm endet mit END
2. Wenn du das LCD testen willst, und die Anzeige sichtbar stehen bleiben soll, ist DO-LOOP eine gute Wahl, denn da hält das Programm dann in einer Endlosschleife an. Aber auch nach DO-LOOP sollte man noch ein END einfügen.
3. Nimmst du weder DO-LOOP noch END, kommt es zu permanentem Neustart und das LCD zeigt nix Sichtbares oder Flimmern.

Gruß Dirk

timo1105
01.06.2007, 13:34
hi!
stimmt, dass end hatte ich vergessen.
ansonsten ist alles ok.

Timo

E-Fan
04.06.2007, 14:35
Da ist nichts komisch und an Deinem Display ist auch nichts kaputt.
Deinen Fehler hat man Dir ja schon gezeigt.

Um korrupte Funktionen zu vermeiden sollte in einer Do-Loop Schleife auch mindestens ein "nop" (Assembler für "no operation") stehen.