Arduino UNO ESP32 mit RFID und TFT Display

Hallo liebe Bastler :slight_smile:
Bin seit ein paar Wochen Neuling mit Arduino und voll begeistert. Ich hänge gerade an einer Stelle mit einem Projekt und verstehe einfach nicht, wie ich die Verkabelung vornehmen muss um 2 Geräte gleichzeitig über den SPI zu nutzen. Die Geräte einzeln am UNO funktionieren perfekt.

Folgender Aufbau:

  1. Arduino UNO ESP32
  2. RFID MFRC522 (3.3V, Reset, GND, IRQ, SPI MISO, SPI MOSI, SPI SCL, SPI SDA)
  3. 1.77" TFT 128x160 ST7735 (GND, VCC, SCK, SDA, RES, RS, CS, LEDA)

Hätte jemand ein Beispiel für mich, wie ich RFID und TFT gleichzeitig an den UNO anschließe? Vielleicht auch noch einen angepassten Sketch. Mein Ziel ist es die UID des RFID-Tags auf dem TFT auszugeben. Mit den youtube-Tutorials bin ich leider nicht weiter gekommen.

Vielen Dank und viele Grüße
Mario

Willkommen im Forum :slightly_smiling_face:
Gebe mal Link zum dem RFID Modul, es gibt mehrere.
Jedoch der SDA Pin ist SS, CS Pin der muss auf freien Pin, Reset, RST dürfen gemeinsam bleiben= auf freiem Pin oder auf RESET klemmen und als -1 deklarieren . Warum nimmst nicht ein ESP32 Modul?

Zolltest deinen hier zeigen,

Mit dem "Arduino UNO ESP32" kenne ich mich nicht aus, kann Dir daher nur allgemein antworten.

Die Anschlüsse vom SPI-Bus:

grafik

SCK, MISO und MOSI werden parallel von allen Teilnehmern verwendet. SS (Slave Select) wird mit genau einem Teilnehmer verbunden. Die Bibliothek hat an irgendeiner Stelle die Möglichkeit, den SS-Pin festzulegen. Der zweite Teilnehmer muß einen anderen freien Pin verwenden.

Das Display verwendet zusätzliche Pins.

Wenn Du zwei funktionierende Programme hast, brauchst Du bei einem nur einen anderen SS-Pin zu verwenden, dann sollte es funktionieren.

Wenn Du weitere Hilfe benötigst, zeige bitte Deine einzelnen funktionierenden Programme und das nicht funktionierende gemeinsame Programm.

Ich wünsche Dir einen guten Jahreswechsel!

Je nach Hersteller es hat ein ESP32S3 , dann passen die Pins nicht.
Wenn man den ESP32S3 in der IDE als ESP32S3 DevModule einstellt dann ist SPI an

****** SPI Pins Test *****
MOSI = 11
MISO = 13
SCK = 12

****** I2C Pins Test ******
SDA = 8
SCL = 9

Oh, ich wollte mich an die Regeln halten und wusste nicht ob Links ok sind. Hier meine Hardware:

  1. Arduino UNO (ATMEGA328):
    Mikrocontroller Board AZ-ATmega328-Board mit USB-Kabel
  2. RFID:
    https://cdn.shopify.com/s/files/1/1509/1638/files/AZ216_A2-5_DE_B01M28JAAZ_f03f7303-3071-41ae-a55a-726d268f96e4.pdf?v=1721036502
  3. TFT:
    https://cdn.shopify.com/s/files/1/1509/1638/files/1.77_inch_TFT_Display_-_pinout.jpg?v=1593150369

Ich hätte auch ein "ESP32 Node MCU" hier:

Ist ein "normaler" Uno R3(V3) mit 5V auf den Pins im Klartext du darfst nicht ohne alles das Display anklemmen , es ist ein 3,3V Display, du brauchst ein

Noch was meide AZ der laden

  1. Ist meistens teuer
  2. Ist sehr unbeliebt im Forum
  3. Die Ware macht öfters Probleme.

Das sind mechanisch UNOs, aber hinsichtlich der Elektronik recht unterschiedliche Dinge!

Was stimmt?

Wenn der funktioniert dann ist es besser den nutzen = brauchst keine Pegelumsetzer.
schon auf dem Bild sicht man was für Schrot der AZ verkauft.
Ein ESP32S so wie auf Foto gibt es nicht!
Der wird als ESP32 Dev Module angesprochen

Es ist normaler ESP32 U drauf in wenn du WIFI oder BL nutzen willst brauchst eine Antenne noch.

Link ist als Beispiel.

hier hat jemand die gleiche Konfiguration

RFID - RC522, ST7735S TFT and ESP32 - #4 by horace?

Den Beitrag habe ich auch schon gefunden. Nur nirgends dort einen Plan zur Verkabelung. Oder habe ich den übersehen?

Danke für die Hinweise, bin eben noch Neuling.

OK jetzt wird ein wenig kompliziert.

Du hast vermutlich die IDE 2.X.X
dort musst erst mall den so genannten ESP Core installieren

wenn das fertig melde dich ;)

Du musst aber die 2.0.17 nicht die 3.2.3 nehmen, sonst hast Probleme mit dem Display

Mache ich gerne, kann sein dass ich mich morgen erst melde. Jetzt wollen die Kinder Aufmerksamkeit. Danke dir schonmal. Dir auch einen guten Rutsch. :-)

for the TFT using VSPI

#define TFT_CS   5//SS     

#define TFT_MOSI 23//MOSI   
#define TFT_SCLK 18//SCK    
#define TFT_MISO -1      

#define TFT_DC   2
#define TFT_RST  4

and the RFID using HSPI

// default HSPI pins used by MFRC522 RFID reader
#define HSPI_SCK 14
#define HSPI_MISO 12
#define HSPI_MOSI 13
#define HSPI_CS 15

Dan solltest du komplette User_Setup.h dem TO zeigen.

Erledigt!

Warum ist es notwendig, sowohl VSPI wie auch HSPI zu verwenden? Theoretisch sollte ein Bus ausreichen.

Ja, und was genau heißt das ?
Geht es evtl. ein wenig genauer ?