标签:
Windows环境下能够使用Eclipse IDE for C/C++ Developers来搭建ARM开发环境
本文地址:http://blog.csdn.net/u011833609/article/details/30290655
安装过程例如以下:
2.创建一个project
进入主界面后。选择"File→New→C Project"命令,Eclipse将打开一个标准对话框。输入希望新建project的名字并单击"Finish"button就可以创建一个新的project,建议对每一个新建project使用独立的目录。
3.新建一个MakeFile文件
在创建一个新的project后。选择"File→New→Other"命令。在弹出的对话框中的General下单击file。然后单击next;然后选择所要指定的project后,在文件名称文本框中输入文件名称MakeFile,单击"Finish"button。
4.新建一个脚本文件
选择"File →New→Other"命令,在弹出的对话框中的General下单击file。然后单击next;然后选择所要指定的project后,在文件名称文本框中输入文件名称s5pc100.init。单击"Finish"button。
5.新建一个连接脚本文件
选择"File→New→Other"命令,在弹出的对话框中的General下单击file 。然后单击next。然后选择所要指定的project后,在文件名称文本框中输入文件名称map.lds,单击"Finish"button。
6.新建一个汇编源文件
选择"File →New→Other"命令,在弹出的对话框中的General下单击file ,然后单击next;然后选择所要指定的project后。在文件名称文本框中输入文件名称start.s,单击"Finish"button。
5.4 编译project
(1)在汇编源文件(start.s)中输入汇编代码:
.equ GPG3CON, 0xE03001C0
.equ GPG3DAT, 0xE03001C4
.globl _start
_start:
LDR R0,=GPG3CON
LDR R1,=0X10
STR R1,[R0] @//写控制寄存器,IO引脚使能为输出
LOOP:
LDR R0,=GPG3DAT
MOV R1,#0X02 @//点亮led1
STR R1,[R0]
LDR R2,=0XFFFFF @//延时
LOOP1:
SUB R2,R2,#1
CMP R2,#0
BNE LOOP1
MOV R1,#0X0 @//熄灭led1
STR R1,[R0]
LDR R2,=0XFFFFF @//延时
LOOP2:
SUB R2,R2,#1
CMP R2,#0
BNE LOOP2
B LOOP
.end
(2)在map.lds中输入例如以下信息:
OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
/*OUTPUT_FORMAT("elf32-arm", "elf32-arm", "elf32-arm")*/
OUTPUT_ARCH(arm)
ENTRY(_start)
SECTIONS
{
. = 0x34000;
. = ALIGN(4);
.text :
{
start.o(.text)
*(.text)
}
. = ALIGN(4);
.rodata :
{ *(.rodata) }
. = ALIGN(4);
.data :
{ *(.data) }
. = ALIGN(4);
.bss :
{ *(.bss) }
}
(3)编写MakeFile文件编译规则。在MakeFile中输入例如以下信息:
all:start.s
arm-none-eabi-gcc-4.6.2 -O0 -g -c -o start.o start.s
arm-none-eabi-ld start.o -Tmap.lds -o start.elf
arm-none-eabi-objcopy -O binary -S start.elf start.bin
arm-none-eabi-objdump -D start.elf >start.dis
(4)在s5pc100.init文件里输入例如以下信息:
target remote 127.0.0.1:3333
monitor halt
monitor arm mcr 15 0 1 0 0 0
monitor step 0
(5)保存,编译Project→Bulit All。
5.5 调试project
5.5.1 配置FS-JTAG 调试工具
如图5-12所看到的,在Target选项中选择s5pc100。然后在WorkDir 选项中选择自己的project文件夹(D:\program\led)。这里是笔者的当前环境,请读者依照自己的实际环境进行填写。
上述工作做完之后,单击Connectbutton后,该button会变为Disconnect,如图5-12所看到的,即表示已经连接目标板。
最后单击Telnetbutton(这一步能够跳过),将会弹出如图5-13所看到的,界面即表示已经连上目标板。
5.5.2 配置调试工具(1)
在Eclips的菜单中选择"Run→Debug Configurations"弹出如图5-14对话框。
在Command选项卡中输入例如以下内容。如图5-17所看到的。
load
break _start
c
5.5.2 配置调试工具(2)
程序会在断点处停下。然后使用单步和全速等工具进行调试执行程序,单击全速执行,会出现LED1闪亮。
从图中能够看出一个大概的调试界面。如图5-19所看到的的button是和调试有关的,有单步,step over和step in方式。还有Eclipse自带的挂起、中断连接功能。以下简介一下各个窗体的用途。
本章主要介绍了怎样编写GNU-ARM汇编风格的程序,以及怎样基于S5PC100在Eclipse下进行调试,而且介绍了FS-JTAG的具体使用方法。本书后面章节的大部分实验都是基于这个环境的。工欲善其事。必先利其器,所以必须熟练掌握环境的使用。
原文地址:http://book.51cto.com/art/201210/359534.htm
标签:
原文地址:http://www.cnblogs.com/gcczhongduan/p/5137558.html