PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LCD an ATmega32



tuttle64
26.08.2012, 13:17
Hallo allerseits
Ich versuche gerade ein LCD-Modul 16x4 von Conrad im 4 Bit Mode an einen ATmega32 anzuschliessen. Hierzu gehe ich nach dem Schaltplan auf Abb. 3.25 auf Seite 53 aus dem Buch "Roboter selber bauen" vor. Was mir unklar ist, wie soll man die Pins 1, 2 und 3 vom LCD verbinden? Aus Copyright-Gründen kann ich die Abbildung hier nicht posten. Jedenfalls soll Pin 1 auf Masse gehen, Pin 2 auf 5 V und Pin 3 über einen Potentiometer. Wie die übrigen Pins 4, 5, 6, 11, 12, 13 und 14 des LCD mit dem ATmega32 verbunden werden sollen ist klar ersichtlich. Diese gehen alle auf Port C.

Kampi
26.08.2012, 13:50
Hallo,

Pin 1 ist GND. Den kannst du ganz normal mit der Masse verbinden. Bin 2 ist Vcc. Diesen legst du an +5V.
Pin 3 ist für den Kontrast da. Die Spannung an diesem Pin regelt die Helligkeit des LCDs. Ein Poti hat ja drei Anschlüsse. Einen der beiden äußeren verbindest du mit +5V, den anderen mit GND und den mittleren dann mit Pin 3 vom LCD. Je nachdem wie du das Poti an +5V und GND legst bestimmt die eine oder die andere Drehrichtung die Helligkeit, sprich wenn du die Pins vertauscht musst du auch andersrum drehen damit es dunkler wird.
Aber das ist für die Funktion nicht so wichtig-

Rone
26.08.2012, 13:51
Was mir unklar ist, wie soll man die Pins 1, 2 und 3 vom LCD verbinden?
Jedenfalls soll Pin 1 auf Masse gehen, Pin 2 auf 5 V und Pin 3 über einen Potentiometer.

Was ist unklar wenn Du Dir die Antwort auf Deine Frage selbst gibst?

MfG
Rone

tuttle64
26.08.2012, 14:43
Hallo,

Pin 1 ist GND. Den kannst du ganz normal mit der Masse verbinden. Bin 2 ist Vcc. Diesen legst du an +5V.
Pin 3 ist für den Kontrast da. Die Spannung an diesem Pin regelt die Helligkeit des LCDs. Ein Poti hat ja drei Anschlüsse. Einen der beiden äußeren verbindest du mit +5V, den anderen mit GND und den mittleren dann mit Pin 3 vom LCD. Je nachdem wie du das Poti an +5V und GND legst bestimmt die eine oder die andere Drehrichtung die Helligkeit, sprich wenn du die Pins vertauscht musst du auch andersrum drehen damit es dunkler wird.
Aber das ist für die Funktion nicht so wichtig-

Wenn Du von Pin 1 sprichst, meinst Du Pin 1 von Port C? Ich frage, weil im Beispielcode nur die Display-Pins gesetzt werden. Mit einem Poti hatte ich auf einem Steckbrett das Vergnügen, etwas zu spielen.

021aet04
26.08.2012, 14:50
Pin 1-3 sind die vom Display. Bei einem Display (und auch anderen ICs,...) brauchst du Versorgung (VCC bzw positive Versorgungssppannung und GND) und die Steuerleitungen. Bei einem Display hast du zusätzlich noch Anschlüsse für Kontrast, Hintergrundbeleuchtung,...

Port C ist ein Ausgangsport des µC. Dort darfst du nur die Steuerleitungen vom LCD und eventuell noch die Hintergrundbeleuchtung (mit Vorwiderstand), wenn der Strom niedrig genug ist, anschliesen.

GND vom LCD verbindest du mit GND vom µC, VCC vom LCD verbindest du mit VCC vom µC (+5V) und den Kontrast wie bei verschiedenen Plänen mit einem Poti (oder Spannungsteiler, der aber nicht einstellbar ist).

MfG Hannes

Kampi
26.08.2012, 14:54
Wenn Du von Pin 1 sprichst, meinst Du Pin 1 von Port C? Ich frage, weil im Beispielcode nur die Display-Pins gesetzt werden. Mit einem Poti hatte ich auf einem Steckbrett das Vergnügen, etwas zu spielen.

