Atmel Ice MK2 Com Port?

Gast #5269897
Lesenswert?

Hallo zusammen, ich habe mir einen Atmel Ice MK2 zugelegt um einen 
xMega128AU mit BASCOM Code zu Flashen. Zum Flashen benutze ich eine 
Externe Software namens myAVR PorgTool v1.41.
Dort habe ich sowohl den xMega als auch den Programmer bei "Sonstiges" 
auf "jtagmk2 - Atmel Jtag Ice MK2" eingestellt. Dort fehlt aber der Com 
Port.
Im Gerätemanager wird mir nur ein USB logo und "Atmel" angezeigt, dort 
im unterverzeichnis "Atmel-ICE Data Gateway. Dort habe ich aber 
keinerlei einstellmöglichkeit für einen Com Port. Hat in dieser hinsicht 
irgendeiner erfahrung gemacht?

gruß
Gast #5269950
Lesenswert?

AVR Dude ist ja auch überhaupt nicht umständlich...
Das avr ProgTool erfordert nun mal einen Com Port.

Bei meinem MySmart USB Light ist z.b. Com3 eingestellt. und läuft 
wunderbar mit einem Mega32. Das ist allerding ISP und kein JTAG.
Gast #5270258
Lesenswert?

Hi

>Wie gesagt hat dein Gerät keinen com Port. Punkt.

Dann kennst du nur die billigen Clone.

Aus dem Datenblatt:

JTAGICE mkII


Atmel JTAGICE mkII Features

    Fully compatible with Atmel Studio, ...
    ...

    USB 1.1 and RS232 Interface to PC for Programming and Control

    ... .

MfG Spess
Gast #5270350
Lesenswert?

Hmmm schrieb:
> Michael schrieb:
>> Richtig, aber ich mich weiter oben korrigiert dass ich keinen MK2 habe,
>> sondern nur den normalen ICE.
>
> ProgTool will den alten (!) JTAGICE mkII, Du hast den nicht kompatiblen
> neueren Atmel ICE.
>
> Was erwartest Du da?

Hier die liste der ICE´es :-)
Angehängte Dateien:
Moderator Persönliche Seite #5271215
Lesenswert?

Michael schrieb:
> kommt mir jetzt nicht mit AVR Dude.

Warum denn nicht?  Was glaubst du denn, wovon die von dir oben
gezeigte Liste der unterstützten Programmierer stammt?  Von
AVRDUDE.  (Das erkennt man schon am Programmer namens "bsd"; der
war nämlich der Anfang von Brian Dean's AVRDUDE-Projekt.) Nur halt
einer hornalten Version.  Aktuelle Versionen können nämlich durchaus
mit dem Atmel-ICE (neuerer Bauart) umgehen.
Gast #5271226
Lesenswert?

Moderator Persönliche Seite #5271231
Lesenswert?

Thomas E. schrieb:
> Stefan U. schrieb:
>> Mit den zahlreichen ICE Produkten hat Atmel reichlich Verwirrung
>> gestiftet.
>
> JTAGICE MKI, JTAGICE MKII und Atmel ICE.

Nein, JTAGICE, JTAGICE mkII, JTAGICE3, Atmel ICE.

Das originale JTAGICE wurde nur später gern als JTAGICE mkI tituliert,
um es vom mkII aktiv unterscheiden zu können.  Dem JTAGICE3 war nur
ein kurzes Produktleben gegönnt, da man es dann schnell durch das
Atmel ICE abgelöst hat.  Die Atmel-ICE-PCB-Versionen passen übrigens
in die Gehäuse des JTAGICE3.

(Außerdem gab es auch noch ICE50 und ICE200, die echte Emulatoren
waren, also auf Basis eines FPGAs.)
Moderator Persönliche Seite #5271241
Lesenswert?

Stefan U. schrieb:
>>> kommt mir jetzt nicht mit AVR Dude.
>> Warum denn nicht?
>
> Vielleicht bevorzugt er grafische Oberflächen.

Kann er ja machen.  Ich wollte nur, dass er kapiert, dass unter seiner
Oberfläche ein ganz normales AVRDUDE werkelt, nur eben in einer
ziemlich alten Version (wahrscheinlich Version 5.8, immerhin schon
aus dem Jahr 2009 (!)).

Nachteil all dieser GUI-Wrapper ist, dass AVRDUDE mit seinen
Fortschrittsanzeigen etc. nie wirklich für solche Wrapper konzipiert
worden ist.  Seit einiger Zeit gibt es stattdessen eine recht strikte
Trennung von Backend (in libavrdude) und Frontend (main.c), sodass
man eigentlich auch ein echtes grafisches Frontend bauen könnte.
Scheint aber keiner ernsthaft für nötig zu halten, zumindest haben
mich bislang keine entsprechenden Rückfragen erreicht.  Das Ganze wäre
dann einiges schneller (man muss die Session zum Programmer nur einmal
eröffnen) und anwenderfreundlicher, bspw. durch eine direkt
integrierbare Fortschrittsanzeige.
Beitrag #5271243 wurde von einem Moderator gelöscht.
Moderator Persönliche Seite #5271245
Lesenswert?

Thomas E. schrieb:
> Jörg W. schrieb:
>> Das originale JTAGICE wurde nur später gern als JTAGICE mkI tituliert,
>> um es vom mkII aktiv unterscheiden zu können.
>
> Meine Güte, kommst du jetzt auch noch mit der Erkenntnis, daß der Papst
> nur Franiziskus heißt?

Wenn du schon irgendwas behauptest, dann bitte richtig.  Ist ja nicht
nur, dass du eben bei Atmel nie ein JTAGICE mkI kaufen konntest, auch
die 3er hattest du vergessen.

Ich finde es übrigens durchaus verwirrend, dass man den Nachfolger
des JTAGICE3 nun einfach nur „Atmel ICE“ nennt, ohne irgendeinen Bezug
darauf, dass er schon drei Vorgänger hat.
Gast #5271555
Lesenswert?

Jörg W. schrieb:
> Warum denn nicht?

Weil!

Ich hab mir AVRdude runtergeladen. wollte es öffnen und hat sich sofort 
wieder geschlossen. Als ich gegooglet habe stand irgendwo dass es ein 
"Leistungstarkes" programm sei. Weiter habe ich gesehen was man machen 
muss um das zum laufen zu bringen und mit dem Windows cmd alles 
einrichten soll. Das ist mir zu umständlich. Ich hab bisher meine 
Software auf einem mega32 geflasht. Im weiteren verlauf der Software 
entwicklung stellte sich heraus das ich mehr Pins brauche und bin zu 
einem xMega128A1U umgestiegen. Ich muss viel Flashen-Testen- Werte 
erfassen umprogrammieren wieder Flashen und Testen. Da habe ich für son 
AVRdude kram keine Zeit.
Gast #5271734
Lesenswert?

> wollte es öffnen und hat sich sofort wieder geschlossen.

Hast du es im Dateimanager doppelt angeklickt? Das geht so nicht. 
Avrdude ist ein Kommandozeilenprogramm. Das muss man in einem 
"Eingabeaufforderung" Fenster benutzen.
Gast #5271864
Lesenswert?

Jörg W. schrieb:

> Tja, aber das ist ihm ja zu umständlich … dann kann man ihm wohl auch
> nicht helfen.

Warum muss avrdude denn so schwer sein? Ist das für Leute mit 
langeweile?  Ist das so eine art Prestige Programm, wer es laufen bringt 
hat was drauf??
Ich hab mich mit der eingabeaufforderung noch nie beschäftigt. So ein 
one-click programm wie Progtool würde mir völlig ausreichen, wenn es 
funktionieren würde.
Moderator Persönliche Seite #5271883
Lesenswert?

Michael schrieb:
> Jörg W. schrieb:
>
>> Tja, aber das ist ihm ja zu umständlich … dann kann man ihm wohl auch
>> nicht helfen.
>
> Warum muss avrdude denn so schwer sein?

Es ist keineswegs „schwer“.

Es ist einfach nur etwas ganz anderes als das, was du dir drunter
vorstellst.

In aller Regel tippt man das Kommando sowieso nicht mit der Hand in
die Tastatur, sondern man hinterlegt es irgendwo so, wie man sich den
jeweiligen Workflow in der Arbeit mit dem Controller eingerichtet hat.
Bei mir (und bei vielen anderen) ist das beispielsweise ein einem
Makefile.  Ich sage dann "make program", und es wird zuerst alles
compiliert, was notwendig ist, danach geflasht.  Kann man sich auch
noch auf eine Funktionstaste im Editor legen, dann bist du praktisch
bei dem, was eine IDE damit machen würde.

Andere bauen sich vielleicht einfach nur ein Batch-File dafür.

Nur: im Untergrund braucht man natürlich ein Tool, dem man irgendwie
dabei sagen kann, dass der Programmieradapter ein Atmel ICE ("-c
atmelice") ist, dass der Controller ein ATmega16 ("-p atmega16") ist,
dass man jetzt mit 100 kHz Programmiertakt ("-B 100kHz") arbeiten will,
dass die zu programmierende Datei "test.elf" heißt ("-U test.elf") usw.

Genau das Tool ist AVRDUDE.
1
avrdude -c atmelice -p atmega16 -B 100kHz -U test.elf

Offensichtlich war es ja auch demjenigen gut genug für die Arbeit,
der es dir irgendwo hinein eingebaut hat … nur dass er eben eine
Version von vorvorvorgestern mitliefert.

> Ich hab mich mit der eingabeaufforderung noch nie beschäftigt.

Dann wirst du wohl auch weiterhin zusehen müssen, jemanden zu finden,
der dir einen GUI-Wrapper für etwas baut, das man mit ein paar
Buchstaben auf der Kommandozeile auch selbst tippen könnte …
Gast #5272003
Lesenswert?

Das geht ja dann noch mit dem Commandozeilen Programm. Ich hab nur keine 
Zeit für 80er Jahre Spielereien die man hätte schon im 15ten Jahrhundert 
modernisieren können.  Als würde ich, wenn ich das Haus verlasse, mir 
jedesmal einen Haustürschlüssel im Keller anfertigen muss, nachdem ich 1 
Monat Schlüssel nachmachen gelernt habe.

Aber das war schon mal eine Hilfreiche erklärung, Jörg.
Moderator Persönliche Seite #5272086
Lesenswert?

Michael schrieb:
> Jörg W. schrieb:
>
>> avrdude -c atmelice -p atmega16 -B 100kHz -U test.elf
>
> Das ist alles, was ich zum Flashen eintippen muss?

Ja, wobei natürlich der letzte Parameter ein kompletter und gültiger
Pfad zu der Datei ist, aus der die Flash-Daten zu lesen sind.
AVRDUDE kann nicht erraten, in welchem Verzeichnis sich diese befindet. 
;)

Das "-B 100kHz" ist meist auch noch überflüssig, so auch bei dir, da
du ja einen Xmega hast.  Dieser wird über PDI angesprochen, daher wäre
in deinem Falle der zugehörige Programmer "atmelice_pdi".

Damit ist das exakte Kommando für deinen Fall:

avrdude -c atmelice_pdi -p atxmega128a3u -U test.elf
Gast #5272212
Lesenswert?

Falls einer Fragt, ich habe das "Ready for xMega" board von 
MicroElectronika aus Serbien. Dort kann man das PDI als auch das Jtag 
interface benutzen.

noch zwei Fragen: was ist eine .elf Datei? Das einzige was Bascom nach 
dem Compilieren auspuckt sind: .bas .bin .bm .cfg .cs .dbg .hex .obj 
.prg und .rpt

Also sieht der Dateipfad also so aus?:
-U C:\Programme\Test.elf
?
Gast #5272269
Lesenswert?

Glücklicherweise gibt es bei MicroElektronika einen Bootloader für 
dieses Board. Dort kann man direkt vom Computer über USB an das Board 
Flashen ohne jegliche Atmel Hardware. Funktioniert einwandfrei. Nur wenn 
ich mein eigenes
Custom Board dann anfertigen lasse werde ich so oder so die Atmel 
Hardware und das Comandozeilen Programm benutzen müssen.
Gast #5272280
Lesenswert?

> Ich hab nur keine Zeit für 80er Jahre Spielereien die man hätte schon im
> 15ten Jahrhundert modernisieren können.

Wie stellst du dir denn ein modernes Programm vor? Mit klicki-bunti 
Mausbedienung, und dann zusätzlich einen Makro Recorder der für dich die 
Maus bewegt und Buttons anklickt?
Gast #5272286
Lesenswert?

> was ist eine .elf Datei?

Ein Programm im elf Format (kannst du gerne mit exe vergleichen). Unter 
Linux sind fast alle normalen Programme elf Dateien, auch wenn sie nicht 
so heißen.

avrdude unterstützt auch andere Formate als hex.

-U flash:w:flash.bin
Gast #5272287
Lesenswert?

Stefan U. schrieb:

> Wie stellst du dir denn ein modernes Programm vor? Mit klicki-bunti
> Mausbedienung, und dann zusätzlich einen Makro Recorder der für dich die
> Maus bewegt und Buttons anklickt?

na so ähnlich wie bei Arduino oder eben beim Progtool. Datei auswählen 
und Flashen. Klick Klack.
Gast #5272290
Lesenswert?

Besser schneller wäre wenn ich direkt über Bascom Flashen könnte, aber 
das funktioniert bei mir nicht, auch nicht mit dem mySmartUSB light 
Programmer. Bascom hängt sich dann immer auf. Aber das ist eine andere 
Geschichte.
Moderator Persönliche Seite #5272299
Lesenswert?

Michael schrieb:
> Falls einer Fragt, ich habe das "Ready for xMega" board von
> MicroElectronika aus Serbien. Dort kann man das PDI als auch das Jtag
> interface benutzen.

Eigentlich gibt's bei Xmega keinen Grund, nicht PDI zu benutzen.
JTAG wäre dort wirklich nur noch dann sinnvoll, wenn man es im
ursprünglichen Sinne (JTAG Chaining) benutzen will.

Einige Xmegas haben nur PDI und kein JTAG.


> noch zwei Fragen: was ist eine .elf Datei?

https://de.wikipedia.org/wiki/Executable_and_Linking_Format

> Das einzige was Bascom nach
> dem Compilieren auspuckt sind: .bas .bin .bm .cfg .cs .dbg .hex .obj
> .prg und .rpt

Dann nimm die .hex-Datei.

> Also sieht der Dateipfad also so aus?:
> -U C:\Programme\Test.elf
> ?

Naja, in C:\Programme wird es vermutlich eher nicht stehen, sondern
sowas wie C:\Users\michael\Documents\...  Falls der Pfadname ein
(oder mehrere) Leerzeichen enthält, solltest du ihn komplett in
Anführungszeichen setzen:
1
avrdude ... -U "C:\Users\michael\Dokumente und Einstellungen\Mein Projekt\test.hex"

Im Windows-Dateimanager hast du in der Titelzeile mit der rechten
Maustaste eine Option "Copy as text" (keine Ahnung, wie das auf
deutsch übersetzt ist).  Damit kannst du zumindest den Verzeichnisnamen
anschließen via Rechte Maustaste -> Paste in cmd.exe einfügen.  Weiß
nicht, ob's das auch direkt für einen Dateinamen gibt, dafür benutze
ich Windows zu selten.
Gast #5272311
Lesenswert?

>> Wie stellst du dir denn ein modernes Programm vor?

> na so ähnlich wie bei Arduino oder eben beim Progtool.
> Datei auswählen und Flashen. Klick Klack.

Du hast was vergessen:
  - Controller Typ auswählen.
  - Com Port auswählen.

Und dann sind wir schon ziemlich nahe an den Kommandozeilenparametern 
von avrdude. Schau Dir wie gesagt den AVR8-Burn-O-Mat an. Da kannst du 
auswählen und klicken.
http://stefanfrings.de/avr_tools/AVR8-Burn-O-Mat.zip
Gast #5272320
Lesenswert?

Paul B. schrieb:
> Das war doch erst vor ein paar Tagen hier Thema. Suche mal danach.

Wenn ich in Bascom Flashen will steht oben dann "Programm Reagiert nicht 
mehr" und kann dann Bascom neu Starten.

-------------------------------------------------------------
Jörg W. schrieb:

> Naja, in C:\Programme wird es vermutlich eher nicht stehen, sondern
> sowas wie C:\Users\michael\Documents\...  Falls der Pfadname ein
> (oder mehrere) Leerzeichen enthält, solltest du ihn komplett in
> Anführungszeichen setzen:

Ja, vielen dank, werde ich mir mal aufschreiben. :)

------------------------------------------------------------
Stefan U. schrieb:
> Du hast was vergessen:
>   - Controller Typ auswählen.
>   - Com Port auswählen.

Im Progtool kann man auch die Spannung von 5 auf 3,3v umstellen <3
#5272322
Lesenswert?

Michael schrieb:
> Wenn ich in Bascom Flashen will steht oben dann "Programm Reagiert nicht
> mehr" und kann dann Bascom neu Starten.

Bei hunderten von Leuten steht das nicht. Bei Dir steht es. Das heißt 
nicht, daß hunderte Leute Glück haben, sondern daß Du irgendwelchen 
Mumpitz einstellst.

Pfriem ruhig weiter -vielleicht läuft es durch Zufall irgendwann.

SCNR
Paul
Gast #5272337
Lesenswert?

Paul B. schrieb:

> Bei hunderten von Leuten steht das nicht. Bei Dir steht es. Das heißt
> nicht, daß hunderte Leute Glück haben, sondern daß Du irgendwelchen
> Mumpitz einstellst.
>
> Pfriem ruhig weiter -vielleicht läuft es durch Zufall irgendwann.
>
> SCNR
> Paul

Ich mach den ganzen Tag nix anderes. Ich bin in einer "Zufall-Sekte" bei 
der ich 32468764523 Mio Euro im Monat Beitrag Zahle.
Gast #5272419
Lesenswert?

