-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: LCD ansteuern

  1. #1
    Murus
    Gast

    LCD ansteuern

    Anzeige

    Hallo zusammen,

    Ich Suche ein Beispielprogramm, wie mit Bascom ein ganz normales LCD angesteuert wird (4 Bit).
    Hab einen ATmega 8 und ein 2*20er.
    Hats irgendwo im Netz ein Beispielprogramm?

    Herzliche Grüsse
    Mario

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    12.08.2005
    Beiträge
    9
    Guten Morgen,

    guckst du hier: http://www.rowalt.de/mc/avr/avrboard/01/avrb01.htm
    in der Zip Datei mit den Listings findest du für fast alles Beispiele.
    Das Listing mit dem LCD Beispiel musst du dir raussuchen, dort ist aber dann auch die richtige Kontaktbelegung in den Kommentaren mitgeschrieben.

    Ansonsten auch immer mal bei den Bascom Beispiellistings (LCD.BAS) vorbeischauen oder in der Hilfe.

    Viel Erfolg
    Paul

  3. #3
    Murus
    Gast
    Ah, habs gefunden, in den Samples von Bascom!

    Nur: Wo sag ich dem Ding, an welchem Port was hängt? Unter Optionen?

  4. #4
    Gast
    UNter Optionen oder du schreibst einfach das noch in dein Programm rein:

    Config Lcd = 20 * 2 ' größe des LCDs
    Config Lcdpin = Pin , E = Portc.4 , Rs = Portc.5 , Db7 = Portc.3 , Db6 = Portc.2 , Db5 = Portc.1 , Db4 = Portc.0 'pinbelegung

    du musst nur noch die Lcdpins an deine eigenen anpassen.

    Gruß Javik

  5. #5
    Murus
    Gast
    Dank dir vielmals!!!!
    Muss ich die Ports, an denen das LCD häng als Output oder Input definieren oder garnix?

    Herzlichen Gruss
    Mario

  6. #6
    Murus
    Gast
    Hmm, irgendwo hats noch nen Wurm drin.
    Hier ist mal mein Code:

    $regfile="m8def.dat"
    $crystal=1000000

    $lib "lcd4.lbx"
    Config LCD=20*2
    Config Lcdpin= Pin, E=Portd.6, Rs= Portd.4, db7=Portd.3 , db6= Portd.2, Db5=Portd.1, db4=Portd.0

    Cls
    Lcd "test"

    End


    Könnt ihr den mal schnell angucken? Stimmt der so? Sollte es so gehen oder habe ich etwas vergessen?

    Denn: Wenn ich Saft auf diese Schaltung gebe, dann Leuchtet das LCD und die obere Zeile erscheint als schwarzer Balken. Wenn ich den Kontrast hochdrehe, verschwindet der Balken.

    Was ist los?

    Herzliche Grüsse
    Mario

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.11.2004
    Beiträge
    1.693
    Warum auch mal die Suche befragen oder auf das hören, was ein andere schon vorher gesagt haben???

    Der schwarze Blaken ist der Poweron Selftest. as muss so. Wenn du den Kontrast hochdrehst, wird der Balken dunkler und die zweite Zeile auchetwas dunkel. Wenn du den Kontrast runter drehst, geht der Balken weg.

    Der Code ist soweit richtig. Die LIB kannst du mal auskommentieren. Vielleicht geht es dann.
    Alles weitere kann man nur sagen, wenn man die Schaltung sieht. Ob wirklich ein 1MHz Quarz dran ist, (sofern der Takt nicht von intern kommt) ob die Pins richtig angeschlossen sind.
    Ich denke mal die anderen Tipps, R/W und D0-D3 auf Masse legen hast du beherzigt.

  8. #8
    Murus
    Gast
    Ok, hab die Hardware nochmals neu verkabelt, war aber vorher schon richtig dran.
    Vor Cls hab ich noch 10ms Pause eingelegt und die Lib draussen.
    Jetzt gehts.

    Gruss
    Mario

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    09.11.2004
    Ort
    Hard, Vorarlberg
    Beiträge
    155
    Wenn die LCD-Pins entweder mit dem entsprechenden Config Befehl oder in den Options definiert sind, darf
    $lib "lcd4.lbx"
    nicht verwendet.
    Bascom bietet mit dem Config Befehl bzw. den Options die Möglichkeit, jeden beliebigen Pin für das LCD verwenden.

    Hat man die 4 Datenpins (db4-db7) auf den Pins 4-7 und die anderen Steuerleitungen E, RS im selben Port kann man anstattdessen die oben erwähnte Lib lcd4.lbx verwenden.
    Diese LIB ist geschrieben für:
    ;Rs = PortB.0
    ; E = PortB.2
    ;Db4 = PortB.4 the data bits must be in a nibble to save code
    ;Db5 = PortB.5
    ;Db6 = PortB.6
    ;Db7 = PortB.7
    Wenn andere Ports benützt werden, bzw die RS oder E Leitung nicht übereinstimmt, muss diese LIB entsprechend geändert werden.
    Ein entsprechende Erläuterung befindet sich im Kopf der Datei LCD4.LIB. Das Verwenden dieser Lib generiert einen optimierten Code für diesen Fall.

    Für einen Neuling wird die Verwendung des Config-Befehls bzw. die Option Eintellung der einfachere und sichere Weg sein.
    Viele Grüße
    Josef
    -------------------------------------------------------------------------------------
    DOS-File System für BASCOM-AVR auf http://members.aon.at/voegel

  10. #10
    Murus
    Gast
    Hmm, wie kann man eine bestimmte Stelle im LCD löschen?
    Wie heisst der Befehl?

    Greets
    Mario

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •