Forum: Mikrocontroller und Digitale Elektronik ATmega32u4 Problem mit COM Port


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von J. (dignity)


Angehängte Dateien:

Lesenswert?

Hallo allerseits,

Ich habe bisher mit einem Arduino Leonardo (ATmega32u4) gearbeitet und 
mich dann entschieden ein eigenes PCB mit dem entsprechenden 
Microcontroller zu erstellen.

Das ganze scheint auch so weit funktioniert zu haben, allerdings wird 
mir kein COM Port angezeigt.
Bisher war es so, dass ich mit avrdude die .hex Datei auf den Arduino 
Leonardo hochgeladen habe. Dabei habe ich beim Leonardo einfach die 
Reset Taste gedrückt und er wurde mir bei "Geräte und Drucker" für ca. 
10 Sekunden mit COM Port angezeigt. Innerhalb dieser paar Sekunden habe 
ich dann per CMD den avrdude Befehl zum hochladen ausgeführt und alles 
hat super funktioniert.

Mein selbst erstelltes PCB wird zwar auch unter "Geräte und Drucker" als 
"ATm32U4DFU" angezeigt, jedoch taucht beim Reset kein COM Port auf und 
das Gerät erscheint nach ca. einer Sekunden erneut als "ATm32U4DFU". Ich 
habe dann mal in der Arduino IDE nachgesehen. Ebenfalls kein Gerät auf 
einem COM Port gefunden. Ich habe auch mal probiert die Reset Taste 
lange gedrückt zu halten oder schnell hintereinander zu drücken (wurde 
auf der Seite von Arduino empfohlen das mal zu probieren weil einige 
Klone das wohl so machen).

Was ich auch probiert habe ist den HWB Pin des ATmega32u4 sowohl auf GND 
als auch 3V3 zu setzen. Funktioniert beides troztdem nicht (ich habe auf 
dem PCB einen Schalter mit dem ich den HWB ändern kann). Ich habe das 
auch mal mit einem Multimeter durch gemessen um sicher zu gehen, dass 
ich den Schalter richtig verlötet habe (Bis auf den Schalter und eine 
Sicherungshalterung sind der Rest reine SMD Teile die vom Hersteller des 
PCBs gelötet wurden). Alles in Ordnung.

Hat irgendjemand eine Idee wie ich den ATmega32u4 so resette dass er ein 
Programm annimmt?

Vielen Dank schonmal im Voraus für die Hilfe.
- Jannis

ps.: Im Anhang sind Screenshots vom "Geräte Manager" und "Drucker und 
Geräte". Der COM 1 den man sieht gehört nicht zum ATmega32u4.

: Bearbeitet durch User
von Flunder (flunder)


Lesenswert?

Auf dem Arduino ist im µC schon ein Bootloader drin, der einen COM-Port 
betreibt und dort auf Kommandos von avrdude hört.

von Harald K. (kirnbichler)


Lesenswert?

Flunder schrieb:
> Auf dem Arduino ist im µC schon ein Bootloader drin

... und der fehlt bei Deinem Selbstbau.

Siehe auch Beitrag "Wie programmiert man für einen Atmega32u4?"

von J. (dignity)


Lesenswert?

Verdammt. Ich weiß wohl nicht warum der  Bootloader mit COM Port bei mir 
fehlt. Dachte der wäre beim ATmega32u4 standartmäßig drauf.

von Flunder (flunder)


Lesenswert?

Bei Chips im TQFP Gehäuse scheint Microchip einen eigenen Bootloader 
vorprogrammiert zu haben, deshalb siehst Du auch was im Gerätemanager. 
Es gibt auch eine .hex Datei von dem was da im Flash steht. Allerdings 
habe ich auf die schnelle keine Info gefunden, welches Programm auf 
PC-Seite dazu passt.

von Mario M. (thelonging)


Lesenswert?

google: dfu programmer

von J. (dignity)


Lesenswert?

Mario M. schrieb:
> google: dfu programmer

Vielen Dank dir. Ich habe mal nach „ATmega32u4 dfu programmer“ gesucht. 
Kam dann auf eine Hilfsseite von Arduino. Unter Windows habe ich den 
dfu-programmer leider nicht ans laufen bekommen aber auf der Hilfsseite 
wird für Windows das Programm „Flip“ empfohlen. Das hat super 
funktioniert. Vielen Dank dir also. Wusste vorher einfach nicht wonach 
ich suchen sollte.

von Purzel H. (hacky)


Lesenswert?

> Dachte der wäre beim ATmega32u4 standartmäßig drauf.

Welcher Bootloader ? Man kann von Irgendwas mit irgend einem Protokoll 
Irgendwas bootloaden.
Ich hab zB mal einen Bootloader geschrieben, welcher eine Webseite 
zeigte, ueber welche man neuen Code hochladen konnte.
Ebenso denkbar waere eine SD Karte beim Boot zu Suchen und zu lesen.

von Arduino F. (Firma: Gast) (arduinof)


Lesenswert?

Purzel H. schrieb:
> Welcher Bootloader ? Man kann von Irgendwas mit irgend einem Protokoll
> Irgendwas bootloaden.

Den Hardware Bootloader des 32U4 kann man mit Atmel Flip nutzen.
Auch Avrdude könnte das Flip Protokoll nutzen (ohne Gewähr)

Natürlich geht auch ISP!
Und auch HVPP (ohne Gewähr)

: Bearbeitet durch User
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.