PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu LCD Ansteuerung.



Decca
14.03.2005, 15:41
Hallo alle miteinander!!!

Immer wenn ich nicht mehr weiter wußte habe ich meine Frage ins Forum gestellt und mir ging ein Licht auf. Nun ist es wieder einmal so weit.
Ich habe das Display nach der mc-projekt.de Anleitung angeschlossen.
(Display: Batron BT22005)
Wenn ich Spannung anlege erscheint auch ein schwarzer Balken, also kann ich von einen funktionierenden Display ausgehen und die Fehler mal wieder bei mir suchen!
Bei der mc-projekt.de Seite wird es schön erklärt aber es hat nicht funktioniert.
Hat jemand ein Programm für WinAVR von euch für einen atmega8 wo er das Display vollständig initialisiert und dann irgendwelche Zeichen überträgt?
z.B. könnte ja roboternetz in einer Zeile stehen.
(Display wird in 4-Bit Modus an PortD betrieben)

MFG Decca

pebisoft
14.03.2005, 17:43
hallo geht unter diese addresse von peter fleury " http://homepage.sunrise.ch/mysunrise/peterfleury/index.html " dort findest du was du suchst. brauchst dann nur die pins ändern nach deinem display-anschluss und eine neue make erstelllen. habe ich auch , läuft 100%tig.
mfg pebisoft

Decca
14.03.2005, 20:12
Hallo pebisoft!!!
Danke für die Antwort! Ich habe mich auf der Seite mal umgeschaut und habe mir lcd.c und lcd.h runtergeladen.
Jetzt weiß ich immer noch nicht genau wo u. wie ich es ergänzen muss.

Hier ein kleiner Auszug:

** constants/macros
*/
#define DDR(x) (*(&x - 1)) /* address of data direction register of port x */
#if defined(__AVR_ATmega64__) || defined(__AVR_ATmega128__)
/* on ATmega64/128 PINF is on port 0x00 and not 0x60 */
#define PIN(x) ( &PORTF==&(x) ? _SFR_IO8(0x00) : (*(&x - 2)) )
#else
#define PIN(x) (*(&x - 2)) /* address of input register of port x */
#endif

Bei folgender Zeile:
#define DDR(x) (*(&x - 1)) /* address of data direction register of

muss ich für DDR(x) sicherlich D einsetzen weil ich darüber mein LCD ansteuere, aber was kommt für z.B. (*(&x-1)) dieses x hinter und?

MFG Decca