Warum kann ich keine Skizze hochladen, während andere Komponenten / Geräte mit meinem Uno verbunden sind?


19

Ich wollte mit meinem Arduino Uno (genauer gesagt einem SainSmart-Klon) eine relativ einfache Schaltung erstellen, die eine Reihe von LEDs nacheinander blinkt. Ich habe meine Skizze geschrieben und sie wurde gut zusammengestellt. Danach habe ich 8 LEDS + Widerstände an die Pins 0 bis 7 angeschlossen und dann das Uno über USB an meinen Computer angeschlossen.

Ich habe in der Vergangenheit erfolgreich Skizzen hochgeladen, daher bin ich sicher, dass meine Einstellungen und Treiber usw. korrekt sind. Als ich diesmal versuchte, meine Skizze hochzuladen, funktionierte dies jedoch nicht.

Ich habe versucht, alles zu entfernen, was ich mit den Pins des Arduino verbunden hatte, und plötzlich funktionierte der Upload wieder.

Warum passiert das? Bedeutet das, dass ich jedes Mal, wenn ich eine Skizze hochlade, die Verbindung zum Board trennen muss?

Antworten:


22

Das Problem betrifft insbesondere die Pins 0 und 1. Sie können zwar als normale digitale E / A-Pins verwendet werden, dienen aber auch als RX- und TX-Pins für den seriellen Anschluss des Uno. Die USB-Verbindung (zum Hochladen von Skizzen usw.) wird intern auf die gleichen Pins geroutet. Leider bedeutet dies, dass alles, was an den Pins 0 und 1 angeschlossen ist, die serielle Verbindung stören kann und die Kommunikation über USB verhindert.

Kurz gesagt, ist es nicht notwendig zu trennen alles , wenn eine Skizze hochladen. Es sollte nur notwendig sein, etwas von den Pins 0 und 1 zu trennen. Anstatt dieses Problem bei jedem Hochladen einer Skizze durchzugehen, ist es möglicherweise am besten, die Verwendung dieser Pins zu vermeiden, es sei denn, dies ist erforderlich (z. B. Sie haben keine anderen Pins mehr oder Ihr Projekt benötigt eine serielle Verbindung zu einem anderen Gerät.


2
Gute Möglichkeit, die Community zu unterrichten.
JVarhol

2
Da das Arduino auch von SPI programmiert wird, das sich auf den Pins 10-13 befindet, kann auch verhindert werden, dass es auf diese Pins
hochgeladen wird

1
Gut geschriebene Fragen und Antworten! Ich würde gerne mehr solche Posts von dir sehen :)
asheeshr

3
@TheDoctor - Falsch! Die SPI-Pins sind nur relevant, wenn Sie einen In-System-Programmer verwenden. Der Bootloader Programmiermechanismus nicht über den SPI - Pins benötigt überhaupt . Dies ist nichts, worüber Sie sich Sorgen machen müssen , es sei denn, Sie schließen ein separates Hardware-Programmiertool an .
Connor Wolf

0

"Peter R. Bloomfield" Früher habe ich eine Skizze in mein Arduino Uno hochgeladen, indem ich Rx und Tx Pin verbunden habe, aber meine Skizze wurde hochgeladen. Eigentlich Problem ist Arduino Uno-Treiber kann in Ihrem Fall gelöscht werden


1
Dies war als Referenzfrage gedacht. Dieselbe Person fragte und beantwortete die Frage. Ich bezweifle, dass sein Problem darin besteht, dass der Treiber gelöscht wurde.
Nick Gammon
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.