Forum: Mikrocontroller und Digitale Elektronik Atmega8535+LCD+Codevision


von Michael Sillmann (Gast)


Lesenswert?

Hallo,

habe vor ein LCD Display an meinen Controller anzuschliessen. Da ich in
Assembler nicht so wirklich gut bin und in lieber in C programmieren
will, suche ich noch ein kurzes Beispielprogramm zur Ansteuerung eines
Standard-LCD (4x20).

Habe leider in der Forumssuche nichts in C geschriebenes gefunden.

Vielen Dank!

Michael

von Sascha (Gast)


Lesenswert?

Hi,

ist doch, so glaube ich, bei Codevision dabei.

Mfg Sascha

von crazy horse (Gast)


Lesenswert?

so isses, schnell erledigt.

#asm
 .equ __lcd_port=0x12  //Port
#endasm
#include <lcd.h>

lcd_init (16);         //16 Zeichen/Zeile

Falls du ein Display mit 2 Controllern (das beliebte Pollin-Display mit
4x27 oder ein 4x40) anschliessen willst, nimmst du
#include <lcd4x40>.

Allerdings kannst du das Display nur in einer vorgeschriebenen
Reihenfolge anschliessen (Px0..Px3: Steuersignale, Px4..Px7 Datenbus)
und auch nur im 4bit-Modus betreiben. Willst/musst du das anders haben
(beim Mega8 z.B. ist ja nur der PortB vollständig verfügbar, aber da
liegen ja auch noch etliche SOnderfunktionen drauf) kannst du dir eine
eigene library basteln und die H-Datei anpassen.

von Michael Sillmann (Gast)


Lesenswert?

Danke schon mal...habs gerade im Codevision gefunden und auch schon grob
durchgeschaut.

Trotzdem nochmal eine leichte Frage:

Wie kann ich jetzt nach dem Initalisieren einfach z.B. einen Buchstaben
an einer bestimmten Position ausgeben?

Und woher bekomme ich so ein 4x40 Display? Ports sind ja eh genug frei.

von crazy horse (Gast)


Lesenswert?

lies dir mal in der Hilfe die LCD-Funktionen.
lcd_gotoxy (x,y);  //setzt die Schreibposition auf die angegebene
Spalte/zeile

lcd_putchar ('M');  //schreibt ein M an die aktuelle Position

Für ein 4x40-Display braucht man gerade mal ein einen Pin mehr (das
zweite enable-Signal)

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.