Arduino Programm auf ESP8266

Hallo,
ich bin noch relativ neu am Arduino Programmieren.
Ich habe ein Programm für einen Arduino UNO geschrieben. Wenn ich nun dieses Programm auf einen ESP8266 laden möchte was muss dort beachtet werden, da ja auch die Pins anders heißen? Oder muss noch mehr beachtet werden?

Danke

Kann dir so keiner sagen, da wir nicht wissen, was du in deinem Programm machst. Alle die dir konkrete Aussagen geben, haben eine funktionierende Glaskugel.

Du must schon die Pins anpassen, am besten keine D Nr. Nutzen nur die GPIO Bezeichnung das findet man im Pinout für dein ESP.

Probiere es einfach aus. Die IDE wird dir die Probleme nennen, die du anschließend einfach behebst. Mit Fehlermeldungen, die du nicht verstehst, kommst du einfach wieder.
Diese postest du inkl. des angemeckerten Sketches hier in Code-Tags.

Ja.

Die Namen der Pins sind das wenigste.
Die heissen beim Uno 0 bis 19 und wahlweise A0 ... A5 und LED_BUILTIN.

Beim ESP8266 gibt es vor allem weniger Pins. Und der Signalpegel ist anders.
Dafür kann er WLAN und anderes, was beim Uno gar nicht geht.

Ein Programm für den Uno auf einen ESP8266 laden zu wollen, macht in der Regel nicht viel Sinn.
Auch wenn der Blink-Setch schnell angepasst werden kann.

Ich denke das kann man absolut nicht pauschal sagen.

Dazu muss man deine Script und die LIBS kennen.

Aber einiges kann ich dir sagen.

Viele Libs sind NICHT mit den ESP kompaktibel , einige wenige aber schon.
Wenn du Busse (i2c / spi) benutzt, sind einige libs "Hard-codiert" was heißt die holen die die Pins der Busse aus anderen Quellen, einige wollen aber die Pins des Bus haben.

Bei der üblichen Programmierweise ist das ganze aber weniger schlimm.
Um den "wechsel" eines Script auf ein anders Board sich selbst zu erleichtern, deklarieren fast alle Coder ihre Pins als Variable und weissen den Pin dann seine Nr zu.
Richtig codiert bedeutet das, man geht einfach Pin für Pin durch und schaut nach wo das Teil jetzt hängt und ändert möglicherweise die Zahl.

Fakt ist aber, von eine Uno/mega/nano etc. auf einen Chip der ESP32 Serie zu wechseln ist IMMER mit einigen Aufwand verbunden. Das geht "nicht mal so eben"

edit: Und vergiss nicht den neuen Board-Treiber zu laden. Ist bei der 1.* IDE etwas aufwendiger, da du eine neue Quelle in den Grundeinstellungen angeben musst.

Gruß

Pucki

Erkläre mall das.

Falsch schon der Unterschied zwischen UNO R3 und Mega 2560 R3 ist ziemlich groß wen es um SPI, I²C geht
Man sollte mittlerweile schon schreiben was für UNO ist gemeint ohne Platzhalter, nicht das du auf die Idee kommst Schreiben R*
Für Nano gilt das gleiche.

Aber nur weil ich gute Laune habe :wink:

#include <Adafruit_PN532.h>

#define PN532_IRQ   32
#define PN532_RESET 33  
Adafruit_PN532 nfc(PN532_IRQ, PN532_RESET);    // Bus Hard-Codiert

Bzw. so.

#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"
#include <Fonts/FreeSansBold9pt7b.h>

// For the Adafruit shield, these are the default.
#define TFT_RST 9  // Gelb
#define TFT_DC 8  // Braun
#define TFT_CS 10  // orange
#define TFT_MISO 11  // grün
#define TFT_MOSI 12 // grau
#define TFT_CLK 13  // lila
// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC
//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
// If using the breakout, change pins as desired
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO);

jaja, da ist ein ganz andere Bus. Der fährt dann nach Nullbits anstatt nach Einsbit.

Man diese Feinheiten sind etwas anders als wenn ich auf ein 32 Bit Chip wechsele.

Gruß

Pucki

Na ja für dich wo möglich, außer IRQ und Timmer hebe noch nie Probleme gehabt.
Adafruit Lib bei ESP funktioniert auch, nur wer Bindet sich ein Klotz an Bein, wen man ESP Vorhat zu nutzen.
Und für dich ein PN532 nfc bekommt man auch am ESP zum Laufen :wink:

Weiß ich.

Ich habe ihn an einen Nano + einen Esp32 laufen.

Und damit es für dich richtig böse ist.
Der ESP32 ist von AZ-*** und die Libs für das TFT sind von Adafruits.

Den PN532 muss ich nutzen weil ich es nicht geschafft habe mit den blaues RFID-Reader die NTAGS zu lesen. Siehste auch ich bekomme nicht alles hin.

Und ich bin voll zufrieden. ;))

Gruß

Pucki

Jeder mach wie er kann :joy:

Danke für die Antworten, das hilft mir schonmal weiter. Hab mir vorgestellt nur die Pins umzubenennen. Dann werde ich mich da noch bissl reinfuchsen müssen. Anhand der Tipps

Ist ungefähr das selbe, als wenn du von Win 2.0 (ok 16 Bit) auf Win-95 (32 Bit) umsteigst. Und das meine ich ernst. Immerhin steht das 32 bei ESP-32 für die Anzahl der Bits. :wink: Der NANO/UNO etc. hat nur 8 dieser kleinen Bierchen. :wink:

Weshalb ich auch geschrieben habe, das du viele Libs austauschen wirst vermutlich.

Gruß

Pucki

Du solltest sich Mal beschäftigen wie die libs geschrieben sind statt halbe Wahrheit schreiben.

Wie schon geschrieben, probiere es aus. Nur so lernst du es.
Und wenn Fragen sind, weißt du, wo du sie stellen kannst.
Zeig uns deinen aktuellen Sketch und wir können evtl. weitere Tipps liefern.

Ok dan hat ein ESP8266 8266 deine Bits?

@fony
Das bringt doch nichts.
Da ist einer unbelehrbar, den wirst du nicht bekehren können.

Ja, leider. Da die Moderation auch nichts dagegen unternimmt, wird halt das fachliche Niveau dieses Forums immer weiter herunter gezogen. Schade drum.

Gruß Tommy

Abwarten.
Unter Beobachtung steht er schon.

Was hat DAS mit meiner Aussage zu tun. ???

ESP-32 steht für eine Produktfamilie die auf Basis des 32-Bit-Prozessors gebaut wird, und der NACHFOLGER des veralterten (oder wie ihr sagt obsolenten) ESP8266 steht.

Das kannst du überall im Netz nachlesen.

Aber ist ja schon o.k. Wenn ich ein Charakter hätte wie du, würde ich auch in jeden Suppe das Haar suchen. Bloss ich mobbe halt nicht. Das ist unter meiner Würde.

Gruß

Pucki