S5PV210的LED应用(一)

准备分析
 
     看似就一个LED,但是S5PV210不同于S3C2440,不是在于LED,而是在于从NandFlash启动的过程中不一样。对于S3C2440,只要程序没有问题,想办法下载程序到NandFlash的0地址处一般都是可以正常运行的,下载的方法无非采用开发板厂家下载BOOTLOADER的方法来下载。S5PV210启动时从NandFlash的0地址拷贝时候会拷贝前16k,但是会读取前16byte进行与和校验值做比较。所以略显麻烦。

资源工具

       1.开发板:tiny210v2
       2.关于头信息使用:mkv210_image.c
       3.交叉工具链:arm-linux-gcc-4.5.1
       4.LED1对应的管脚:GPI2_0

着手写程序

@******************************************************************************
@ File:start.S
@ 功能:LED点灯程序,点亮LED1
@******************************************************************************       
            
.text
.global _start
_start:     
            ldr     R0,=0xE0200280      @ R0设为GPJ2CON寄存器。此寄存器
                                        @ 用于选择端口J各引脚的功能:
                                        @ 是输出、是输入、还是其他
            mov     R1,#0x00000001        
            str     R1,[R0]             @ 设置GPJ2_0为输出口, 位[10:9]=0b01
            ldr     R0,=0xE0200284      @ R0设为GPJ2DAT寄存器。此寄存器
                                        @ 用于读/写端口GPJ2各引脚的数据
            mov     R1,#0x00000000      @ 此值改为0x00000001,
                                        @ 可让LED1熄灭
            str     R1,[R0]             @ GPJ2_0输出0,LED1点亮
MAIN_LOOP:
            b       MAIN_LOOP

Makefile:

led.bin: start.o 
	arm-linux-ld -Ttext 0x0 -o led.elf $^
	arm-linux-objcopy -O binary led.elf led.bin
	arm-linux-objdump -D led.elf > led_elf.dis
	gcc mkv210_image.c -o mkv210
	./mkv210 led.bin 210.bin
	
%.o : %.S
	arm-linux-gcc -o $@ $< -c

%.o : %.c
	arm-linux-gcc -o $@ $< -c 

clean:
	rm *.o *.elf *.bin *.dis mkv210 -f

下载运行

       1.根据开发板使用手册先将superboot烧到SD卡上,在images/FriendlyARM.ini中添加"USB-Mode = yes",然后以SD卡方式启动开发板。
       2.按照下图配置进行烧写,这样就烧写到了NandFlash的0地址处。


运行调试
 
      程序简单,运行正常。

遗留问题
  
       1.mkv210_image.c没有去分析


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁保康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值