S3C2440硬件编程实例——GPIO(一)汇编程序:
@****************************************************************************** @ 功能:LED点灯程序,点亮LED1-4 @****************************************************************************** .text .global _start _start: LDR R0,=0x56000010 @ R0设为GPBCON寄存器。此寄存器 @ 用于选择端口B各引脚的功能: @ 是输出、是输入、还是其他 @ GPB5-8对应LED1-4 MOV R1,#0x00015400 STR R1,[R0] @ 设置GPB5-8为输出口, @位[11:10]=0b01,[13:12]=0b01,[115:14]=0b01,[17:16]=0b01 LDR R0,=0x56000014 @ R0设为GPBDAT寄存器。此寄存器 @ 用于读/写端口B各引脚的数据 MOV R1,#0x00000000 @ 此值改为0x000000F0, @ 可让LED1熄灭 STR R1,[R0] @ GPB5-8输出0,LED1-4点亮 MAIN_LOOP: B MAIN_LOOP
使用如下命令进行编译和连接:
arm-linux-gcc -g -c -o led_on.o led_on.S
arm-linux-ld -Ttext 0x0000000 -g led_on.o -o led_on_elf