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 Settings(ALT + F7),选择”ARM Linker”, 选择”Linktype为Simple”,将”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) |