Chinaunix首页 | 论坛 | 博客
  • 博客访问: 107284
  • 博文数量: 31
  • 博客积分: 2292
  • 博客等级: 大尉
  • 技术积分: 310
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-17 23:41
文章分类

全部博文(31)

文章存档

2011年(2)

2010年(29)

分类: 嵌入式

2010-03-24 23:42:36



          CODE32
            AREA init,CODE ,READONLY
            ENTRY

        ;LDR R0,=WTCON ;看门狗关闭
        ;LDR R1,=0
        ;STR R1,[R0]
        
        LDR SP,=1024*4
        IMPORT main
        LDR LR,=main

        MOV PC,LR
END


(led.s)

 

 

#define GPBCON (*(volatile unsigned *)0x56000010)
#define GPBDAT (*(volatile unsigned *)0x56000014)



void delay()
{
    unsigned int j;
     for(j=0x01000000;j>0;j--)
     j=j;    
}

void main()
{
    char i;
    GPBCON=(1<<10|1<<12|1<<14|1<<16);

    delay();
    while(1)
    {
        for(i=0;i<4;i++)
         {
             GPBDAT=(~(1<<i))<<5;
             delay();
        }
    }
}


(ledc.c)

注意:

打开DebugRel SettingsALT + F7),选择”ARM Linker” 选择”LinktypeSimple”,将”Simple image””RO Base”改为0x30000000。设置“Equvalent Command Line”为:

-info totals -entry 0x30000000 -ro-base 0x30000000 -first ledc.o(init)

说明:led.o为led.S编译生成的目标文件,(init)为led.S中的Init域(AREA init,CODE,READONLY)。

阅读(1064) | 评论(0) | 转发(0) |
0

上一篇:流水灯_asm

下一篇:secureCRT

给主人留下些什么吧!~~