主题 : 请大家帮忙找找原因 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 5489
精华: 0
发帖: 27
金钱: 280 两
威望: 280 点
综合积分: 54 分
注册时间: 2009-04-25
最后登录: 2009-10-23
楼主  发表于: 2009-04-26 13:51

 请大家帮忙找找原因

我在网上找了个跑马灯程序(用汇编写的基于2440),为什么用ADS编译之后下载到开发板上就看不到现象呢(ADS中各项设置都设置好了,make,run都通过了)?我都整了好几天了希望大家帮忙找找原因。
程序:GPFCON   EQU    0x56000050  
GPFDAT   EQU    0x56000054
GPFUP    EQU    0x56000058    

    EXPORT LEDTEST
     AREA  LEDTESTASM,CODE,READONLY   ;该伪指令定义了一个代码段,段名为LEDTESTASM,属性只读
ENTRY

LEDTEST
    ;设置GPF4-GPF7为output
    ldr  r0,=GPFCON          
    ldr  r1,[r0]
    bic  r1,r1,#0xff00
    orr  r1,r1,#0x5500
    str  r1,[r0]
    
    ;禁止GPF4-GPF7端口的上拉电阻
    ldr  r0,=GPFUP
    ldr  r1,[r0]
    orr  r1,r1,#0xf0
    str  r1,[r0]

looptest
    ;将数据端口F的数据寄存器的地址附给寄存器r2
    ldr  r2,=GPFDAT
    
    ldr  r3,[r2]
    bic  r3,r3,#0xf0
    orr  r3,r3,#0xb0
    str  r3,[r2]              ;GPF6 output 0
    ldr r0,=0xffffff
    bl   delay                ;调用延迟子程序

    
    
    
    ldr  r3,[r2]
    bic  r3,r3,#0xf0
    orr  r3,r3,#0x70
    str  r3,[r2]              ;GPF7 output 0
    ldr r0,=0xffffff
    bl   delay                ;调用延迟子程序

    
    
    
    ldr  r3,[r2]
    bic  r3,r3,#0xf0
    orr  r3,r3,#0xd0
    str  r3,[r2]              ;GPF5 output 0
    ldr r0,=0xffffff
    bl   delay                ;调用延迟子程序

    
    
    
    ldr  r3,[r2]
    bic  r3,r3,#0xf0
    orr  r3,r3,#0xe0
    str  r3,[r2]              ;GPF4 output 0
    ldr r0,=0xffffff
    bl   delay                   ;调用延迟子程序

    
    
    b looptest
delay
    sub r0,r0,#1              ;r0=r0-1            
    cmp r0,#0x0               ;将r0的值与0相比较
    bne delay                ;比较的结果不为0(r0不为0),继续调用delay,否则执行下一条语句
    mov pc,lr                 ;返回

    
    END                       ;程序结束符
    下载地址:
0x30000000