Nein die Beschreibung bezog sich auf das LCD.
Im Beispielcode werden nur die Displaypins gesetzt, weil die Spannungsversorgung vom Display nicht vom MIkrocontroller gesteuert wird.
Die Angabe der Pins vom Display benötigt das Programm, sprich Bascom, damit der Compiler weiß welche Pins nachher welche Signale führen müssen.

tuttle64
26.08.2012, 15:12
Nein die Beschreibung bezog sich auf das LCD.
Im Beispielcode werden nur die Displaypins gesetzt, weil die Spannungsversorgung vom Display nicht vom MIkrocontroller gesteuert wird.
Die Angabe der Pins vom Display benötigt das Programm, sprich Bascom, damit der Compiler weiß welche Pins nachher welche Signale führen müssen.

Ist es üblich, dass bei einem LCD die Spannungsversorgung nicht vom Mikrocontroller gesteuert wird? Ich stelle mir vor, ein LCD wird ja oft über Power On/Off geschaltet und muss ja nicht gesteuert werden.

Als Software Entwickler (nicht Basic) habe ich mit Bascom noch die kleinsten Probleme.

Meine Unklarheiten haben sich geklärt. Danke für die Hilfe.

021aet04
26.08.2012, 15:25
Bei LCDs gibt es meist ein Kommando mit dem man das Display abschalten kann. Warum willst du eigentlich das Display abschalten? Wenn du wirklich das Display abschalten willst würde ich eher mit einem PNP Transistor oder P-Fet die Zuleitung vom LCD (VCC) unterbrechen. Den Fet/Transistor kannst du vom µC steuern.

MfG Hannes

tuttle64
27.08.2012, 10:38
Bei LCDs gibt es meist ein Kommando mit dem man das Display abschalten kann. Warum willst du eigentlich das Display abschalten? Wenn du wirklich das Display abschalten willst würde ich eher mit einem PNP Transistor oder P-Fet die Zuleitung vom LCD (VCC) unterbrechen. Den Fet/Transistor kannst du vom µC steuern.

Abschalten muss ich gar nichts. Die Idee war eher, dass Displays bekanntlich Stromfresser sind und es deshalb nicht schadet, wenn man diese bei Nichtgebrauch ausschaltet. Jedenfalls, danke für die Tipps.

Ich habe noch eine Frage: Wenn ich für die 5 V vier Akkus a 1.2 V verwende, dann habe ich keine maximale Spannung von 5 V zur Verfügung. 4.8 V sollten trotzdem genügen?

Kampi
27.08.2012, 11:31
Abschalten muss ich gar nichts. Die Idee war eher, dass Displays bekanntlich Stromfresser sind und es deshalb nicht schadet, wenn man diese bei Nichtgebrauch ausschaltet. Jedenfalls, danke für die Tipps.

Ich habe noch eine Frage: Wenn ich für die 5 V vier Akkus a 1.2 V verwende, dann habe ich keine maximale Spannung von 5 V zur Verfügung. 4.8 V sollten trotzdem genügen?

Der Stromfresser an LCDs ist das Backlight und nicht das Display selber (bezogen auf den gesamten Stromverbrauch).
Das was du per Kommando abstellen kannst ist das Display, nicht das Backlight.
Ob 4,8V genügen musst du dem Datenblatt entnehmen aber ich denke mal ja. Die meisten Displaycontroller kommen auch mit 3,3V aus (wobei das nicht immer stimmt auch wenn es im Datenblatt steht.....schon eigene Erfahrungen mit gemacht.....).
Auf dem Datenblatt von deinem LCD müsste eine minimale Versorgungsspannung angegeben sein. Guck da mal nach.

tuttle64
27.08.2012, 11:58
Gemäss Datenblatt müssen mindestens 4.7 V vorhanden sein. Da die Spannung bei den Akkus relativ schnell nachlässt, sind 4.8 V wohl keine gute Lösung.

Kampi
27.08.2012, 12:49
Was spricht gegen eine 9V Batterie mit Low Drop Regler?

tuttle64
27.08.2012, 15:58
Was spricht gegen eine 9V Batterie mit Low Drop Regler?

Da es bei den Akkus fast jede mögliche Spannung ausser 5 V gibt, tendiere ich auch gegen diese Lösung.

