Hallo Leute,
Ich würde gerne einen 1.8"TFT von einem Arduino Uno auf einen ATMega644P umstecken, da ich bereits ein Programm geschrieben habe. Ich wollte lediglich mehr Pins nutzen.
Unter dem Arduino Uno hat es bereits geklappt. Dazu nutze ich die TFT.h Library. Im Arduino Code(.io) lassen sich nur folgende Pins belegen:
#include <TFT.h> // Arduino LCD library
// pin definition for the Uno
#define cs 10
#define dc 9
#define rst 8
Folgendermaßen habe ich den TFT an den Arduino Uno angeschlossen:
TFT Arduino Uno
CS -> Pin10
SCL -> Pin13
SDA -> Pin11
A0 -> Pin9
RESET -> Pin8
Leider weiß ich nicht welche Angaben genau für mich die relevanten sind. Ich habe ein bisschen ausprobiert, bin aber bisher noch auf kein Ergebnis gekommen außer das es so nicht funktioniert.
Mein Herangehensweise war, mir erst anzuschauen was hinter den Pins steckt.
Zunächst habe ich die Pins so genutzt wie ich sie auch beim Arduino genutzt habe.
Kurze Erklärung:
Arduino I/O PIN & ATMega644P I/O PIN-> ()
ATMega328P CHIP PIN & ATMega644P CHIP PIN-> []
Somit habe ich es dann so angeschlossen:
Arduino Uno ATMega644P
(13)[19] -> (13)[19]
(11)[17] -> (11)[17]
(10)[16] -> (10)[16]
(9)[15] -> (9)[15]
(8 )[14] -> (8 )[14]
Hat nicht geklappt also dachte ich mir, dass es was mit den dahinter liegenden "Funktionen" zu tun hat.
Somit habe ich es dann so angeschlossen:
Arduino Uno ATMega644P
(13)[19][SCK] -> (7)[8][SCK]
(11)[17][MOSI] -> (5)[6][MOSI]
(10)[16][OC1B] -> (12)[18][OC1B]
(9)[15][OC1A] -> (13)[19][OC1A]
(8 )[14][CLK0] -> (1 )[2][CLK0]
Im Arduino Code (.io) habe ich die Pins für die TFT.h angepasst.
Von:
// pin definition for the Uno
#define cs 10
#define dc 9
#define rst 8
Auf:
// pin definition for the Uno
#define cs 12
#define dc 13
#define rst 1
Hat leider ebenfalls nicht geklappt.
Weiß vielleicht jemand wo mein Fehler (Denkfehler) liegt? Ich danke euch für eure Hilfe.