用ARM语言写的跑马灯汇编程序

.equ  GPX2CON,0x11000C40
.equ  GPX2DAT,0X11000C44
.equ  GPX1CON,0x11000C20
.equ  GPX1DAT,0x11000C24
.equ  GPF3CON,0x114001e0
.equ  GPF3DAT,0x114001e4


 .text
   
    ldr   r4,=GPX2CON 
    ldr   r0,[r4]
    bic   r0,#0xf0000000
    orr   r0,r0,#0x10000000
    str   r0,[r4]
   
ldr   r9,=GPX1CON 
    ldr   r1,[r9]
    bic   r1,#0x0000000f
    orr   r1,r1,#0x00000001
    str   r1,[r9]

ldr   r10,=GPF3CON 
    ldr   r2,[r10]
    bic   r2,#0x000f0000
    orr   r2,r2,#0x00010000
    str   r2,[r10]

ldr   r11,=GPF3CON 
    ldr   r2,[r11]
    bic   r2,#0x00f00000
    orr   r2,r2,#0x00100000
    str   r2,[r11]

loop_led:    
    @set  GPX2_7  pin High level
    ldr   r5,=GPX2DAT
    ldr   r0,[r5]
    orr   r0,r0,#0x80
    str   r0,[r5]

ldr   r5,=GPX2DAT
    ldr   r0,[r5]
    bic   r0,#0x80
    str   r0,[r5]  
bl   delay1s


ldr   r6,=GPX1DAT
    ldr   r1,[r6]
    orr   r1,r1,#0x01
    str   r1,[r6]

ldr   r6,=GPX1DAT
    ldr   r1,[r6]
    bic   r1,#0x01
    str   r1,[r6]
bl   delay1s


ldr   r7,=GPF3DAT
    ldr   r2,[r7]
    orr   r2,r2,#0x10
    str   r2,[r7]

ldr   r7,=GPF3DAT
    ldr   r2,[r7]
    bic   r2,#0x10
    str   r2,[r7]
bl   delay1s

ldr   r8,=GPF3DAT
    ldr   r3,[r8]
    orr   r3,r3,#0x20
    str   r3,[r8]

ldr   r8,=GPF3DAT
    ldr   r3,[r8]
    bic   r3,#0x20
    str   r3,[r8]
    bl   delay1s


b    loop_led
    
 loop_end:
    b     loop_end   
 
 
 
delay1s:
     ldr      r4,=0x3ffffff   
delay1s_loop:
     sub    r4,r4,#1
     cmp   r4,#0         
     bne    delay1s_loop
     mov   pc,lr 
 
 

    .end



Makefie文件

CROSS = arm-none-linux-gnueabi-
CC=$(CROSS)gcc
LD=$(CROSS)ld
OBJCOPY=$(CROSS)objcopy
    
all: led.s
$(CC) -g -c -o led.o led.s  
$(LD) led.o -Ttext 0x40001000 -o led.elf
$(OBJCOPY)  -O binary -S led.elf led.bin
$(CROSS)objdump -D led.elf > led.dis
 
clean:
rm -f *.o *.elf *.bin *.dis





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值