Pages: [1]   Go Down
Author Topic: Leonardo und avrdude  (Read 663 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo zusammen,
ich möchte meinen Leonardo unabhängig von der IDE von Arduino programmieren. Das Problem ist nun das nach dem überspielen des Programmcodes mit avrdude der Leonardo keinen Port mehr erhält. Mache ich es über die IDE erscheint der Leonardo im Geräte-Manager wieder unter dem voher eingestelltem Port.
Kann es also sein das Arduino noch zusätzlichen Code anhängt um die USB-Funktionen zu aktivieren.

Gruß Eulenspiegel
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Du kannst Dir in der IDE ja anzeigen lassen, welche Kommandos die IDE ausführt. Wenn Du das selbe machst, sollte auch das Resultat identisch sein. Für mich tönt es ein wenig nach einem fehlenden Reset des Leonardos, aber so ganz schlau werde ich nicht aus Deinen Ausführungen. Da Du von Port und Geräte-Manager schreibst, gehe ich von einer Windows-Umgebung aus. Ist das richtig?
Poste Deinen avrdude-Aufruf!
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 258
Posts: 21486
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ist das HEX-file das Du mit avrdude machst gleich groß wie das mit IDE erzeugt wird?
grüße Uwe
« Last Edit: November 19, 2012, 11:06:10 am by uwefed » Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Ist das HEX-file das Du mit avrdude machst gleich groß wie das mit IDE erzeugt wird?

Mein avrdude lädt nur die Daten zum ATmega hoch, das Hex-File muss dafür bereits vorhanden sein. Ich nehme mal an, das wird per Makefile erzeugt.

Interessanter wäre, ob der Leonardo durch Ausstecken und wieder Einstecken auch wieder "einen Port erhält" (oder wie auch immer Du die Anmeldung am USB nennst). Dies natürlich im Fall, wenn avrdude alleine (und nicht die IDE) den kompilierten Sketch hochgeladen hat.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi, erstmal danke für dein Post. Der Leonardo wird nach dem upload durch avrdude nicht mehr als USB-Gerät erkannt. Das liegt aber daran das die IDE noch etwas Programmcode für die USB-Schnittstelle im Hintergrund zusätzlich einbindet. Kurz gesagt ich muss die USB-Schnittstelle im Leonardo aktivieren.
Gruß Eulenspiegel
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Kurz gesagt ich muss die USB-Schnittstelle im Leonardo aktivieren.

Das machst Du schon, wenn Du das Serial-Objekt in Deinem Sketch verwendest. Dann wird automatisch der entsprechende Code eingebunden. Der Leonardo-Bootloader macht das natürlich auch, damit er bereit für einen Code-Upload per USB Serial Profile ist.

Wenn Du das Serial-Objekt nicht verwendest, macht es auch keinen Sinn, den entsprechenden Code zu laden, da er ja nicht verwendet würde und nur Rechenzeit auf dem Leonardo beanspruchen würde.

Vielleicht machst Du aber auch einen Fehler im Code oder bei der Compilation. Kannst Du Makefile und Code posten?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ich programmiere nicht mit der IDE von Arduino, deshalb kann da auch nichts eingebunden werden.
Gruß Eulenspiegel
Logged

Switzerland
Offline Offline
Faraday Member
**
Karma: 108
Posts: 5144
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
ich programmiere nicht mit der IDE von Arduino, deshalb kann da auch nichts eingebunden werden.

Aber Du benützt die Bibliotheken von Arduino?

Ansonsten würde ich Dir zumindest empfehlen, einen Teil davon zu gebrauchen, sonst musst Du den ganzen USB-Teil mit CDC usw. selbst schreiben.
Logged

Pages: [1]   Go Up
Jump to: