Forum: Compiler & IDEs HEX oder BIN Datei mit minimal Erfahrung auf ATmega644 ohne Boatloader


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 Michael K. (michaelkies)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin der Michael und seit heute hier im Forum angemeldet. Ich habe 
die letzten Wochen bereits einiges hier gelesen und habe mit den Arduino 
Boards bereits einiges hinbekommen.

Doch jetzt bin ich an einem Punkt wo ich Hilfe benötige.
Ich habe einen ATmega644P-20PU der völlig nackt ist (ohne Bootloader). 
Der 644 kommt in einem Funkgerät zum Einsatz. Vom Softwareentwickler 
habe ich eine .hex und ein .bin Datei bekommen.

Ich habe mir dieses Programmiergerät bestellt: 
https://www.ehajo.de/boards/151/usp-mkii-avr-programmer

Wie bekomme ich nun einfach ohne viel Heckmeck die Software auf den 644. 
Der Hardwareaufbau zum Programmieren ist mir bekannt.

Gibt es intuitiver zu bedienende Software als das AVRdude?
Ich hab Microchip Studio in der aktuellen Version auf meinem Rechner, 
werde aber vom UI etwas erschlagen. Gibt es da einfachere Möglichkeiten?

von Testi (Gast)


Bewertung
0 lesenswert
nicht lesenswert

von Frank G. (frank_g53)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> Gibt es intuitiver zu bedienende Software als das AVRdude?

Vielleicht in Kombination mit einer IDE:
https://github.com/zkemble/AVRDUDESS
https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/

von 900ss D. (900ss)


Bewertung
0 lesenswert
nicht lesenswert
Frank G. schrieb:
> Vielleicht in Kombination mit einer IDE:
> https://github.com/zkemble/AVRDUDESS

Würde ich auch empfehlen.

von Carsten-Peter C. (carsten-p)


Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Hallo,
ich nutze das AVR-Studio sehr gerne. Ist zwar nur das 6.2, aber sollte 
sicher ähnlich sein. Sollte das Symbol nicht zu sehen sein, 
EXTRAS-DEVICE Programming wählen. Du musst auch an die Fuses denken.
Gruß Carsten

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
Carsten-Peter C. schrieb:
> Hallo,
> ich nutze das AVR-Studio sehr gerne. Ist zwar nur das 6.2,

Und heißt Atmelstudio, sieht man sogar im Screenshot ;-)

> aber sollte
> sicher ähnlich sein. Sollte das Symbol nicht zu sehen sein,
> EXTRAS-DEVICE Programming wählen. Du musst auch an die Fuses denken.

Ja. Wenn der Entwickler mitgedacht hätte, hätter er ein komplettes 
ELF-File erstellt, da muss keiner mehr mit Fuses rumhantieren.

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> ibt es intuitiver zu bedienende Software als das AVRdude?

Sicher.

> Ich hab Microchip Studio in der aktuellen Version auf meinem Rechner,

Na da hat du doch alles, was man braucht.

> werde aber vom UI etwas erschlagen. Gibt es da einfachere Möglichkeiten?

Nicht irre machen lassen! Du mußt nur EIN Menu aufrufen, irgendwo bei 
Tools/Device Programming. Mach dann mal ein paar Screenshots, ich hab 
das Microchip Studio nicht.

von Christoph db1uq K. (christoph_kessler)


Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Auf der Website des Programmers steht doch alles.
Kompatibel zu Atmelstudio (das hieß früher AVR-Studio, beide Namen sind 
ok) aber auch avrdudess und anderen. Man muss einen USB-Treiber 
herunterladen, und den Jungo-Treiber ersetzen.
Ich habe noch das letzte rein für AVR gedachte Studio 4.19, ohne SAM und 
das ganze Microsoft-Gedöns. Hier in der Virtual Box  mit WinXP.
Oben unter Tools - Connect Programmer, dann kommt dieses Auswahlmenü.

von michael_ (Gast)


Bewertung
-1 lesenswert
nicht lesenswert

von michael_ (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Oder eXtreme Burner.
Der  640 ist mit aufgeführt.

https://extreme-burner-avr.software.informer.com/

von Michael K. (michaelkies)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir AVRDUDE 6.3 und AVRDUDESS 2.13 installiert. Leider 
funktioniert es nicht wie erhofft. Die Verbindung vom Programmer zum 
ATmega scheint zu passen da Atmel Studio mit dem µC eine Verbindung 
aufbauen kann.

Habt Ihr eine Idee für mich was nicht stimmt?

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> Ich habe mir AVRDUDE 6.3 und AVRDUDESS 2.13 installiert. Leider
> funktioniert es nicht wie erhofft. Die Verbindung vom Programmer zum
> ATmega scheint zu passen da Atmel Studio mit dem µC eine Verbindung
> aufbauen kann.

Und warum dann avrdude? Brenn das Ding mit Atmel Studio, ist deutlich 
einfacher.

von 900ss D. (900ss)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> funktioniert es nicht wie erhofft

Ich vermute, du hast den passenden USB-Treiber nicht installiert? So wie 
hier beschrieben?
https://www.ehajo.de/dokuwiki/bausaetze:usp-mkii:anleitung#treiber

Ansonsten kannst du noch unter "Additional command line args" ein "-v" 
mit angeben, dann wird AVRDUDE etwas gesprächiger.

von Michael Kies (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Doch doch, den Treiber musste ich schon für Atmel Studio installieren.
Ich probiere das mal mit dem -v

von Frank G. (frank_g53)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Aus dem Datenblatt deines Programmers:
Er ist 100% kompatibel mit Atmelstudio (Ab v6.2) und avrdude (ab v6.0), 
kann daher direkt in gängigen Softwaren verwendet werden, wie:

Atmelstudio
Arduino
LunaAVR
avrdudess

Daher probiere es doch direkt in Atmel Studio.
Du brauchst dafür nur den Abschnitt "Device programming".
Bei "Tool" wählst du dein Programmiergerät aus.
(Vorher bei "Add Target" im Menü "Tool" hinzufügen).
Bei "Device" den richtigen Controller einstellen.

Unter "Fuses" die fuse-Einstellungen auslesen und evtl. anpassen.
Unter "Memories" die Hex-Datei aussuchen und mit "Program" brennen.

Im Anhang den Ausschnitt "Device Programming".

Mit Amtel-Studio brenne ich immer, damit gibt es selten Probleme.

: Bearbeitet durch User
von 900ss D. (900ss)


Bewertung
0 lesenswert
nicht lesenswert
Frank G. schrieb:
> Du brauchst dafür nur

Das solte mit AVRDUDE in Verbindng mit AVRDUDESS genauso einfach 
funktionieren ;)

Hat für meinen Geschmack den Vorteil ,dass man nicht so ein überladenes 
Studio installieren muss. Und das nur um ein Binary zu flashen.

Edit: Ah, er hat ja schon ATMEL Studio installiert.

: Bearbeitet durch User
von 900ss D. (900ss)


Bewertung
0 lesenswert
nicht lesenswert
Die Fehlermeldung deutet auch eher auf ein Problem zum Target hin. 
AVRDUDE scheint den Programmer zu finden.

Sind die Verbindungen zwischen Programmer und CPU richtig?

von Michael K. (michaelkies)


Bewertung
0 lesenswert
nicht lesenswert
MOSI, MISO, Clock und Reset gehen 1:1 vom Programmer auf den Chip. Ein 
Adurino versorgt den Chip mit 5V und GND. Ein 16MHz Quarz hängt am Pin 
12/13 und wird mit zwei 22pF Kerkos gegen GND geschaltet. Mit Studio 
konnte ich den Chiptyp und die Fuses auslesen. Ich denke die Verbindung 
stimmt.

: Bearbeitet durch User
von ooops (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> Ich denke die Verbindung stimmt.

Hast du einen freifliegenden Aufbau oder ist dein Controller
bereits irgendwo eingebaut? Für ersteres würde ein Foto deines
Aufbaus nützlich sein.

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> Mit Studio
> konnte ich den Chiptyp und die Fuses auslesen.

UNd was hindert dich dann, damit das HEX-File zu programmieren?

von Michael Kies (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe nichts gefunden wo ich meine Datei einfügen konnte und auch 
keinen Programm Button.

Hab dann bei Youtube nach passenden Tutorials gesucht und bin dann 
irgendwann bei AVRDudess gelandet.

In 20 Minuten bin ich wieder am Rechner und werde nochmal schauen.

von Michael K. (michaelkies)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Also,

vielen Dank an alle die geantwortet haben.
Mit den Infos von Frank G. und Studio habe ich es glaube hinbekommen. 
Jetzt muss ich noch schauen, was ich mit den Fuses machen muss.

Hier mal ein Bild meines Aufbaus:

Gruß,
Michael

von Falk B. (falk)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Michael Kies schrieb:
> Ich habe nichts gefunden wo ich meine Datei einfügen konnte und auch
> keinen Programm Button.

Willst du uns verarschen?
Du sagt, daß du angeblich die Fuses auslesen kannst, aber nicht das 
Fenster zum Flash programmieren findest?

> Hab dann bei Youtube nach passenden Tutorials gesucht und bin dann
> irgendwann bei AVRDudess gelandet.

OMG!

Zeigt mal einen Screenshot deines Atmelstudios. Ich hab das etwas ältere 
6.2, da sieht das so aus.

von ooops (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Michael K. schrieb:
> Hier mal ein Bild meines Aufbaus:

Da fehlen fahrlässigerweise die Abblock-Kondensatoren. Kein
Wunder also dass da ab und zu mal was geht und dann wieder
nicht.

Übliche Strafe für fehlende Abblock-Kondensatoren: Auspeitschen.

Und sage bitte nicht "es geht ja auch ohne"! Ach so, du weisst
nicht was Abblock-Kondensatoren sind und wo sie hingehören?

von Michael K. (michaelkies)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Also ich bin einen Schritt weiter. Ich hab mal passende Abblock 
Kodensatoren gesteckt und seither funktioniert auch AVRDUE. Ich habe 
aber mit Studio weiter gearbeitet.

Vom Programmierer habe ich Informationen erhalten, wie er die Fuses 
gesetzt hat (siehe Screenshot). Ich habe die dann in Studio auch gesetzt 
bis auf das Bit, dass die serielle Kommunikation abschaltet.

Ich hab also erst die Fuses gesetzt und dann das Hex file geschrieben.
Passt das aus eurer Sicht?

Gruß,
Michael

von Falk B. (falk)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Michael K. schrieb:
> Also ich bin einen Schritt weiter. Ich hab mal passende Abblock
> Kodensatoren gesteckt und seither funktioniert auch AVRDUE. Ich habe
> aber mit Studio weiter gearbeitet.
>
> Vom Programmierer habe ich Informationen erhalten, wie er die Fuses
> gesetzt hat (siehe Screenshot). Ich habe die dann in Studio auch gesetzt
> bis auf das Bit, dass die serielle Kommunikation abschaltet.

Naja, je nachdem was an den Pins wo dran hängt, willst du JTAG lieber 
ausschalten, also KEINEN Haken setzen. Sonst sind die Pins im Programm 
nicht verfügbar. JTAG brauchst du sowieso nicht.

> Ich hab also erst die Fuses gesetzt und dann das Hex file geschrieben.
> Passt das aus eurer Sicht?

Ja. Wenn du dir einen Gefallen tun willst, erstellst du ein .elf File 
mit dem Programm + Fuses. Dann musst du beim nächsten Mal nicht mehr 
nachdenken. Eigentlich sollte das dein Programmierer machen.
Einfach deinen programmierten IC mit gesetzten Fuses nehmen, diese 
nochmal lesen, dann im Menu links "Production file" auswählen. Flash und 
ggf. eeprom File auswählen, unten die Haken bei Flash und Fuses setzen 
und "SAVE" drücken. Um zu prüfen, ob das .elf File korrekt funktioniert, 
programmiert man es gleich mal ein, einfach oben im Fenster auswählen, 
die Haken bei Flash und Fuses setzen und "PROGRAMM" drücken.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.