嵌入式Linux学习笔记(1-5)——点亮mini2440 LED

mini2440拥有4个可编程led灯,通过点亮led实验了解操作GPIO的原理,以及初步掌握ADS1.2集成开发环境使用方法。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第1张图片

开发平台:(1)XP系统;(2)ADS1.2集成开发环境;(3)mini2440。

1、搭建工程

本人使用ADS1.2 IDE搭建工程,这是一款ARM公司出版集成开发环境软件,虽然已经淘汰,但由于能很好运行在XP系统之上,所以本人还在使用,如果希望拥有功能更强的IDE,可以安装RVDS来取代ADS1.2 。安装软件以及破解过程不作介绍,网上有很详细的图文教程。

1.1、创建ARM Executeble Image工程

创建ARM Executeble Image工程,为了得到用于由 ARM 指令的代码生成一个 ELF 格式的可以执行映象文件。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第2张图片

工程目录如下。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第3张图片

向工程添加文件,如果出现某些加不进工程的情况,忽略掉。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第4张图片
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第5张图片

添加工程文件完成。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第6张图片

1.2、配置工程

主要设置汇编器、编译器和链接器。
设置汇编器,选择ARM920T汇编器。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第7张图片

设置C编译器。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第8张图片

设置链接器,设置RO Base地址为0x30000000。这是SDARM起始地址。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第9张图片

设置映像程序入口点,映像将放到这里运行。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第10张图片

由于工程中有多个文件,需要指定哪个文件放在映像文件最前端。2440init.s文件需要放在最前端,起到初始化作用。程序入口起始段的标号 Init,其作用是通知编译器,整个项目从该段开始执行。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第11张图片

1.3、编译工程

出现2个错误,10个警告。在Win7 64bit系统下使用ADS1.2软件编译工程,出现一堆错误,在XP系统下编译,顺利通过。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第12张图片

1.4、调试LED程序

打开AXD软件,开始调试。Mini2440开发板处于NorFlash启动模式(norflash烧写有Uboot)。
AXD函数自动在main函数的56行(main函数入口)处打个断点。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第13张图片

点击【Run To Cursor】按钮,让程序运行到56行。
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第14张图片

出现异常错误
嵌入式Linux学习笔记(1-5)——点亮mini2440 LED_第15张图片

问题解决办法链接:
http://blog.csdn.net/XGsilence/article/details/50962651?locationNum=6

工程代码已上传。
http://download.csdn.net/download/u011491431/10034096

你可能感兴趣的:(linux,arm,嵌入式,linux)