MINI2440-GPIO接口

想要代码在裸板上跑起来,则必须:

  1. 编写代码(启动代码,C代码,Makefile);
  2. 编译、链接;
  3. 烧录(J-Link)

第一阶段三个文件如下:

  1.1.启动代码-startup.s

.text
.global _start
_start:

        ldr r0, =0x53000000
        mov r1, #0x0
        str r1, [r0]

        ldr sp, =1024*4

        bl main
     halt_loop:
        b halt_loop

 

  1.2.主代码-main.c

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

#define GPB_OUTPUT 01
#define GPB_CONFIG(IO,CONFIG) (CONFIG << (IO*2))    

int main()
{
    
    GPBCON |=  GPB_CONFIG(5,GPB_OUTPUT) 
             | GPB_CONFIG(6,GPB_OUTPUT)
             | GPB_CONFIG(7,GPB_OUTPUT)
             | GPB_CONFIG(8,GPB_OUTPUT);
    
    GPBDAT  =  0X00000000;

    return 0;
}

 

      1.3.Makefile

1 led.bin : startup.s led.c
2     arm-linux-gcc -g -c -o startup.o startup.s
3     arm-linux-gcc -g -c -o led.o  led.c
4     arm-linux-ld -Ttext 0x00000000 -g startup.o led.o -o led_elf
5     arm-linux-objcopy -O binary -S led_elf led.bin
6 
7 clean:
8     rm -f led.bin led_elf *.o

 

 

 

第二阶段:make

 

第三阶段:使用J-Link烧录led.bin到nor flash

  3.1.拨动mini2440板上开关到nor flash;

  3.2.使用J-Flash ARM 烧录led.bin到nor flash, 起始地址是0;

  3.3.关电源, 断开J-Link与mini2440的连接;

  3.4.开电源, 可以看见板上LED1~LED4全亮.

 

参考资料:

嵌入式Linux应用开发完全手册

 

 

  

 

转载于:https://www.cnblogs.com/Kelvin-CnBlogs/p/4889907.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值