Forum: Mikrocontroller und Digitale Elektronik Artuino Pro Mini mit Artuino Serial TTL Adapter programmieren


von Markus (Gast)


Lesenswert?

Hallo zusammen

Kann mir hier bitte jemand helfen, bin Neuling und habe Probleme mit der 
Programmierung eines Artuino Mini Pro. Mit einem Artuino Mega 2560 habe 
ich erste Erfahrungen gemacht und hatte keinerlei Probleme. Nun habe ich 
ein Mini Pro geschenkt bekommen, habe einen Serial TTL Adapter besorgt 
und wollte das Board damit programmieren. Leider kann ich machen was ich 
will, das Ding blinkt munter vor sich hin mit der werkstelligen 
Standartblinkerei.
Habe es ohne die DTR - RST Verbindung probiert und die Resettaste 
betätigt in verschiedenen Variationen. Hat nichts verändert. Irgendwie 
kennen sich die Beiden überhaupt nicht.
Im Computer ist bei den angemeldeten Geräten der FT232RL vorhanden.


Besten Dank für eure Hilfe.
Markus


Verbunden habe ich:

Adapter - Mini
RX - TX
TX - RX
5V
GND
DTR - RST

Port und Boards wurden korrekt angewählt.


Nach jedem Upload erscheint die selbe Nachricht in oranger Schrift:

Der Sketch verwendet 3.494 Bytes (24%) des Programmspeicherplatzes. Das 
Maximum sind 14.336 Bytes.
Globale Variablen verwenden 17 Bytes (1%) des dynamischen Speichers, 
1.007 Bytes für lokale Variablen verbleiben. Das Maximum sind 1.024 
Bytes.
processing.app.debug.RunnerException
  at 
cc.arduino.packages.uploaders.SerialUploader.uploadUsingPreferences(Seri 
alUploader.java:179)
  at cc.arduino.UploaderUtils.upload(UploaderUtils.java:78)
  at processing.app.Sketch.upload(Sketch.java:1178)
  at processing.app.Sketch.exportApplet(Sketch.java:1152)
  at processing.app.Sketch.exportApplet(Sketch.java:1124)
  at processing.app.Editor$DefaultExportHandler.run(Editor.java:2417)
  at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
  at java.lang.String.replace(String.java:2240)
  at 
processing.app.helpers.StringReplacer.replaceFromMapping(StringReplacer. 
java:97)
  at 
processing.app.helpers.StringReplacer.replaceFromMapping(StringReplacer. 
java:89)
  at 
processing.app.helpers.StringReplacer.formatAndSplit(StringReplacer.java 
:37)
  at 
cc.arduino.packages.uploaders.SerialUploader.uploadUsingPreferences(Seri 
alUploader.java:174)
  ... 6 more

von DokuLeseVerweigerer (Gast)


Lesenswert?

Port, Board, Prozessortype, und Taktfrequenz, alles richtig Eingestellt?
Welche IDE?

von Axel S. (a-za-z0-9)


Lesenswert?

Markus schrieb:
> Verbunden habe ich:
>
> Adapter - Mini
> RX - TX
> TX - RX
> 5V
> GND
> DTR - RST

Hast du GND verbunden oder nicht? GND des Adapters
muß natürlich mit GND des Arduino verbunden werden.

von Wolfgang (Gast)


Lesenswert?

Markus schrieb:
> habe Probleme mit der Programmierung eines Artuino Mini Pro

Kannst du mal einen Link zu deinem Teil angeben. Ich kenne nur den 
Arduino Pro Mini
https://www.arduino.cc/en/Main/ArduinoBoardProMini

von Markus (Gast)


Lesenswert?

Sorry Wolfgang, es ist natürlich ein Pro Mini 5V.

Axel, GND ist verbunden, sonst würde die werkseitig installierte 
Blinkerei nich funktionieren (habs trotzdem kontrolliert).

Eingestellt habe ich:

Board      =  Arduino Pro or Pro Mini (habe auch Artuino Mini probiert).
Prozessor  =  ATmeg 168 (5v, 16 MHz)
Programer  =  AVRISPmkII  (habe alle in der Liste probiert, keine 
Reaktion)
Port       =  Com8 (vom Computer bestimmt)

Was ist "IDE", wo kontrolliert man das?

von Wolfgang (Gast)


Lesenswert?

Markus schrieb:
> Prozessor  =  ATmeg 168 (5v, 16 MHz)

Und der Prozessor ist auf deinem Board auch drauf?

Meist wird dort inzwischen der ATmega 328P verwendet.

von Markus (Gast)


Lesenswert?

Auf dem Chip steht:
ATMEL
MEGA 168
20MU1052
CHINA-B
0J1615

von Wolfgang E. (Firma: janeeisklar) (whattheheck)


Lesenswert?

Markus schrieb:
> Was ist "IDE", wo kontrolliert man das?

IDE bedeutet Integrierte Entwicklungsumgebung.

Wenn du das Programmiertool von Arduino nutzt, welche Version hat es?

von SloJo (Gast)


Lesenswert?

Markus schrieb:
> Adapter - Mini
> RX - TX
> TX - RX
> 5V
> GND
> DTR - RST

Bei meinem Adapter muss TX mit TX und RX mit RX verbunden werden. Aber 
die Beschriftung der Teile variiert, da hilft oft nur ausprobieren.

von Peter S. (petersieg)


Lesenswert?

Hmm.

Ja, bitte mal Rx+Tx tauschen.
Dann muss man noch zum Upload kurz die Resettaste auf dem Arduino Board 
drücken und wenn Upload als Meldung erscheint loslassen. Nur nach einem 
Reset lauscht der Bootloader für kurze Zeit für mögliche Updates der 
Firmware - danach spingt es die sonst geladene Firmware an (im 
Auslieferungzustand das Blinkprogramm).

Bei einigen Clonen aus China ist noch gar kein Bootloader drauf.
Wenn das der Fall ist, muss man diesen erst mit einem AVR Programmer 
drauf flashen! Ansonsten kann ein serielles flashen aus der Arduino IDE 
nicht funktionieren.

Peter

: Bearbeitet durch User
von DokuLeseVerweigerer (Gast)


Lesenswert?

Peter S. schrieb:
> Ja, bitte mal Rx+Tx tauschen.
Bedenklicher Tipp....


Die Fehlermeldung sieht mir eher wie ein Java oder Betriebssystem Fehler 
aus.

von SloJo (Gast)


Lesenswert?

DokuLeseVerweigerer schrieb:
> Peter S. schrieb:
>> Ja, bitte mal Rx+Tx tauschen.
> Bedenklicher Tipp...

Wo hast du da Bedenken?

Kann man uebrigens einfach feststellen, ob das richtig verbunden ist: 
Das eingebaute Arduino-Terminal oeffnen, lostippen und gucken, welche 
LED am Arduino blinkt.

> Die Fehlermeldung sieht mir eher wie ein Java oder Betriebssystem Fehler
> aus.

Nun, da warten wir noch auf die Version seiner Entwicklungsumgebung.

von Wolfgang E. (Firma: janeeisklar) (whattheheck)


Lesenswert?

DokuLeseVerweigerer schrieb:
> Die Fehlermeldung sieht mir eher wie ein Java oder Betriebssystem Fehler
> aus.

Gut möglich.
Man sollte möglichst die neueste Version (akt. 1.6.7) mit dem 
Windows-Installer installieren. Dann sollte sowas nicht auftreten.

: Bearbeitet durch User
von Peter S. (petersieg)


Lesenswert?


: Bearbeitet durch User
von Markus (Gast)


Lesenswert?

So nun funzsts, bin happy!



Habe es mal auf dem anderen Compi unter win7 versucht, die Verbindung 
DTR - RST entfernt und nach etwas Spielen mit dem Resetknopf hat es 
funktioniert. Es braucht ein paar Durchläufe bis man den richtigen Punkt 
erwischt mit dem Resetloslasse sonst erscheint die Meldung. "Fehler beim 
Upload...).

