1。首先需要知道 led 是受哪一个gpio口控制

从上图可以看出,两个led灯是受GPF4 GPF5控制的,低电平有效。

2、怎么控制GPF4 GPF5

通过2440的芯片手册可以看出,需要设置GPF的引脚只需要设置,两个寄存器就可以了。GPFCON  GPFDAT。

  C语言部分:

void delay(volatile int d)//延时函数
{
while (d--);
} int led_on(int which)
{
unsigned int *pGPFCON = (unsigned int *)0x56000050;
unsigned int *pGPFDAT = (unsigned int *)0x56000054; if (which == )
{
/* 配置GPF4为输出引脚 */
*pGPFCON = 0x100;
}
else if (which == )
{
/* 配置GPF5为输出引脚 */
*pGPFCON = 0x400;
} /* 设置GPF4/5输出0 */
*pGPFDAT = ; return ;
}

汇编代码部分:

.text
.global _start
_start:
ldr sp,=
mov r0,#
bl led_on ldr r0,=
bl delay mov r0,#
bl led_on halt:
b halt

gcc 交叉编译部分:

all:
arm-linux-gcc -c -o led.o led.c //编译led.c
arm-linux-gcc -c -o start.o start.S//编译strat.s
arm-linux-ld -Ttext start.o led.o -o led.elf//链接 两个文件
arm-linux-objcopy -O binary -S led.elf led.bin//生成bin文件
arm-linux-objdump -D led.elf > led.dis//生成反汇编文件
clean:
rm *.bin *.o *.elf *.dis

通过上面三个文件就可以生成 一个.bin文件 然后就执行了。。。。。。

最新文章

  1. 使用html5 地理位置技术 和 百度地图api查询当前位置
  2. 一个注解方式webSocket demo
  3. MongoDB安装说明以及MongoVUE使用
  4. 启用VTX技术支持启动android的虚拟机 - 报错
  5. Objective-C:Foundation框架-常用类-NSMutableArray
  6. 用指令修改DOM
  7. python django model类型摘要
  8. 1.1.0-学习Opencv与MFC混合编程之---全屏截图,保存为BMP图像(并增加快捷键)
  9. 实现DataGridView行的拖动,即实现行的顺序交换
  10. 使用spark-streaming实时读取Kafka数据统计结果存入MySQL
  11. CommonJS, AMD ,CMD之间的关系
  12. configparser模块的常见用法
  13. 分布式锁与实现(一)——基于Redis实现 【比较靠谱】
  14. spring boot+自定义 AOP 实现全局校验
  15. CentOS7安装配置Amanda
  16. css 书目录相关css+html代码
  17. umlの交互图
  18. mfix输出自定义数据
  19. PHP程序员的技术成长规划 第二阶段:提高阶段
  20. ASP.NET的优点

热门文章

  1. ZOJ 3886 Nico Number(筛素数+Love(线)Live(段)树)
  2. Redis介绍和安装
  3. 入围T00ls 2018风云人物
  4. JS 浅谈函数柯里化,不明觉厉
  5. Visual Studio 2015编译wxWidgets
  6. intelj idea Database视图竟然还悄悄开进程,不能忍
  7. Spring Security http标签的use-expressions="true"属性
  8. mock---前端搭建模拟服务
  9. oracle编码转换:AL32UTF8->ZHS16GBK
  10. 14.vue路由&脚手架