mini2440之汇编点亮一个LED

创建汇编文件led_on.S

.global _start 

-start: 

LDR R0,=0X56000010  //设置LED的GPIO控制寄存器GPBCON的模式为输出模式,0X56000010为GPB的控制器地址,0X00000400:知设置GPB5的端口为 输出模式是第10位和第11位为10则其余0~9位补0,得到100000000000b,换算为十六进制则为0X00000400 

MOV R1,#0X00000400 

STR R1,[R0] 

LDR R0,=0X56000014//0X56000014:GPBDAT寄存器地址,0X00000000:拉低GPB口的电压 

MOV R1,#0X00000000 

STR R1,[R0] 

MAIN_LOOP://循环 

B MAIN_LOOP 

Makefile文件

led_on.bin:led_on.S 

arm-linux-gcc -g -c -o led_on.o led_on.S 

arm-linux-ld -Ttext 0x00000000 -g led_on.o -o led_on_elf 

arm-linux-objcopy -o binary -S led_on_elf led_on.bin 

clean: 

rm -f led_on.bin led_on_elf *.o 

编译:

利用samba服务上传,通过终端进入上传文件,编译命令make

生成led_on.bin文件

测试:

下载到开发板,可以按照手册上的下载到内存运行,即在nor flash模式下启动,打开window终端和DNW下载led_on.bin

总结:万事开头难,这样简单的程序对那些高手而言可能不值一提,但是对于初学者来说真的步步维艰,希望这样的分析,为自己的学习做个记录,也为大家提供个参照。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/c403afbbd88a57dc8d4e59d60351f250.html