Die Verbindungen waren übrigens korrekt (> RX - TX > TX - RX.

Was muss ich nun machen, dass die Sache auch unter Win 10 auf dem 
anderen Compi läuft?


Gruss und Danke allen, die sich hier beteiligt haben.

Markus

von Markus (Gast)


Lesenswert?

.....und noch eine Erfolgsmeldung: Mit der Vorgängerversion 1.6.6 
funktioniert es auch unter Win10.
Habe bisher mit der neusten Version 1.6.8 Hourly Build erfolglos 
probiert.

von Michael U. (amiga)


Lesenswert?

Hallo,

mit der 1.6.6 wurden auch von etlichen Usern Probleme gepostet.
Bei mir läuft die 1.6.7 bisher unauffällig und stabil.

Gruß aus Berlin
Michael

von Wolfgang (Gast)


Lesenswert?

SloJo schrieb:
> DokuLeseVerweigerer schrieb:
>> Peter S. schrieb:
>>> Ja, bitte mal Rx+Tx tauschen.
>> Bedenklicher Tipp...
>
> Wo hast du da Bedenken?

Üblicherweise, insbesondere bei CMOS Ausgangsstufen, versucht man es zu 
vermeiden, zwei Ausgänge mit möglicherweise verschiedenem Pegel (z.B. 
+5V und Gnd) direkt zu verbinden.

In Fachkreisen wird das oft als Kurzschluss bezeichnet :-(

von Michael U. (amiga)


Lesenswert?

Hallo,

Du hast völlig Recht mit dem Hinweis. Allerdings begrenzen die 
CMOS-Stufen bei den üblichen ICs auch den Strom. Das geht ohne Schaden 
einige Zeit gut, da erstmal nur die Verlustleitung das Problem ist.

Dazu kommt, daß TxD auf beiden Seiten solange auf H ist, wie nichts über 
den UART gesendet wird. Die Verlustleistung ebschränkt sich also auf den 
Übertragunszeitraum. Bisher hat bei mir kein CI ein wirkliches Problem 
damit gehabt. Wenn man was sendet und nichts ankommt und vertauscht auch 
nicht, liegt der Fehler woanders und man sollte eben statt 20 Versuchen 
erstmal über weitere mögliche Ursachen nachdenken.

Ist wie mit Sicherungen: eine kann auch durch Alter oder Zufall defekt 
sein. Wenn die neue auch sofort durchbrennt, macht es wenig Sinn, noch 5 
Stück zu probieren und zu hoffen, daß der Fehler von selber 
verschwindet.

Gruß aus Berlin
Michael

von Wolfgang (Gast)


Lesenswert?

Michael U. schrieb:
> Allerdings begrenzen die CMOS-Stufen bei den üblichen ICs auch den Strom.
> Das geht ohne Schaden einige Zeit gut, da erstmal nur die Verlustleitung
> das Problem ist.

... und das versuche jetzt mal mit den Grenzwerten im Datenblatt in 
Einklang zu bringen :-(

von Michael U. (amiga)


Lesenswert?

Hallo,

werde ich jetzt nicht wirklich.
Nehmen wir an, ich verbinde die TXD eines AVR und eines 
FTDI232/CH340/CP2102
miteinenander. Dann drücke ich Reset am AVR/ESP, um meinen Teststring zu 
übertargen oder was auch immer. Für genau die Zeit der Übertragung und 
darin die Zeit der 1-Bits (Low-Pegel) tritt der "Kurzschluß" auf. Der 
maximal gelieferte Strom über beide Ausgänge dürfte nichtmal die 40mA 
eines AVR überschreiten, die FTDI sind mit 24mA angegebn, die CP2102 
sind mit 25mA bei 1V Ulow angegebn. Es wird also nicht viel mehr 
fließen, weil die L-Spannung ansteigt und die H-Spannung abfällt.

Dieser Wert fleiß aber nur in der Low-Phase zeitlich je nach Baudrate.
Ausgangskennlinienfelder gibt es bei Digital-ICs selnten bis garnicht, 
etwas Schätzung bleibt also.

Es ist eben kein Kurzschluß im üblichen Sinn, es kann eine Überlastung 
sein, aber selbst da schätze ich die Höhe recht gering ein.

Gruß aus berlin
Michael

von Philipp K. (philipp_k59)


Lesenswert?

Vielleicht nochmal zum Arduino Pro Mini..

Ich habe einen FT232 Adapter mit einer Buchsenleiste am Ende, so brauch 
ich demMini nur einen kleinen PinHeader verpassen und kann so jederzeit 
zwischen vielen boards Plug&Play wechseln.

Andersrum würde das auch klappen, das man sich ne Leiste Buchsen 
bestellt und die am Mini anlötet.. fast alle Adapter sind Pin 
Kompatibel.

http://www.ebay.de/itm/181863534850

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Philipp K. schrieb:
> .. fast alle Adapter sind Pin
> Kompatibel.

und ich erwische genau solche 6 Pin Header welche es nicht sind!

wurden als USB TTL beworben was stimmt, aber mit V5 V3,3 und VCC dafür 
fehlt DTR für den Reset und die Belegung ist auch falsch!

von Philipp K. (philipp_k59)


Lesenswert?

die CPbLAbla von Profilic hab ich auch mal erwischt.. kann man für den 
Reset nen Draht anlöten..

einen echten FT232 Adapter sollt man immer haben !

von Wolfgang (Gast)


Lesenswert?

Michael U. schrieb:
> Es ist eben kein Kurzschluß im üblichen Sinn, es kann eine Überlastung
> sein, aber selbst da schätze ich die Höhe recht gering ein.

So schwierig ist das doch nicht, einen Widerstand in die Leitung zu 
hängen, der den Strom in jedem Fall auf einen unbedenklichen Wert 
begrenzt ;-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.