tuttle64
10.09.2012, 14:03
Ich habe noch eine Frage zur Verbindung vom Mikrocontroller zum LCD. Hierzu habe ich ein 10 poliges Flachkabel mit einem 2x5 Pfostenstecker verbunden. Diese dient als Verbindung zum Mikrocontroller resp. zum Wannenstecker im Port C. Auf der anderen Seite habe ich die Kabel entisoliert und möchte diese mit dem LCD verlöten. Funktioniert diese Lösung überhaupt und falls ja, ist das eine gute Lösung?

Hierzu ist mir die Pinbelegung im Wannenstecker von Port C nicht ganz klar. Wo liegen die Pins für Portc.0 bis Portc.5?

Hubert.G
10.09.2012, 16:59
So eine Verbindung über diese Kabel haben sich als nicht sehr haltbar erwiesen. Die Drähte reißen an den Lötstellen sehr schnell ab.
Du musst das Kabel, am besten mit Heißkleber, am LCD fixieren, sodass es sich nicht mehr bewegen kann.
Wie die Verbindung Port.C zum Wannenstecker ist, kann ich dir mangels Schaltbild nicht sagen.

tuttle64
10.09.2012, 22:50
So eine Verbindung über diese Kabel haben sich als nicht sehr haltbar erwiesen. Die Drähte reißen an den Lötstellen sehr schnell ab.
Du musst das Kabel, am besten mit Heißkleber, am LCD fixieren, sodass es sich nicht mehr bewegen kann.

Danke für den Tipp mit dem Heißkleber.

Die Pins verlaufen mit dem Wannenstecker hochgestellt und mit der Kerbe links immer von links oben nach rechts unten d.h. der oberste linke Pin ist Pin 1, daneben Pin 2 etc. Den Bestückungsplan und die Belegung findet man unter http://www.rn-wissen.de/index.php/RN-Control. Ich habe ein paar Tests über Port D mit zwei LEDs auf einem Steckbrett gemacht und konnte so die Belegung überprüfen.

Kampi
10.09.2012, 23:04
Der Stecker besitzt die Standard RN-Norm als Belegung, sprich Pin 1 ist PortX.0, Pin 2 ist PortX.1......Pin 8 ist PortX.7, 9 ist GND und 10 +5V.
Bei dem Wannenstecker ist Pin 1 durch ein Pfeil am Gehäuse markiert oder wenn du auf die Kerbe guckst links.
Was genau musst du jetzt noch wissen ;)?

tuttle64
10.09.2012, 23:39
Im Moment ist alles klar. Die Spannung liegt am LCD an und ich sehe zwar nur Vierecke, aber immerhin kann ich die Helligkeit über den Poti einstellen. Da ich jetzt auch die Pinbelegung weiss, kann ich morgen die Datenleitungen verbinden. Bei Problemen melde ich mich wieder und wenn es geklappt hat ebenfalls.

021aet04
11.09.2012, 07:58
Das du nur Vierecke siehst ist klar, da das Display noch nicht initialisiert wurde. Steuerst du das Display im 4Bit oder 8Bit Modus an? Ich habe auch vor kurzem mit Displays angefangen. Zuerst mit einem 2x16LCD, jetzt habe ich ein EA W404B-NLW (http://www.lcd-module.de/pdf/doma/4_40.pdf) (4*40 LCD) und ein EA DOGS102W-6 (http://www.lcd-module.de/deu/pdf/grafik/dogs102-6.pdf) (Grafik LCD) bestellt und ist heute angekommen. Ich muss es aber noch testen und eventuell noch eine Lib schreiben.

Viel Erfolg bei der Displayinbetriebnahme.

MfG Hannes

tuttle64
11.09.2012, 10:36
Das du nur Vierecke siehst ist klar, da das Display noch nicht initialisiert wurde. Steuerst du das Display im 4Bit oder 8Bit Modus an? Ich habe auch vor kurzem mit Displays angefangen. Zuerst mit einem 2x16LCD, jetzt habe ich ein EA W404B-NLW (http://www.lcd-module.de/pdf/doma/4_40.pdf) (4*40 LCD) und ein EA DOGS102W-6 (http://www.lcd-module.de/deu/pdf/grafik/dogs102-6.pdf) (Grafik LCD) bestellt und ist heute angekommen. Ich muss es aber noch testen und eventuell noch eine Lib schreiben.

Ich gehe nach dem Buch "Roboter selber bauen" von U. Sommer vor und dort wird ein 16*4 LCD im 4bit Modus angesteuert. Als IDE verwende ich aber nicht Bascom, sondern Atmel Studio, da ich in C programmiere. Als Roockie habe ich noch wenig Erfahrung mit dem ATmega32 und da die Hürden zahlreich sind, bin ich in diesem Forum. Ich wünsche Dir ebenfalls viel Erfolg.

021aet04
11.09.2012, 10:53
Ich habe die einzelnen Funktionen aus dem Buch "Basiskurs R8C/13" (http://www.elektor.de/products/books/microcontrollers/basiskurs-r8c-13.316362.lynkx) von Elektor, da ich mit dem R8Ctiny, das in einer Elektor Ausgabe war, gearbeitet habe habe ich mir das Buch gekauft. Jetzt arbeite ich nur noch mit den AVR Controllern. Das kleine LCD (2x16) habe ich von einem Gerät ausgebaut, deswegen habe ich es gehabt. Das große wird etwas aufwändiger anzusteuern sein, da es 2 Controller hat. (Zeile 1/2 übernimmt ein Controller und Zeile 3/4 der Andere). Zum Debuggen reicht aber aktuell das 2x16. Muss noch etwas anderes planen/bauen, da ist das Display von Vorteil.

MfG Hannes

tuttle64
14.09.2012, 15:46
Ich habe das LCD über ein Steckbrett mit Steckbrücken mit dem ATmega32 verbunden und alle Verbindungen zwischen den Pins auf dem ATmega32 mit dem LCD mit einem Multimeter auf Durchgangsprüfung erfolgreich getestet. Die Verbindungen sind so wie im Buch auf dem Schaltbild Seite 53. Hier ist der Bascom Code


'LCD-Test.bas
$regfile = "m32def.dat"
$crystal = 16000000 '16Mhz Qzarz
$baud = 9600 'UART auf 9600 Baud

'Controller Pins für LCD Ansteuerung Konfigurieren
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcd = 16 * 4 'Type des LCD´s 16 Char und 4 Zeilen
Initlcd 'LCD high level Initzialisierung
Cursor Off 'Cursor ausschalten
Cls 'LCD löschen

Enable Interrupts 'Globale IRQ´s ein

Locate 1 , 1 'erste Zeile an Position 1
Lcd "16x4 LCD Display"
Locate 2 , 1 'LCD Ausgabe Zeile 2
Lcd "-------------------" 'Ausgabe

End

Das Programm konnte ich erfolgreich kompilieren und übertragen. Leider erscheinen auf dem LCD immer noch die dunklen Vierecke und ansonsten tut sich nichts. Was ist falsch?

Hubert.G
14.09.2012, 15:52
Das R/W des LCD bei diesem Programm auf GND liegen, muss ist schon klar?

tuttle64
14.09.2012, 20:59
Das R/W des LCD bei diesem Programm auf GND liegen, muss ist schon klar?

R/W resp. Pin 5 ist direkt mit Masse auf dem Steckbrett verbunden.

021aet04
14.09.2012, 22:06
Ich habe einen Atmega32 hier, ich könnte eine Hex erstellen und es testen. Anschließend könnte ich es hochladen. Du könntest es aber auch hochladen und ich werde es testen.

MfG Hannes

Rone
14.09.2012, 22:35
JTAG ist aus?

MfG
Rone

tuttle64
15.09.2012, 10:56
JTAG ist aus?

Ja, "1: JTAG disabled"

@Hannes: Im Anhang findest Du das Hex- und das Sourcefile. Danke für den Test.

radbruch
15.09.2012, 11:10
Hallo

Hier das Setup für mein 20x4-LCD mit 4-Bit-Ansteuerung:

Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.0 , Rs = Portc.1
Config Lcd = 20 * 4
Config Lcdbus = 4 (Aus https://www.roboternetz.de/community/threads/48131-Gro%C3%9Fe-Zeichen-auf-16%2A2-LCD?p=463605&viewfull=1#post463605)

Vielleicht hilft's.

Gruß

mic

021aet04
15.09.2012, 16:59
Ich werde es testen, es könnte aber sein das du die Frequenz ändern musst, da ich keinen 16Mhz Quarz habe und kein Bascom verwende. Ich programmiere in C mit dem AVR Studio.

MfG Hannes

021aet04
15.09.2012, 18:31
Ich habe es getestet. Funktioniert ohne Probleme. Ich habe es mit dem internen 8Mhz Oszillator und einem 2x16 LCD getestet.

Ich würde eher auf vertauschte Leitungen, schlechte Leitungsverbindung o.Ä. tippen.

MfG Hannes

tuttle64
15.09.2012, 18:33
Ich werde es testen, es könnte aber sein das du die Frequenz ändern musst, da ich keinen 16Mhz Quarz habe und kein Bascom verwende. Ich programmiere in C mit dem AVR Studio.

Ich habe das LCD mit Bascom programmiert, da ich ausschliessen wollte, dass der Fehler in der Software liegt. Kannst Du mir Dein C Sourcecode rüberbeamen?

Als Greenhorn habe ich mich mit der Verbindung vom LCD auf Port C vertan. Könnte sein, dass ich den Bug dort entfernen kann. Bin trotzdem dankbar für den Quellecode in C.

021aet04
15.09.2012, 19:03
Ich kann dir den Quellcode geben.

Die eigentliche Routine ist:

#include "HD44780.h"

void LCD_Ctrl (unsigned char data)
{

PORTB &= ~(1<<RS);

//erstes Nibble

PORTC = ((data & 0xF0)>>4);
PORTB |= (1<<EN);
asm volatile ("nop");
PORTB &= ~(1<<EN);

//zweites Nibble

PORTC = data & 0x0F;
PORTB |= (1<<EN);
asm volatile ("nop");
PORTB &= ~(1<<EN);

_delay_us(100);

}

void LCD_Home (void)
{
//Display löschen und auf Homeposition setzen
LCD_Ctrl (0x01);
_delay_ms(1);
LCD_Ctrl (0x02);
_delay_ms(5);
}

void LCD_Data (unsigned char data)
{
_delay_us(100);

//erstes Nibble

PORTC = ((data & 0xF0)>>4);
PORTB |= (1<<RS);
PORTB |= (1<<EN);
asm volatile ("nop");
PORTB &= ~(1<<EN);

//zweites Nibble

PORTC = data & 0x0F;
PORTB |= (1<<RS);
PORTB |= (1<<EN);
asm volatile ("nop");
PORTB &= ~(1<<EN);

PORTB &= ~(1<<RS);

_delay_us(100);
}

void LCD_Init(void)
{
DDRC |= 0x0F; //PC0 - PC3 als Ausgang
DDRB |= (1<<PB6) | (1<<PB7); //RS und EN als Ausgang

_delay_ms(15);
LCD_Ctrl (0x28);

_delay_ms(5);
LCD_Ctrl (0x28);

_delay_ms(1);
LCD_Ctrl (0x28);

/* 0b00001DCB
0 1
D: Display
aus ein
C: Cursor
aus ein
B: Blinken
aus ein
0x0F: Display ein, Cursor sichtbar, Blinken ein
0x0E: Display ein, Cursor sichtbar, Blinken aus
0x0C: Display ein, Cursor unsichtbar, Blinken aus

*/
_delay_ms(1);
LCD_Ctrl (0x0C);

_delay_ms(1);
LCD_Ctrl (0x01);

_delay_ms(1);
LCD_Ctrl (0x02);

_delay_ms(5);

}

void LCD_Pos (unsigned int zeile, unsigned int spalte)
{
LCD_Ctrl (0x80 + spalte - 1+ 0x40 * (zeile - 1));
_delay_us (100);
}

void LCD_String (char text [20])
{
unsigned int i=0;

while ((!(text[i] == 0)) & (i < 20))
{
LCD_Data (text[i]);
i++;
}
}

void LCD_Integer (unsigned int data)
{
unsigned char a;

a = (data % 10000)/1000; //Tausender
LCD_Data (a + 48);

a = (data % 1000)/100; //Hunderter
LCD_Data (a + 48);

a = (data % 100)/10; //Zehner
LCD_Data (a + 48);

a = data % 10; //Einer
LCD_Data (a + 48);

}

Ich habe 1:1 vom Buch "Basiskurs R8C/13" von Elektor genommen (nur Ports,... an den AVR angepasst).

In der HD44780.h sind nur andere Headerdateien, die man benötigt (z.B. damit man "PORTX",... nutzen kann), und es ist noch RS bzw EN definiert.

Die einzelnen Funktionen sind:
LCD_Ctrl => wird verwendet um das LCD einzustellen (Kommandos senden), LCD wird gelöscht und Cursorposition wird auf Home gesetzt
LCD_Data => wird verwendet um Daten an das LCD zu senden, damit etwas angezeigt wird
LCD_Init => stellt die benötigten Pins auf Ausgang, stellt das LCD ein
LCD_Home => löscht das Display und setzt den Cursor auf die Grundposition (Zeile 1, Spalte 1)
LCD_Pos => springe zu Cursorposition
LCD_String => übergibt einen String an das LCD
LCD_Integer => übergibt eine Zahl von "0000" bis "9999" an das Display, inkl. auftrennen der einzelnen Stellen

Das Beispiel von dir würde dann in etwa so aussehen (die Headerdateien,... fehlen noch, die Main funktioniert aber so):



.........

int main (void)
{
LCD_Init;
LCD_String ("16x4 LCD Display");
LCD_Pos (2, 1);
LCD_String ("----------------");
}

tuttle64
16.09.2012, 19:43
Ich werde zum Lötkolben greifen und das LCD mit einer Stiftleiste versehen. Damit sollte die Verbindung zu einem Steckbrett ohne Probleme möglich sein.

tuttle64
07.10.2012, 04:19
Mit grosser Freude kann ich endlich aufatmen: Mit der Unterstützung von http://newbiehack.com/MicrocontrollerTutorial.aspx habe ich mein 16x4 LCD zum Laufen gebracht habe. Ein grosses Danke auch an Euch für die Beiträge hier in diesem Strang.

Zur Zeit läuft noch alles auf einem Steckbrett und im 8-bit Modus, egal, ich kann Strings übermitteln und ausgeben. Da ich keine vernünftige Doku zur Programmierung des LCD gefunden habe, werde ich etwas experimentieren müssen. Bis bald.

021aet04
07.10.2012, 11:11
Hat es einen Fehler oder mehrere Fehler gegeben?
Vielleicht hilft dir der Link weiter http://www.pacificdisplay.com/lcd_mod_if.htm
Es gibt auch 2 Links zu PDF Dateien, eventuell hilft dir das weiter.

MfG Hannes

tuttle64
07.10.2012, 12:37
Hallo Hannes
Woran es vorher lag, kann ich immer noch nicht sagen. Über den fertig aufgebauten ATmega32 Controller Board und dem Bascom-USB-ISP Programmer wollte es einfach nicht. Ich habe es dann genau wie im angegebenen Tutorial mit einem Pocket Programmer und einer selbstgelöteten Verbindung zu einem Steckbrett mit einem ATmega32 Chip versucht, den C Code mit WinAVR eingegeben, kompiliert und übertragen und siehe da, es tut!

23393

(Noah und Dario sind die Namen meiner Söhne). Kleiner Schönheitsfehler: Der Cursor ist sichtbar.

Mir ist zur Zeit noch nicht klar, ob die Programmierung eines LCD wirklich so komplex sein muss, wie im Tutorial mit dem Mister LCD sein muss. Danke jedenfalls für die Links.

tuttle64
20.10.2012, 11:34
Es geht weiter mit dem nächsten Projekt: Nachdem schön längere Zeit das Buch "AVR-Mikrokontroller in C programmieren" im Regal steht, habe ich etwas darin geblättert und die Vorgaben bis und mit Peripherie zusammengesteckt. Dort gehört zum Basissystem auch ein 2 x 16 LCD Display. Leider hat mein Hardware-Shop heute geschlossen so dass ich die Teile erst am Montag besorgen kann.

Ich muss sagen, das Thema Programmer wird im genannten Buch mehr als dürftig behandelt. Ich hatte das Glück, dass ich bereits den Pocket Programmer über ein selbstgebasteltes SPI Interface verbinde und den verwendeten ATmega8 so ansprechen kann.

Thomas E.
23.10.2012, 08:26
Mir ist zur Zeit noch nicht klar, ob die Programmierung eines LCD wirklich so komplex sein muss, wie im Tutorial mit dem Mister LCD sein muss.
Im 4-bit-Modus sollte es wesentlich einfacher sein.