Forum: Mikrocontroller und Digitale Elektronik asm in hex umwandeln


von Dominik H. (super_flummy)


Lesenswert?

Hallo,

ich mach das umwandeln von asm zu hex jetzt zum ersten mal.

Kann mir wer sagen wie ich das im AVR Studio hin bekomme, das ich aus 
der asm datei eine hex datei bekomme die ich dann auf den IC brenne 
kann.

Vielen dank im voraus
Dominik

von Gast (Gast)


Lesenswert?

Ich nehm dazu die Taste F7.

von Au weia Nr. 133087612340458254 (Gast)


Lesenswert?

Der Code dafür ist ganz einfach:

// asm in hex umwandeln

string convert(s:string)
{
    return 'hex'
}

void main(void) {
    var a$ = 'asm'
    print convert(a$)
}

//end

Für weitere Auskünfte zu diesem Programmsteuerungscode einfach die Hilfe 
vom AVR-Studio oder die Tutorials hier im Forum lesen.

von Dominik H. (super_flummy)


Lesenswert?

hab ich auch schon gemacht. der macht aber Fehlermeldung:
FATAL ERROR: Cannot open output file D:\Dokumente und 
Einstellungen\Kr³mel\Eigene Dateien\Blinklicht.hex: No such file or 
directory

von Paul Baumann (Gast)


Lesenswert?

Du mußt zuerst unter dem Menüpunkt "Projekt" auf "Assembler Options"
gehen, um das gewünschte Ausgabeformat (.hex) zu erzeugen. Zum Assem-
blieren des Quelltextes brauchst Du dann nur F7 zu drücken.

MfG Paul

von Gast (Gast)


Lesenswert?

Was verstehst Du denn unter dieser Fehlermeldung?
Ich seh das so, daß wohl das angegebene Verzeichnis nicht existiert?!?
Und lass mal die Umlaute aus den Datei-/Ordnernamen raus!

von Dominik H. (super_flummy)


Lesenswert?

So wenn ich auf F7 drücke macht er mir eine asm datei draus

von Gast (Gast)


Lesenswert?

Aus was - bitte schön - macht der eine ASM-Datei????
Ich mach das immer so, daß ICH die ASM-Datei schreibe, dann auf F7 
drücke, und dann bekomme ich automatisch eine HEX-Datei.

von Dominik H. (super_flummy)


Angehängte Dateien:

Lesenswert?

ich hab das so

von Paul Baumann (Gast)


Lesenswert?

>daß ICH die ASM-Datei schreibe, dann auf F7
>drücke, und dann bekomme ich automatisch eine HEX-Datei.

Da hast Du aber Glück! ;-)
Die meisten Leute bekommen erst mal einen Schwung "Assembly Errors",
bevor sie die .hex-Datei erhalten.

Leidgeprüft
Paul

von Gast (Gast)


Lesenswert?

das kommt dann wohl auf den Umfang des Projekts an!

von Dominik H. (super_flummy)


Lesenswert?

Gast schrieb:
> das kommt dann wohl auf den Umfang des Projekts an!

??????

von Gast (Gast)


Lesenswert?

> ??????
das sollte an Paul gehen

von Au weia Nr. 133087612340458257 (Gast)


Lesenswert?

> Ich mach das immer so, daß ICH die ASM-Datei schreibe...

Schön blöd. Ich lasse die ASM-Datei immer von den Leuten hier im Forum 
schreiben. Ist doch viel zu schönes Wetter draußen, um sowas selbst zu 
machen.

von Dominik H. (super_flummy)


Lesenswert?

Oh weh ich kapier das einfach nicht.

von Gast (Gast)


Lesenswert?

Egoist!!

von Paul Baumann (Gast)


Lesenswert?

@Gast
Das war nur ein Scherz. Wer ohne Fehler ist, der werfe mit dem ersten
STK500. ;-)

MfG Paul

von Dominik H. (super_flummy)


Lesenswert?

Mein größtes Problem wird sein das ich wenig bis kein englisch kann.

von faustian (Gast)


Lesenswert?

Er meint dass lange nicht jede .asm Datei (sogenannter Quell - oder 
Quaeltext) in ein .hex (sogenannter Objektcode) umgewandelt werden kann.

Betrachte "das" besser als einen Compiler als als einen Formatwandler.

von Karl H. (kbuchegg)


Lesenswert?

Dominik H. schrieb:
> ich hab das so

Ja.
Jetzt drückst du F7.
Was passiert?

von Karl H. (kbuchegg)


Lesenswert?

Dominik H. schrieb:
> Mein größtes Problem wird sein das ich wenig bis kein englisch kann.

Dann hast du ein Problem.
Also: Wörterbuch raus und mal die Überschriften in den Menüs übersetzen, 
sofern die engl. Wörter nicht bekannt sind.

von Dominik H. (super_flummy)


Lesenswert?

Karl heinz Buchegger schrieb:
> Dominik H. schrieb:
>> ich hab das so
>
> Ja.
> Jetzt drückst du F7.
> Was passiert?

dann bekomme ich nur den Sch**

FATAL ERROR: Cannot open output file D:\Dokumente und 
Einstellungen\Kr³mel\Eigene Dateien\Blinklicht.hex: No such file or 
directory

aber ich hab den Pfad schon geändert ohne den umlaut im Pfad

von Karl H. (kbuchegg)


Lesenswert?

Dominik H. schrieb:
> Karl heinz Buchegger schrieb:
>> Dominik H. schrieb:
>>> ich hab das so
>>
>> Ja.
>> Jetzt drückst du F7.
>> Was passiert?
>
> dann bekomme ich nur den Sch**
>
> FATAL ERROR: Cannot open output file D:\Dokumente und
> Einstellungen\Kr³mel\Eigene Dateien\Blinklicht.hex: No such file or
> directory
>
> aber ich hab den Pfad schon geändert ohne den umlaut im Pfad

Genau.
Drum steht da immer noch "Kr³mel"

Fang ein neues Projekt an.
Aber diesmal legst du es in einen Pfad mit einem vernünftigen 
Dateinamen. Mach dir ein Verzeichnis "Projekte" auf dem 
Hauptverzeichnis. Darunter ein Verzeichnis "Blinklicht" und dort 
erzeugst du dann dein neues Projekt. Kopierst den ASM-Quellcode hinein 
und übersetzt.

von Ahem (Gast)


Lesenswert?

>aber ich hab den Pfad schon geändert ohne den umlaut im Pfad
Wieso bekommst Du dann eine Fehlermeldung mit Umlaut?

von Gast4 (Gast)


Lesenswert?

Dominik H. schrieb:
> Mein größtes Problem wird sein das ich wenig bis kein englisch kann.

Dann lerne das - oder such Dir ein anderes Hobby, ohne geht Elektronik 
nicht mehr.

Gast4

von Ahem (Gast)


Lesenswert?

Wegen Englisch:

http://translate.google.de/translate_t?hl=de

übersetzt Dir Seiten und Texte.

Allerdings fürchte ich, das man schon technische Begriffe kennen muss um 
den Unsinn in der Übersetzung im Kopf korrigieren zu können.
Aber man hat wenigstens einen Ansatzpunkt.

von Wörterbuch EN-DE (Gast)


Lesenswert?


von Paul Baumann (Gast)


Lesenswert?

@Dominik
>ich wenig bis kein englisch kann.
Ich habe es auch nicht gelernt, -es ist aber trotzdem möglich, sich
zurechtzufinden. Hier ist ein Link:
http://www.robomodules.de/portal/index.php?id=199&type=1

um sich in die Bedienung des AVR-Studio einzuarbeiten.

Denke daran:
1. "Aller Anfang ist schwer", sprach der Dieb und stahl einen Amboß.
2. Nicht die Flinte in's Korn werfen, das könnte den Mähdrescher
   beschädigen.

Grins
Paul

von Dominik H. (super_flummy)


Lesenswert?

so hab jetzt ein neues Projekt gemacht wo ich dann auf Verzeichnis 
D:Blinlicht das projekt gespeichert habe. Danach habe ich auf F7 
gedrückt, nach dem ich dann eine andere Datei endung bekommen habe als 
HEX die ich dan Umbenannt habe in .hex. danach habe ich jetzt eine HEX 
datei bekommen.

ich hoffe das die HEX datei die richtige für mein Projekt ist.
Falls was schief gehen sollte ist halt der IC am Ar**** aber egal.


Danke für die Hilfe.

MFG
Dominik

von Miraculix (Gast)


Lesenswert?

Für Übersetzungen sehr empfehlenswert, kann mehr als nur de-en!

http://www.leo.org

MfG

Miraculix

von Paul Baumann (Gast)


Lesenswert?

>ich dann eine andere Datei endung bekommen habe als
>HEX die ich dan Umbenannt habe in .hex.

Was machst Du denn für einen Lötzinn, äh Blödsinn?!

Ich habe doch weiter oben schon geschrieben, daß Du das richtige
Ausgabeformat einstellen mußt. Wenn Du einfach irgendwelchen
Mumpitz in "hex" umbenennst, mußt Du Dich nicht wundern, wenn
der Kontroller hustet und spuckt.

MfG Paul

von Karl H. (kbuchegg)


Lesenswert?

Dominik H. schrieb:
> gedrückt, nach dem ich dann eine andere Datei endung bekommen habe als
> HEX die ich dan Umbenannt habe in .hex. danach habe ich jetzt eine HEX
> datei bekommen.

Äh nein.

Ein Pferd bleibt ein Pferd, auch wenn man es als Esel verkleidet.

> ich hoffe das die HEX datei die richtige für mein Projekt ist.
> Falls was schief gehen sollte ist halt der IC am Ar**** aber egal.

So schnell gehts nicht.
Dein Brennprogramm, wird dein 'HEX'-File nicht akzeptieren.
Das findet nämlich raus, dass du versuchst ihm etwas anderes unter dem 
Namen HEX-Datei unterzujubeln :-)

von Dominik H. (super_flummy)


Lesenswert?

Hat Funktioniert. ohne motzen und mossern habe ich die " HEX " Datei auf 
den IC gebracht.

Einen IC habe ich glaub ich vermurkst da ich ihn aus versehen 
geschlossen ( Gesperrt ) habe.

naja. ich werde jetzt die Platine noch Ätzen und die Schaltung mal 
aufbauen mal sehen was dabei raus kommt.

Aus Fehlern lernt man.


Gruß
Dominik

von Ahem (Gast)


Lesenswert?

Aber irgendwas stimmt da nicht.
Wenn Du alles richtig einstellst, solltest Du nichts umbenennen müssen.

Mir ist unerklärlich warum irgendeine ominöse Datei in hex umbenannt, 
programmiert werden können sollte. Welche Endung hatte den die Datei 
vorher?

von Dominik H. (super_flummy)


Lesenswert?

Weis ich nicht mehr so genau, war was mit T

Ich war zu schnell:-))

von Ahem (Gast)


Lesenswert?

Das ist doch ganz einfach: Assembliere nochmal, dann entsteht auch die 
Datei neu.

von faustian (Gast)


Lesenswert?

Wenn es eine Toolchain ist bei der direkt Binaermaterial an die 
Brennsoftware gegeben wird - wie soll letztere denn beurteilen was sie 
da bekommt, ohne die Maschinensprache der CPU im Detail zu kennen...

von Gast (Gast)


Lesenswert?

> Ein Pferd bleibt ein Pferd, auch wenn man es als Esel verkleidet.

lol..ich glaub der ging anders herum....
Ein Esel bleibt ein Esel, auch wenn man ihn als Pferd verkleidet..

von Dominik H. (super_flummy)


Lesenswert?

Ahem schrieb:

Welche Endung hatte den die Datei
> vorher?

TMP Wars

von Ahem (Gast)


Lesenswert?

>TMP Wars

Das ist eine "temporäre" Datei. D.h. da kann alles mögliche drinstehen, 
wenn ich auch nicht grundsätzlich ausschliessen möchte, das bei 
AVRStudio der Inhalt dem letztlichen HEX-File entspricht. Es kann aber 
auch sein, das dort nur irgendein Zwischenstand, z.B. vor dem patchen 
von Vorwärst-Sprüngen drinsteht.

Am besten ist es wenn Du wirklich das HEX-File nimmst.

von PJ (Gast)


Lesenswert?

Es kann auch sein, dass die Datei, wenn nicht ein anderer Fehler 
aufgetreten wäre, der noch nicht behoben ist, ganz normal in die 
gewünschte hex-Datei umgewandelt worden wäre.

von Ahem (Gast)


Lesenswert?

Das ist natürlich möglich, vermutlich sogar wahrscheinlich, aber das 
ändert ja nichts daran, das man die Hex-Datei nehmen sollte. Das ist am 
saubersten.
Und es gibt eigentlich keinen Grund es nicht zu machen.
Ich habe auch noch nie gehört, das es da irgendwas grossartiges 
einzustellen oder falsch zu machen gibt.

