Nano mit Mega2560 als ISP made easy?

Hi,

da das hier mein erster Post ist, stell ich mich mal vor. Ich bin der neue und komme jetzt öfter :grin: .

Ich bin erst kürzlich in die Arduino-Welt eingetaucht und auf jeden Fall noch ein ziemlicher Anfänger was Programmierung und "professionelle" Elektronik angeht. Habe aber auf Grund meiner Ausbildung und jahrelangen Berufserfahrung als Elektriker schon immer irgendwie Bock drauf gehabt.

Jedenfalls...BTT

Vor kurzem habe ich mir 2 Nanos bestellt, weil ich nach ein bisschen Spielen mit dem Mega schon 1 - 2 Projekte habe bei denen ich etwas kleineres brauche.

Als diese dann ankamen habe ich nicht schlecht gestaunt. Da sind doch tatsächlich Mini B USB Buchsen dran. Meine letzten Kabel der Art hab ich natürlich erst vor kurzem entsorgt. :drooling_face: Und im Laden kostet sowas, wenn man es denn findet, um die 8€ :o

Also ISP !

Stundenlang hab ich rum probiert. Irgendwo zwischendurch hat dann mal jemand erwähnt, dass die ISP Pins beim Mega nicht 11,12 und 13 sind, sondern 51,50 und 52 ::) und beim Nano konnte ich auch nicht einfach so an die Pins sondern musste direkt auf den ISP Header. Geht zwar noch...aber wenns einem keiner sagt, brauch man da ne Weile für.

|281x500

Nachdem ich dann also endlich nach etwa tausend durchwühlten Tutorials endlich den ersten Sketch übertragen konnte, hab ich mich schon gesehen wie ich jedes mal, wenn ich den Sketch ändern will, den ganzen Kabelsalat zusammen basteln muss. Und da fiel mir die praktische, 2-Reihige I-O-Leiste auf. und nach nem bisschen Grübeln...

|500x281

und etwas Umschreiben des ArduinoISP Sketches.

#define RESET     48    //Normal Pin 10

#define PIN_VCC 53      //neu
#define PIN_GND 49      //neu
#define USE_OLD_STYLE_WIRING    //Kommentar entfernen

#ifdef USE_OLD_STYLE_WIRING

#define PIN_MOSI    51    // Normal Pin 11
#define PIN_MISO    52    // Normal Pin 12
#define PIN_SCK     50    // Normal Pin 13

#endif
void setup() {
  pinMode(PIN_GND,OUTPUT);        ////////////////////////////////////
  pinMode(PIN_VCC,OUTPUT);        //Pins für die Spannungsversorgung//                                //
  digitalWrite(PIN_GND,LOW);      //initialisieren                  //
  digitalWrite(PIN_VCC,HIGH);     ////////////////////////////////////
  
  SERIAL.begin(BAUDRATE);

hat es dann tadellos geklappt.

|281x500

Ob der 10µF ELKO drin war oder nicht hat, zumindest in meinem Fall, keinen Walzer gespielt.

Ich hoffe ich konnte damit jemandem helfen.

Gruß

schUk0