INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino Pro Micro *.hex manuell hochladen.
23.07.2020, 13:06 (Dieser Beitrag wurde zuletzt bearbeitet: 23.07.2020 13:44 von Mathias.)
Beitrag #1
Arduino Pro Micro *.hex manuell hochladen.
Wen ich folgendermassen auf der Console mit avrdude eine *.hex hochladen will.
Code:
/home/tux/Programme/sloeber//arduinoPlugin/packages/arduino/tools/avrdude/6.3.0-arduino17/bin/avrdude -C/home/tux/Programme/sloeber//arduinoPlugin/packages/arduino/tools/avrdude/6.3.0-arduino17/etc/avrdude.conf -patmega32u4 -cavr109 -P/dev/ttyACM0 -b57600 -D -Uflash:w:/home/tux/Dropbox/Sloeber_Projecte/sloeber-workspace/leonardo_test/Release/leonardo_test.hex:i
, kommt folgender Fehler:
Code:
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding

avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding^C

Nur zu Frage, was macht Arduino anders. das es dort klappt ?

Irgendwas muss da vorher passieren, da ich vor avrdude noch folgende Ausgabe habe:
Code:
Starting upload
Uploading project "leonardo_test" with "AVRDUDE"
Forcing reset using 1200bps open/close on port : "/dev/ttyACM0"
PORTS { /dev/ttyACM0, /dev/ttyS0,} / { /dev/ttyS0,} => {}
PORTS { /dev/ttyACM0, /dev/ttyS0,} / { /dev/ttyS0,} => {}
PORTS { /dev/ttyACM0, /dev/ttyS0,} / { /dev/ttyACM0, /dev/ttyS0,} => {}
Com port appeared and disappeared with same name
Com port reset took 500 ms.
Using port "/dev/ttyACM0" from now onwards
Ending reset
So wie es aussieht, macht er noch etwas mit dem COM-Port.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 13:28 (Dieser Beitrag wurde zuletzt bearbeitet: 23.07.2020 13:31 von MicroBahner.)
Beitrag #2
RE: Arduino Pro Micrp *.hex manuell hochladen.
Ja, er startet den bootloader indem er die Baudrate auf 1200 Baud stellt. Da der 32u4 eine native USB Schnittstelle hat, bedeutet das auch, dass er sich am PC abmeldet, und sich der Bootloader dann neu anmeldet. Dabei bekommt er dann auch eine neue Com-Port Nummer, die die IDE dann erstmal sucht. (Das ist zumindest auf Windows so, aber auf Linux muss es ähnlich sein).
Erst dann startet der eigentliche Upload (mit der Com-Nr des Bootloaders).

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 13:48
Beitrag #3
RE: Arduino Pro Micrp *.hex manuell hochladen.
Zitat:Ja, er startet den bootloader indem er die Baudrate auf 1200 Baud stellt. Da der 32u4 eine native USB Schnittstelle hat, bedeutet das auch, dass er sich am PC abmeldet, und sich der Bootloader dann neu anmeldet.
Ich denke, nur die Baud auf dem PC auf 1200 zu stellen reicht kaum.
Da wird doch sicher noch etwas gesendet, ZB. DTR / RTS ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 13:53
Beitrag #4
RE: Arduino Pro Micrp *.hex manuell hochladen.
Ich habe am PC folgendes vor dem hochladen mit avrdude gemacht:
PHP-Code:
procedure ResetCom;
var
  
SerialHandleTSerialHandle;
begin
  SerialHandle 
:= SerOpen('/dev/ttyACM0');
  
SerSetParams(SerialHandle12008NoneParity1, []);

  
SerSetDTR(SerialHandleFalse);
  
SerSetRTS(SerialHandleFalse);
  
SerSetDTR(SerialHandleTrue);
  
SerSetRTS(SerialHandleTrue);

  
SerClose(SerialHandle);
end
Bringt aber nichts. Der Code ist Pascal/Lazarus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 14:17
Beitrag #5
RE: Arduino Pro Micrp *.hex manuell hochladen.
Könnte es sein, dass dieser Code in einem anderen Prozesskontest läuft und er deshalb keinen Einfluss auf den Prozess mit avrdude hat?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 15:26
Beitrag #6
RE: Arduino Pro Micro *.hex manuell hochladen.
Zitat:dass dieser Code in einem anderen Prozesskontest läuft
Nein, der wird zuerst ausgeführt, avrdude kommt erst später.

Ich habe folgendes versucht.
PHP-Code:
SerialHandle := SerOpen('/dev/ttyACM0');
  
SerSetParams(SerialHandle12008NoneParity1, []);

  
Sleep(250);
  
SerSetDTR(SerialHandleFalse);
  
SerSetRTS(SerialHandleFalse);
  
Sleep(250);
  
SerSetDTR(SerialHandleTrue);
  
SerSetRTS(SerialHandleTrue);
  
Sleep(250);
  
SerClose(SerialHandle); 
Dies hat einmal funktioniert, nachher nicht mehr.
Somit muss es irgendwie mit DTR und RTS zusammenhängen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 16:04 (Dieser Beitrag wurde zuletzt bearbeitet: 23.07.2020 16:18 von MicroBahner.)
Beitrag #7
RE: Arduino Pro Micro *.hex manuell hochladen.
Das hat nichts mit DTR oder RTS zu tun.
Ich hab das mal einfach mit Putty nachvollzogen: Eine Verbindung mit putty aufbauen. Dann bei stehender Verbindung in putty die Baudrate auf 1200 setzen, und danach putty beenden - d.h. den Comport schließen/freigeben. Dann macht der Leonardo einen Reset und geht in den Bootloader.

P.S. Was der putty beim Beenden anders macht als dein SerClose() weis ich allerdings nicht. Es funktioniert so aber auch mehrmals hintereinander. Sobald der putty sich beendet, macht der Leonardo den Reset.
P.P.S. Schließt das SerClose nur die Verbindung, oder gibt es den ComPort auch frei, sodass ihn ein anderer Prozess nutzen kann?

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.07.2020, 16:14
Beitrag #8
RE: Arduino Pro Micro *.hex manuell hochladen.
Meinst du mit Putty eine Bibliothek für C++, mit der man am PC mit der Com-Port kominizieren kann ?
Onkel Google liefert mit nur SSh und Telnet Zeugs.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arduino Mega 2560 vs Arduino DUE Batucada 24 8.685 11.07.2020 15:46
Letzter Beitrag: Tommy56
Bug plötzlich Fehler beim Hochladen HaWe 1 3.524 07.04.2020 09:42
Letzter Beitrag: thomas450
  Arduino due, manuell Flashen Mathias 0 741 13.03.2020 15:05
Letzter Beitrag: Mathias
  Pro Micro: SerialMonitor-Probleme AnFi 14 3.475 20.05.2019 16:10
Letzter Beitrag: AnFi
  arduino micro wiederbeleben? woswasi 7 2.130 02.05.2019 12:29
Letzter Beitrag: MicroBahner
  Ethernet Shield an Arduino Micro Ardusil 3 2.271 02.12.2018 13:59
Letzter Beitrag: Ardusil
  Fehlermeldung beim Hochladen erci74 3 5.029 14.03.2018 23:15
Letzter Beitrag: hotsystems
  Nano vs Micro... carsten9189 19 11.749 01.03.2018 11:22
Letzter Beitrag: carsten9189
  Spannungsversorgung Arduino Micro Andreas75s 4 2.943 08.12.2017 14:12
Letzter Beitrag: Andreas75s
  Kompatibilität UNO /Micro für SMD-Ofen Einhorn 3 1.491 30.11.2017 09:14
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste