Forum: Mikrocontroller und Digitale Elektronik Atmega2560 mit USB beschreiben


von Basti (Gast)


Lesenswert?

Guten Abend,

ich möchte einen Atmega2560 mit einem USB-Kabel beschreiben. Ich nutze 
die Programmieroberfläche von Bascom dazu. Ein Bootloader befindet sich 
bereits auf dem Board, der richtige Programmer (MSC-Bootloader) wurde 
ausgewählt, der Port am Computer (in meinem Fall com3) ist korrekt 
eingestellt.

Ich kann jedoch noch nichts auf das Board schreiben. Klicke ich auf die 
Option "Program", wird mir ein Fenster mit der Überschrift "Reset Chip" 
angezeigt. Aus den Meldungen die darunter erscheinen, geht hervor, dass 
die Verbindung zum Board hergestellt wurde. Allerdings passiert 
anschließend nichts, auch wenn ich die Stromzufuhr zum Board resete.

Kann mir jemand weiterhelfen?

Basti

von 6635 (Gast)


Lesenswert?

Was sollte denn passieren ?

von Basti (Gast)


Lesenswert?

Ich habe versucht, ein Testprogramm aufzuspielen, dass lediglich die LED 
des Boards blinken lässt.

von Pete (Gast)


Lesenswert?

Com3 und USB ? Bist Du sicher, dass Du USB nutzt ?

von Pete (Gast)


Lesenswert?

Passt der Bootloader zu der ausgewählten Schnittstelle ?

Und funktioniert das Board überhaupt (Quarz) ?

Ohne weiter Infos ist das hier ein bisschen Spökenkiekerei ..

von Niels Hüsken (Gast)


Lesenswert?

Irgendwas sagt mir, das du mit einer fertigen Entwicklungsumgebung mit 
Entwicklungsboard arbeitest. Vieleicht verrätst du uns einfach, um 
welches es sich handelt.

von Basti (Gast)


Lesenswert?

Danke erst einmal für die Beiträge!

Das Board funktioniert, weil ich es problemlos mit dem 
Standard-ISP-Kabel programmieren kann. Der Bootloader war im 
Lieferumfang des Boards enthalten. Er wurde erfolgreich mit dem alten 
ISP-Kabeln aufgespielt, weil nach dem Aufspielen des Bootloaders ein 
4-mailiges Blinken erschien. Ich interpretiere das als Zeichen, dass der 
Bootloader auf dem Board ist.
Zur Frage nach der Entwicklungsumgebung: Ich programmiere mit Bascom 
AVR.

Basti

von Peter D. (peda)


Lesenswert?

Also nochmal, ganz langsam zum mitlesen: es gibt millionen von Hardware 
und Software und solange Du nicht sagst, was Du benutzt, kann Dir 
niemand helfen.


Du bist hier im Internet, d.h. mit nem konkreten Link auf das Board und 
die Software wirst Du mit Abstand am weitesten kommen.

Bzw. andersrum, wenn man erstmal lange rumsuchen/raten muß, was Du 
meinst, wirst Du auch keine Hilfe bekommen.

Die Hellseher treffen sich nicht in diesem Forum.


Peter

von Niels H. (monarch35)


Lesenswert?

"Lieferumfang des Boards".. welches Board? Das du mit Bascom handtierst, 
hab ich mitbekommen.

von Basti (Gast)


Lesenswert?

Also hier ist das Board:

http://www.robotikportal.de/phpBB2/dload.php?action=file&file_id=354

Als Kabel verwende ich Standard-USB (am Computer) -> Mini-USB (am Board)

Basti

von Peter D. (peda)


Lesenswert?

Ich vermute mal, das mit dem USB ist pure Hochstapelei, da ist einfach 
nur ein UART-USB-Konverter mit drauf.

Wird denn die COM3 richtig (ohne ?) im Gerätemanager erkannt, wenn Du es 
reinsteckst?

Probier doch erstmal den Bootloader per RS232 aus, obs läuft.

Ich hätte ja noch meinen Bootloader, wo ich bisher keine Probleme 
gemeldet bekommen habe, aber sobald ich darauf hinweise, meldet sich 
gleich der Falk :-)


Peter

von Niels H. (monarch35)


Lesenswert?

Wenn der richtige Bootloader installiert ist (nämlich der für USB) und 
Windowsseitig der Com-Treiber korrekt installiert ist (kein ? im 
Gerätemanager) und du die Hinweis.txt-Datei aus dem 
Bootloader-Zip-Archive !sorgfältig! und vor allem !komplett! gelesen 
hast, sollte es eigentlich keine Probleme beim Programmieren über USB 
geben.

