Forum: Mikrocontroller und Digitale Elektronik Können Sie mir bitte helfen? asm =>hex


von Guest (Gast)


Lesenswert?

Können Sie mir bitte helfen?

I want to build a hex file from a asm file.

I tried to build the main.asm file from the atmega 8/88 chipbasic from 
Joerg Wolfraam.

I tried to do it with Atmelstudio 6.1, this gives different errors,

Joerg says following on the website :

2.1 Assemblieren
Da fast Alle I / O-Funktionen von verschiedenen Bibliotheken 
bereitgestellt Werden und sehr stark von Makros Gebrauch gemacht wird, 
ist zum Assemblieren der AVRA-Assembler notwendig. Die bereits 
mitgelieferten Hex-Files sollten sich auch ohne diese Voraussetzung 
brennen lassen. Eine Besonderheit gibt es für den ATMega88, wenn man 
avr_libmake benutzen wil. Für den avr_libmake Lauf muss der Controller 
ALS Mega8 definiert sein, hinterher muß der Controller auf Mega88 
umdefiniert Werden und nocheinmal zusätzlich AVRA gestartet franchise 
(avra main.asm). Das hängt damit zusammen, dass der vor dem ersten 
Assemblerlauf erzeugte Quelltext für den Mega88 zu einem Abbruch des 
Assembliervorganges Wegen überlappender Codesegmente führt.

I think Joerg says here that he uses avra in linux but I don't 
understand what he means.

Can somebody explain me step by step how I have to do this?

Wären Sie so dankbar. meine Freunde können mir nicht helfen

von asdf (Gast)


Lesenswert?

>Eine Besonderheit gibt es für den ATMega88, wenn man
>avr_libmake benutzen wil. Für den avr_libmake Lauf muss der Controller
>ALS Mega8 definiert sein, hinterher muß der Controller auf Mega88
>umdefiniert Werden und nocheinmal zusätzlich AVRA gestartet franchise
>(avra main.asm). Das hängt damit zusammen, dass der vor dem ersten
>Assemblerlauf erzeugte Quelltext für den Mega88 zu einem Abbruch des
>Assembliervorganges Wegen überlappender Codesegmente führt.

To use the avr_libmake with the ATMega88 you have to define the ATMega88 
as a Mega8. Afterwards redefine to Mega88. Additionally you have to 
restart AVRA (avra main.asm). You have to do this, because the first 
Assembling generates Code for the Mega88 which breaks the Assembling, 
because of overlapping Codesegments.

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.