Hallo Community,
passend zur Weihnachtszeit habe ich meinen Atmega168 ausgepackt und wollte nochmal ein wenig herumexperimentieren.
Diesmal will ich mal ein Assembler-Programm schreiben und assemblieren.
Ich habe hier im Forum gelesen das man dazu den avr-as benutzen kann doch leider ist die Doku sehr umfangreich und ich habe kein passenden
Beispiele gefunden. Zum Compilieren in C habe ich mir damals ein kleines Script zusammengebastelt
das auch super funktioniert. Jetzt habe ich mir ein Assembler-Beispielprogramm herausgesucht und möchte dieses gerne in eine Hex assemblieren.Code:VAR1="main" VAR2="Main" rm $VAR2.* avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu$ avr-gcc -Wl,-Map,$VAR2.map -mmcu=atmega168 -o $VAR2".elf" ./$VAR2.o avr-objdump -h -S $VAR2.elf >$VAR2".lss" avr-objcopy -R .eeprom -O ihex $VAR2.elf $VAR2".hex" avr-objcopy -j .eeprom --no-change-warnings --change-section-lma .eeprom=0 -O ihex $VAR2.elf $VAR2$ avrdude -c avrispmkII -p m168 -P USB -e -v -Uflash:w:$VAR2.hex:a
Kann mir hierbei einer helfen ich habe überhaupt keinen Ansatz und im Internet habe ich dazu nicht viel gefunden.
Hier mein Programm:
Wie muss ich jetzt den avr-as aufrufen?Code:.include "m168def.inc" Start: ldi r16,0xFF out DDRD,r16 ldi r16,0b00000001 out PORTD,r16 Loop: rjmp Loop
Danke für eure Hilfe![]()







Zitieren


Lesezeichen