von Ahem (Gast)


Lesenswert?

Im übrigen lässt sich dann aus der Tatsache das die TMP-Datei noch nicht 
umbenannt wurde, schliessen, das AVRStudio noch nicht fertig war oder 
auf einen Fehler gestossen ist.
Also noch ein Grund das nicht umzubenennen.

von Dominik.H super_flummy (Gast)


Lesenswert?

Also ich hab jetzt AVR Studio auf meinen anderen PC Installiert. Und das 
IC Programm da noch mal geöffnet. Der Pfad hat jetzt keinen umlaut mehr 
drin und sollte eigentlich funktionieren.

Ich hab dann auf F7 gedrückt und was passiert:

C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\Neu.asm(1): 
Including file 'C:\Programme\Atmel\AVR 
Tools\AvrAssembler2\Appnotes\tn12def.inc'
C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\Neu.asm(5): error: 
Invalid register
C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\Neu.asm(16): 
error: call k: Unsupported instruction on ATtiny12
C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\Neu.asm(119): No 
EEPROM data, deleting C:\Dokumente und Einstellungen\Dominik\Eigene 
Dateien\Neu.eep
Assembly failed, 2 errors, 0 warnings



Schon wieder einen Fehler Meldung. aber was soll das den. ich sehe das 
so das der ein Problem mit einem ATtiny 12 hat. Kann das sein oder ist 
es was anderes?

von Benedikt K. (benedikt)


Lesenswert?

Dominik.H super_flummy schrieb:
> Schon wieder einen Fehler Meldung. aber was soll das den. ich sehe das
> so das der ein Problem mit einem ATtiny 12 hat. Kann das sein oder ist
> es was anderes?

Du hast ganz einfach Fehler gemacht: ldi funktioniert nur mit Register 
>15, ein call kennt der tiny12 nicht.

von Dominik.H super_flummy (Gast)


Lesenswert?

wo bekomme ich den Register?

von Dominik.H super_flummy (Gast)


Angehängte Dateien:

Lesenswert?

mein Fehler liegt hier in meinen Programm oder ?

von PJ (Gast)


Lesenswert?

> Invalid register

Übersetzung: Ungültiges Register.

Welches Register benutzt Du, gibt es das bei dem AVR überhaupt? => 
Datenblatt checken.

> call k: Unsupported instruction on ATtiny12

Übersetzung: Call k: Nicht unterstützter Befehl beim ATtiny12.

=> Datenblatt des Chips checken, anderen Befehl verwenden.

von Benedikt K. (benedikt)


Lesenswert?

Dominik.H super_flummy schrieb:
> mein Fehler liegt hier in meinen Programm oder ?

Ja.

von Dominik.H super_flummy (Gast)


Lesenswert?


von Dominik.H super_flummy (Gast)


Angehängte Dateien:

Lesenswert?

und da macht er mit dem call noch Prob:

von Dominik.H super_flummy (Gast)


Lesenswert?

Leute ich kenne mich da aktuell überhaupt nicht aus. Ich hab mich bis 
jetzt noch nicht so mit Mikrocontroller beschäftigt. Mir hat das 
Programm Freundlicher weiße einer aus dem Forum geschrieben.


Bitte keine Antworten wie ( dann Lern es halt oder so ). Ich Will es 
schon noch Lernen, binaber bis jetzt noch nicht richtig dazu gekommen da 
ich ja auch noch was anderes zu tun habe ( auch da bitte keine 
Kommentare ) weis ich alles schon.

von Benedikt K. (benedikt)


Lesenswert?

ok, dann machen wirs einfach: r15->r16
call -> rcall.

von Dominik.H super_flummy (Gast)


Lesenswert?

Echt super eine Zahl und ein Buchstabe und schon sagt er ( nach dem ich 
F7 gedrückt habe ) Assembly complete, 0 errors. 0 warnings


Vielen Dank Benedikt.

von Karl H. (kbuchegg)


Lesenswert?

Dominik.H super_flummy schrieb:
> Echt super eine Zahl und ein Buchstabe und schon sagt er ( nach dem ich
> F7 gedrückt habe ) Assembly complete, 0 errors. 0 warnings

Gell, programmieren ist echt einfach :-)

( ... wenn man weiß wies geht. Nur bis man weiß wies geht, vergeht 
viiiieeeel Zeit)

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.