简体   繁体   English

AVR-GCC:错误:行尾的垃圾

[英]AVR-GCC: Error: garbage at end of line

I have problem with stack init lines because avr-gcc returns 我有堆栈初始化行的问题,因为avr-gcc返回

LED_Blink.asm:10: Error: garbage at end of line LED_Blink.asm:10:错误:行尾的垃圾

On lines: 在线:

ldi r17, low(RAMEND)
ldi r17, high(RAMEND)

And I am confused. 我很困惑。 I have already defined RAMEND. 我已经定义了RAMEND。 I used avr-gcc with this command: 我在这个命令中使用了avr-gcc:

avr-gcc -x assembler -mmcu=atmega328p LED_Blink.asm avr-gcc -x assembler -mmcu = atmega328p LED_Blink.asm

My assembly code: 我的汇编代码:

.equ    SPL, 0x3d
.equ    SPH, 0x3e
.equ    RAMEND, 0x8ff

.equ    PORTB, 0x05
.equ    DDRB, 0x04
.org    0x000000
rjmp main
main:
    ldi r17, low(RAMEND)
    out SPL, r17
    ldi r17, high(RAMEND)
    out SPH, r17

    ldi r16, 0xff
    out DDRB, r16
    out PORTB, r16
loop:
    ldi r16, 32
    rcall outer_loop
    cbi PORTB, 5
    ldi r16, 32 
    rcall outer_loop
    sbi PORTB, 5
    rjmp loop
outer_loop:
    clr r24
    clr r25
delay_loop:
    adiw r24, 1
    brne delay_loop
    dec r16
    brne outer_loop
    ret

对于AVR的GNU汇编程序, lowhigh并不意味着什么,我认为你想使用lo8hi8分别取低和高字节。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM