LCD_Modul_TG12864B_03

OP #4097958
Lesenswert?

Guten Abend,
da ich mittlerweile etwas ratlos bin, bräuchte ich mal Eure Hilfe.
Ich habe ein LCD_Modul_TG12864B_03 von Pollin mit der MYLCD Lib von 
Andre Fabricius an einem ATmega 644 20 PU 16 MHZ Quarz. Das ganze Läuft 
auch super allerdings nur, wenn ich als Datenport PortC und als Command 
die PA0-PA5 nehme. Als ich die Datenleitungen auf PORT D gesteckt habe, 
gab es eine Anzeige, als wenn Initialisierung oder Timing nicht richtig 
wäre. Also Pixelfehler starkes flimmern der Anzeige oder nach einem 
Reset gar keine Anzeige.
Kann mir jemand sagen woran das liegen könnte ?
Am Programmcode habe ich nur die Anpassungen in der mylcd.h vorgenommen.
Ich würde nämlich gern den TWI Bus nutzen und eine Doppelbelegung von 
SDA und SCL-Pin mit den LCD Datenleitungen, ist wahrscheinlich nicht 
empfehlenswert ?

Vielen dank für Eure Hilfe und schönen Abend noch
Gruß Jörg
OP #4097980
Lesenswert?

Hallo ardurnioquäler,
Programm ist direkt und unverändert von hier 
Beitrag "GLCD Routinen ( KS0108, HD61202 )"
ausser in der mylcd.h habe ich  folgende Änderungen vorgenommen:
1
// Ports
2
  #define LCD_CMD_PORT    PORTA    // Command Output Register
3
  #define LCD_CMD_DDR      DDRA    // Data Direction Register for Command Port
4

5
  #define LCD_DATA_PIN    PINC    // Data Input Register
6
  #define LCD_DATA_PORT    PORTC    // Data Output Register
7
  #define LCD_DATA_DDR    DDRC    // Data Direction Register for Data Port
8

9
  // Command Port Bits
10
  #define CD          0x05    // Data/Control (RS) PinNumber
11
  #define RW          0x04    // R/W PinNumber
12
  #define EN          0x02    // EN  PinNumber
13
  #define CS1          0x01    // CS1 PinNumber
14
  #define CS2          0x00    // CS2 PinNumber  
15
  //#define LCD_NO_RES          // uncomment this line if you have an pullup on reset
16
  
17
  #ifndef LCD_NO_RES
18
    #define RES        0x03    // Reset Pin
19
  #endif
Displayverdrahtung so wie in den defines direkt vom µC auf das LCD.
Gruß Jörg
#4098395
Lesenswert?

Jörg P. schrieb:
> Ich würde nämlich gern den TWI Bus nutzen und eine Doppelbelegung von
> SDA und SCL-Pin mit den LCD Datenleitungen, ist wahrscheinlich nicht
> empfehlenswert ?

Das Display hat keine I2C Bus. Siehe Datenblatt. Du kannst so etwas mit 
Portexpandern lösen, aber dafür musst Du etwas mehr in dem Code ändern 
(und außerdem den Code verstehen lernen).

Schau mal, ob Du auf PortC JTAG aktiviert hast.
Gast #4098468
Lesenswert?

Hi

>Das Display hat keine I2C Bus.

Nein, aber vielleicht will er die TWI-Pins von PortC für die Ansteuerung 
von I2C-Bausteinen verwenden.

>ausser in der mylcd.h habe ich  folgende Änderungen vorgenommen:

Welche Änderungen? Wenn du PortD benutzen willst sollte dort

  #define LCD_DATA_PIN    PIND    // Data Input Register
  #define LCD_DATA_PORT    PORTD    // Data Output Register
  #define LCD_DATA_DDR    DDRD    // Data Direction Register for Data 
Port

stehen.

MfG Spess
Gast #4098477
Lesenswert?

Hallo Pete,
JTAG ist aus das. Mit dem I2C Bus habe ich mich wohl mißverständlich 
ausgedrückt. Ich wollte am I2C einen Feuchtesensor (HH10D)abfragen. Da 
sind jetzt allerdings die Datenleitungen vom Display. Meine Frage war, 
ob beides geht,Display während der Sensorabfrage 'stilllegen' und danach 
wieder aktivieren.
Der Sensor muss nur einmal die Stunde angesprochen werden.
Danke Jörg
Gast #4098918
Lesenswert?

Hallo Spess53,
als ich PORT D bzw PORT B benutzen wollte hatte ich die Änderungen auch 
so vorgenommen, aber dann habe ich wie gesagt diese für mich 
unerklärliche Anzeige. Als wenn das Timing nicht stimmen würde. Das der 
µC nicht in Ordnung ist, schließe ich aus, da ich mir auch schonmal die 
Mühe gemacht habe alle Pin's zu setzen und rückzusetzen, Leuchtdiode 
angeschlossen um etwas zu sehen, was einwandfrei ging.
Wahrscheinlich lasse ich alles so wie es ist, und versuche entweder SDA 
und SCL-Pin doppelt zu belegen oder ich versuche den TWI Softwaremäßig 
auf zwei anderen Pin's zu machen. Allerdings muss ich dann noch mal in 
Klausur gehen, da ich mit dem TWI bisher noch keine Erfahrung habe.

Danke und Gruß
Jörg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren