#define GPBCON (*(volatile unsigned long * ) 0x7f008820)
#define GPBDAT (*(volatile unsigned long * ) 0x7f008824)
extern void delay(void){
int i=99;
for(i=99;i<0xFabcF;i++){}
}
int main(){
GPBCON=0x1111;
GPBDAT=0;
while(1){
delay();
GPBDAT= ~GPBDAT;
}
return 0;
}
-----------------
crt0.S
.text
.global _start
.global halt_loop
_start:
ldr sp,=1024*8
bl main
halt_loop:
b halt_loop
编译器使用 arm-elf-gcc
-g -Os -fno-strict-aliasing -fno-common -ffixed-r8 -fno-builtin -nostdinc -march=armv6 -Wall -mtune=arm1176jzf-s -mfloat-abi=soft -mfpu=vfp
程序的功能就是控制led闪烁,
编译优化选项 -O0程序不成功,-Os 能成功执行。
|