Hier das ganze "atprogram.exe"-Geraffel:
1
C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>atprogram
2
[ERROR] No command specified.
3
Atmel Studio Command Line Interface
4
Copyright (C) 2015 Atmel Corporation.
5

6
Usage: atprogram [options] <command> [arguments] [<command> [arguments] ...]
7

8
Options:
9
  -t  --tool <arg>           Tool name: avrdragon, avrispmk2, avrone, jtagice3,
10
                             jtagicemkii, qt600, stk500, stk600, samice, edbg,
11
                             medbg, atmelice, powerdebugger, megadfu or flip.
12
  -s  --serialnumber <arg>   The programmer/debugger serialnumber. Must be
13
                             specified when more than one debugger is
14
                             connected.
15
  -c  --comport <arg>        The com port to use for the programmer/debugger.
16
                             e.g. -c COM1 or -c 1
17
  -i  --interface <arg>      Physical interface: aWire, debugWIRE, HVPP, HVSP,
18
                             ISP, JTAG, PDI, UPDI, TPI or SWD.
19
  -d  --device <arg>         Device name. E.g. atxmega128a1 or at32uc3a0256.
20
  -v  --verbose              Verbose output (debug).
21
  -h  --host <arg>           Target host which runs the backend process.
22
  -p  --port <arg>           Specify which port to use for the backend process.
23
                             Ignored if the host option is not given.
24
  -l  --logfile <arg>        Log file for atpbackend output.
25
  -f  --force                Force command even if firmware is not up to date.
26
  -cl --clock <arg>          The frequency to use for communication with a
27
                             device (hz, khz, mhz, default hz). E.g. -cl 10mhz
28
  -mb --max-baudrate <arg>   The maximum baud rate for communication on awire
29
                             (bps).
30
  -xr --externalreset        Apply external reset when starting a session.
31
  -dc --daisychain <args,..> Set up a JTAG daisychain. Arguments are <devices-
32
                             before, devices-after, instr-before, instr-after>.
33
  -dca --daisychain_auto <arg> Deprecated.
34
  -sa --snippet_addr <arg>   Address where flash programming ram snippet should
35
                             be loaded.
36
  -nr --no_ram               Do not use ram snippet to program flash.
37
  -tv --target-voltage <arg> Set the STK600, STK500 or Powerdebugger target
38
                             voltage (float value).
39
  -a0 --aref0 <arg>          Set the STK600 Aref0 or STK500 aref generator
40
                             voltage (float value).
41
  -a1 --aref1 <arg>          Set the STK600 Aref1 generator voltage (float
42
                             value).
43
  -cg --clock-generator <arg> Set the STK600 or STK500 clock generator frequency
