Zitat Zitat von Anonymous
... Du willst es Dir zum Anfang aber nicht unbedingt leicht machen! Allerdings solltest Du Dich umfassend vorher informieren, damit der Start sich nicht als Sackgasse erweisst!
Informieren will ich mich hier ja garde Leicht ist relativ. Ich habe früher mit anderen Basic-Versionen anspruchsvollere Programme geschrieben. Und da musste ich mich auch erstmal einarbeiten. Ich denke nicht, das Bascom grundlegend anders ist. Sieht zumindest bis jetzt nicht so aus.

die Startadresse der 2.Zeile liegt beim HD44780/Kompatible immer auf $40. Für die 3. und 4. Zeile wird meistens ein zweiter Display-Controller verwendet oder es werden alle 40 Stellen im DD Ram ausgenutzt und auf jede 2. Zeile aufgeteilt (kannst nur austesten!)
4X20-LCDs mit 2 Displaycontrollern hab ich noch nie gesehen. Nur bei 4X27, 4X40 oder so. Dann wird das Programm halt pauschal für 4X20-LCDs mit nur einem Controller ausgelegt MEin Problem dabei ist ja nicht das ansprechen der Zeilen. Das werde ich (zumindest bis jetzt) mit Locate (X,Y) machen. Dann steht der Cursor da wo ich ihn haben will.
Meine Überlegung war nur, wenn ich das LCD in Bascom als 4X16 deklariere, aber ein 4X20 anschliesse (was ja das gleiche Pinout hat) ob es dann einfach möglich ist die letzen 4 Zeichen des 4X20 zu ignorieren.
Wie du ja schon gesagt hast, begint die zweite Zeile bei $40 bei HD44780 kompatiblen Displays. Also müsste es ja gehen.
Wären die Zeichen fortlaufend nummeriert, würde es wahrscheinlich nicht gehen. Weil dann die Adresse vom ersten Zeichen in der zweiten Zeile abhänig davon ist, ob eine Zeile 8, 16, 20 oder sonstige Zeichen hat.
Da ich ja nicht direkt in den Speicher schreiben will, sondern mit Locate positionieren will denke ich ist es egal wieviel Zeichen pro Zeile das LCD hat. Zumindest solange, wie ich 4X16 eingestellt habe und dann nicht auf einmal Zeichen 17 ansprechen will.

... mehr wie 8 zusätzliche Zeichen wirst Du im CG Ram eines HD44780 nicht definieren können.
Die reichen mir ja auch.

Du solltest Dir aber schon im Klaren darüber sein, daß die AVRs nichts mit Deinen anderen µC-Vorstellungen zu tun haben!
Sorry, ich versteh jetzt nicht, wie du das meinst.

... der HD44780 und Kompatible unterstützen alle den 4bit-Modus, einzig die Displayanschlüsse und evtl. die Kontrastansteuerung unterscheiden sich ein wenig. Und diese Verzögerungen im 4bit-Modus bekommst Du i.d.R. nicht mit.
Aber nicht jeder LCD-Software für den PC spricht das LCD im 4Bit-Modus an. Also muß ich das LCD im 8Bit-Modus betreiben, sofern ich keine Routine schreiben will, die 8Bit in 4Bit umwandelt. Ich seh auch kein praktischen nutzen dafür. Weil die 4 Pins die ich dadurch einspare nicht reichen um ein nächst kleineren AVR zu verwenden.