2701|0

70

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

IAR汇编程序调试 [复制链接]

一段IAR编写的arm汇编代码,但是跑到红色的地方就跑不下去了,希望大家帮分析一下!

;汇编指令实验       
;定义端口E寄存器预定义

rPCONE   EQU    0x56000010   
rPDATE   EQU    0x56000014
rPUPE    EQU    0x56000018

RSEG        ICODE:CODE:ROOT(2)
PUBLIC        __iar_program_start
        
        LTORG
        ARM       
__iar_program_start:
ResetEntry
    ;下面这三条语句,主要是用来设置I/O口GPE7为输出属性
    ldr  r0,=rPCONE            ;将寄存器rPCONE的地址存放到寄存器r0中
    ldr  r1,=0x1555
    str  r1,[r0]               ;将r1中的数据存放到寄存器rPCONE中
   
    ;下面这三条语句,主要是禁止GPE端口的上拉电阻
    ldr  r0,=rPUPE
    ldr  r1,=0xffff
    str  r1,[r0]
   
    ldr  r2,=rPDATE            ;将数据端口E的数据寄存器的地址附给寄存器r2
     
ledloop
    ldr  r1,=0xffff            
    str  r1,[r2]              ;使GPE7输出高电平,D9灯会灭
    bl   delay                ;调用延迟子程序
       
    ldr r1,=0x0
    str r1,[r2]               ;使GPE7输出低电平?D9灯亮
    bl  delay                 ;调用延迟
    b  ledloop                ;不断的循环,D9将不停的闪烁
   
;下面是延迟子程序
delay
        ldr r3,=0xfff           ;设置延迟的时间
delay1
        sub r3,r3,#1              ;r3=r3-1            
        cmp r3,#0x0               ;将r3的值与0相比较
        bne delay1                ;比较的结果不为0(r3不为0),继续调用delay1,否则执行下一条语句
        mov pc,lr                 ;返回
  
    LTORG  
    END                       ;程序结束符
   
  
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表