Hallo Leute,
ich habe mir hier eine Schaltung mit einem LCD-Display aufgebaut.
Hardwarebeschaltung hängt im Anhang.
Das Programm dazu sieht wie folgt aus:
(sollte doch eigentlich korrekt sein)
So, wenn ich nun die Schaltung aktiviere, dann leuchtet am Display die erste Zeile. Mehr passiert nicht.Code:$regfile = "m8def.dat" $crystal = 4000000 'DDR = &B76543210 ; 0=Eingang ; 1=Ausgang Ddrb = &B00111100 Ddrc = &B00001110 Ddrd = &B00000001 Portb = &B00000000 Portc = &B00000000 Portd = &B00000000 Config Sda = Portc.4 'Data-Line für I2C-Bus Config Scl = Portc.5 'Tackt für I2C-Bus Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 , Db7 = Portb.2 , E = Portc.1 , Rs = Portc.3 Config Lcdbus = 4 Do Set Portd.0 Wait 1 Cls Locate 1 , 1 Lcd "Hallo Welt" Reset Portd.0 Wait 1 Loop
Der Pin D0 wechselt unerbittlich von 0 auf 1 und wieder zurück. Der Controller scheint also einwandfrei zu laufen und auch auf den Pins PB2-5 wird immer wieder etwas gesendet.
RW habe ich nachgemssen, ist 0V
Bin so langsam echt ratlos.
Das einzige was mir äußerst komisch vorkommt:
Der Pin D0 wechselt seinen Status nur alle etwa 3,5 Sekunden...
Könnte da der fehler liegen, das auch nichts am Display angezeigt wird?
Angeschlossen ist ein 4 MHz Quarzbaustein.
Fusebits sind wie folgt gesetzt:
Low Fuse: 11100001
High Fuse: 11011001
Lockbits: 11111111







Zitieren
Lesezeichen