44
                             (hz, khz, mhz, default hz).
45
      --timeout <arg>        Set the timeout value in seconds for commands. The
46
                             default is 180 seconds. Set to 0 for no timeout.
47
  -q  --quiet                Do not display activity indicator.
48
  -?  --help                 Display help information.
49
  -V  --version              Display version information.
50
  -cf --configfile <arg>     Set the configuration setting file name with path.
51
  -ua --12v-updi-activation  Use the 12V activation sequence for UPDI.
52
                             Disconnect any peripheral on the UPDI line which
53
                             are not 12V tolerant.
54
  -ab --atbackend <arg>      Specify path to atbackend executable. If specified
55
                             with --host and --port, then --host and --port is
56
                             used.
57

58
Commands:
59
   calibrate        Performs the oscillator calibration procedure.
60
   chiperase        Full erase of chip.
61
   detect           Detects devices on the jtag interface for supported tools.
62
   dwdisable        Disable debugWIRE interface.
63
   erase            Erase the specified memory.
64
   exitcodes        Display possible exit codes for atprogram.
65
   help             Displays help for a specific command.
66
   info             Display information about a device.
67
   interactive      Run in interactive mode.
68
   list             Detect and print information about connected Atmel Tools.
69
   migration        Display help for migration from old command line utilities.
70
   panel            Pops-up Tool's settings Dialog.
71
   parameters       Sets given parameters on the given tool without doing anything else.
72
   powercalibration Performs the calibration procedure for the Powerdebugger.
73
   program          Program device with data from <file>.
74
   read             Read the contents of the memory on the device.
75
   reboot           Reboots the given tool.
76
   reset            Reset all domains and jump to the reset vector.
77
   secure           Set the security bit on UC3 and ARM devices.
78
   selftest         Performs the selftest procedure on Atmel-ICE.
79
   verify           Verify content of memory based on a file.
80
   version          Display the version.
81
   write            Write to the memory with values entered on the command line.
82

83
Arguments:
84
  Use atprogram help <command> to get available attributes.
85

86
Example:
87
  atprogram -t jtagice3 -i jtag -d at32uc3b0512 program -f e:\file.elf
88
  atprogram -t avrone -i pdi -d atxmega128a1 chiperase
89

90
For command specific help, use atprogram help <command>
91

92

93
C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>
Gast #5272459
Lesenswert?

Michael schrieb:
> Jörg W. schrieb:
>
>> Tja, aber das ist ihm ja zu umständlich … dann kann man ihm wohl auch
>> nicht helfen.
>
> Warum muss avrdude denn so schwer sein? Ist das für Leute mit
> langeweile?  Ist das so eine art Prestige Programm, wer es laufen bringt
> hat was drauf??
> Ich hab mich mit der eingabeaufforderung noch nie beschäftigt. So ein
> one-click programm wie Progtool würde mir völlig ausreichen, wenn es
> funktionieren würde.

Avrdude ist in erster Linie für die Maschine zur Maschine Kommunikation 
gedacht.
Maschinen können kein Klickibunti bedienen.
Beispiel: In make Files, kann man keine Klickibunti Programme verwenden.

Auch, möchte ich behaupten, dass Kommandozeilenprogramme zur Zeit noch 
weit in der Überzahl sind. Die siehst du nur nicht, weil du nicht 
hinschaust.

Meine Glaskugel sagt:
Du schneidest dir selber mit, dieser Ansicht/Einstellung, viele 
(mächtige) Wege ab.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren