ARM裸机——001汇编程序点亮LED1

本人使用的是韦东山老师的JZ2440开发板

点亮LED1,原理图如下:

1,看原理图可知LED1对应GPF4;

2, 看上图可知LED1为低电平使能:GPF4 = 0,LED1 亮;GPF4 = 1,LED1 灭;

3,查看数据手册:

 

  

  

   设置GPFCON[9:8] = 0b01时,GPF4配置为输出;(把0x100写入GPFCON,即写到地址0x56000050上)

   设置GPFDAT[4] = 0时,GPF4输出低电平,LED1点亮(把0写到地址0x56000054上)

 

汇编源代码如下led_on.S:

/*
 * 点亮LED1: gpf4
 */

.text
.global _start

_start:

/* 配置GPF4为输出引脚
 * 把0x100写到地址0x56000050
 */
	ldr r1, =0x56000050
	ldr r0, =0x100	/* mov r0, #0x100 */
	str r0, [r1]


/* 设置GPF4输出高电平 
 * 把0写到地址0x56000054
 */
	ldr r1, =0x56000054
	ldr r0, =0	/* mov r0, #0 */
	str r0, [r1]

	/* 死循环 */
halt:
	b halt

Makefile文件如下:

all:
	arm-linux-gcc -c -o led_on.o led_on.S
	arm-linux-ld -Ttext 0 led_on.o -o led_on.elf
	arm-linux-objcopy -O binary -S led_on.elf led_on.bin
clean:
	rm *.bin *.o *.elf

make得到led_on.bin,烧写到nandflash,LED1亮。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值