Forum: Mikrocontroller und Digitale Elektronik LCD Sourcefile testen und dann hochladen


von Ingo L. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe die LCD Ansteuerung von hier:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung
um die Abfrage des Busy-Flags erweitert, sodass nun nicht pauschal 
gewartet werden muss. LCD läuft im 4 Bit Modus.

Ich würde aber gern vorm Onlinestellen im Forum die Software noch einmal 
auf anderen AVRs testen, quasi ein Pseudo-Test.

Die Software ist so geschrieben, dass sie auf Anhieb nach dem Aufbau im 
obigen Link funktionieren sollte.

Ich habe leider kein Oszi zur Hand, besitze ich privat (noch) nicht, 
deshalb wäre es ganz gut wenn jemand mal überprüfen könnte, warum das 
Delay in der Warteroutine 5µs sein muss. Ist das Delay kleiner geht 
irgendwas schief und nicht alle Zeichen kommen an. Ich kann aber das 
Timing nicht überprüfen :-(.

Beim Testen die Initialisierung nicht vergessen.

Ach ja, ich habe noch eine Funktion hinzugefügt, die eine Fixkommazahl 
formatiert, also mit Komma und führenden Nullen, ausgibt.

Die LCD_Characters ist dazu da, eigene Symbole bequem mit einbinden zu 
können.

Das Ganze habe ich auf einem Atmega48 aufm Steckbrett aufgebaut.


Viele Grüße,
Ingo

von Uwe (de0508)


Lesenswert?

Hallo Ingo,

schau mal hier :

Das ist der Standart: Peter Fleury "LCD library for HD44870 based LCD" 
[1]; zumindest bei mir und einigen anderen.

Peter PeDa hat auch eine sehr schnelle und kleine LCD Lib [2] 
geschrieben.

Link:
[1] http://homepage.hispeed.ch/peterfleury/avr-software.html
[2] 
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=102296

Deshalb denke ich, das kaum jemand den Code für Dich testen wird.

Ich danke aber trotzdem.

von Uwe (de0508)


Lesenswert?

Hallo Ingo,

noch eine Anmerkung die Arrays chrdata0[8] .. chrdata7[8] werden ALLE im 
SRAM abgelegt, da das PROGMEM (== Flash Speicher) fehlt.

Das kann bei kleinen µP zu Probleme führen, da die 64 Byte SRAM weniger 
dort vielleicht fehlen.

von Peter D. (peda)


Lesenswert?

Ingo L. schrieb:
> ich habe die LCD Ansteuerung von hier:
> http://www.mikrocontroller.net/articles/AVR-GCC-Tu...
> um die Abfrage des Busy-Flags erweitert, sodass nun nicht pauschal
> gewartet werden muss.

Daß meistens gewartet wird, hat den einfachen Grund, daß das LCD nicht 
der Flaschenhals ist. Gibt man so langsam aus, daß der Mensch es auch 
ablesen kann, belastet das LCD die CPU <1%.
Daher spart man sich den zusätzlichen IO-Pin.


Peter

von Ingo L. (Gast)


Lesenswert?

Hallo.

Ja, ok. Die Version von PeDa is aber auch mit Wartezeit, was ja 
grundsätzlich auch nicht schlimm ist. Die Variante von Peter Fleury 
kenne ich, grob. Da wir hier aber bereits eine schöne Variante, die auch 
sauber kommentiert ist, gut zu lesen und wirklich easy ist, habe ich 
gedacht, ich optimiere sie etwas auf Geschwindigkeit, damit wir sie hier 
neben der derzeitigen Version vorhalten können, ohne auf andere Seiten 
gehen zu müssen.

Wenn keiner Interesse daran hat is ja nicht schlimm. Werde es sowieso 
selber in der Firma mitm Oszi analysieren. Der Tread ist jedenfalls im 
www, wer Bock drauf hat, oder einfach nur Code braucht, kann zugreifen, 
jedoch ohne Gewähr ;-)


Grüße,
Ingo

von Ingo L. (Gast)


Lesenswert?

@ Uwe S.
Da hast du Recht, das könnte man auf jedenfall noch in den Flash packen.


@PeDa
Joa, ich denke mal so viel schnelle ist das mit dem auch BF nicht. Ich 
denke mal höchstens doppelt so schnell.



Grüße,
Ingo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.