Da steht nämlich was von FuseBits ändern....

von Basti (Gast)


Lesenswert?

Vielen Dank nochmal für die Beiträge!

Also das USB-Kabel taucht im Gerätemanager wirklich als "COM3" auf! 
Wundert mich auch.

Darauf, dass die Fusebits beim Aufspielen des Bootloaders richtig 
gesetzt wurden, habe ich genau geachtet. Obwohl die Anleitung zum 
Bootloader nicht eindeutig ist. Es wird nicht genau gesagt, ob die 
korrekte Einstellung der Fusebits nur beim Aufspielen des Bootloaders 
oder erst beim anschließenden Aufspielen der normalen Programme, oder 
beidesmal gesetzt werden müssen. Ich vermute, dass dies beidesmal 
geschehen muss und dies auch die Ursache für mein Problem ist.

Basti

von Alexey (Gast)


Lesenswert?

Hallo Basti,

die Fusebits kann der Bootloader nicht selbst einfach ändern, das kann 
man nur über den isp-Programmer. Poste mal nen Bild der aktuellen 
Fusebit-Einstellungen. Hast du in Bascom die korrekte 
Kommunikationsgeschwindigkeit eingestellt? :)

Wenns gar nicht klappen will, bei Bascom ist ein Bootloader dabei, passe 
den an und brate den nach dem Kompilieren drauf. Achtung, Baudrate und 
Quarz richtig einstellen sonst klappts nicht. Das sollte dann sicherlich 
gehen.
Ich kann dir den Bootloader sonst auch schnell kompilieren und hier 
anhängen ich muß nur wissen was für nen quarz auf dem Board drauf ist.

Alexey

von Niels H. (monarch35)


Lesenswert?

Alexey wrote:

> Wenns gar nicht klappen will, bei Bascom ist ein Bootloader dabei, passe
> den an und brate den nach dem Kompilieren drauf.

So einfach ist das nicht. Der AtMega2560 hat vier UARTs und soweit ich 
weiss verwendet der Bascom-Bootloader immer nur den Ersten. Man müsste 
also erstmal herrausfinden, an welchen UART der USB-Konverter 
angeschlossen ist.

von Alexey (Gast)


Lesenswert?

@Niels Hüsken,

laut dem Schaltbild des Boards wird der 3. UART des Mega256 verwendet. 
Der Bascom-Bootloader kann auch einen anderen UART nehmen, es muss nicht 
der erste sein. (Habe grade mal nachgesehen)

von Basti (Gast)


Angehängte Dateien:

Lesenswert?

Also im Anhang ist ein Screenshot mit den Einstellungen.

Habe es immer noch nicht geschafft, zu programmieren. Eine Kommunikation 
mit dem Board ist aber vorhanden, denn wenn ich den Mini-USB am Board 
herausziehe, bekomme ich auch eine entsprechende Meldungen.

Der Flashvorgang scheint immer dann zu haken, wenn die Meldung "Sendig 
init Byte" erscheint. Gehe ich auf "Abbrechen", weil sich minutenlang 
nichts tut, steht hinter "Sending init Byte" mal 240 oder 248, manchmal 
auch 254.

Das Board resete ich immer, indem ich den Strom ausschalte. Muss man das 
vielleicht anders machen?

Ich weiß absolut nicht weiter!

Basti

von Peter D. (peda)


Lesenswert?

Basti wrote:

> Habe es immer noch nicht geschafft, zu programmieren. Eine Kommunikation
> mit dem Board ist aber vorhanden, denn wenn ich den Mini-USB am Board
> herausziehe, bekomme ich auch eine entsprechende Meldungen.

Das bedeutet nichts.
Nur daß der USB-RS232 Konverterchip gefunden wurde.


Alexey wrote:

> laut dem Schaltbild des Boards wird der 3. UART des Mega256 verwendet.


Und, hast Du den Bootloader für die UART 3 neu compliert und 
aufgespielt?

Sonst kannst Du an der UART 0 warten bis zum St. Nimmerleins Tag.


Peter

von Basti (Gast)


Lesenswert?

Also ich verwende gar nicht den Bootloader, der in Bascom enthalten ist, 
sondern den Bootloader, der mit dem Board mitgeliefert und genau für 
dieses Board geschrieben wurde. Da muss der UART doch richtig 
eingestellt sein.

Ich habe noch einmal genau nachgeguckt, welche Meldung erscheint, sobald 
ich auf Abbrechen klicke. Da steht: "Loader returned: 240" Manchmal auch 
"Loader returned: 248" Was kann das bedeuten?

Basti

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.