膁羈芆计算机与信息学院蚄蚁《嵌入式系统》蚀实验报告芈螄肂膈肇袄蒃袀学生姓名:袆羃袄学号:莈衿肃专业班级:羁肀蚈肃莂螂2014年6月20日莇膃螃膀实验一(1):熟悉Linux开发环境膆一、实验目的芃熟悉Linux开发环境,学会基于Mini6410的Linux开发环境的配置和使用。使用Linux的arm-linux-gcc编译,串口方式下载调试膄二、,安装ARM-Linux的开发库及编译器。创建一个新目录,。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已经编译好的文件到目标开发板上运行。腿三、实验设备及工具(包括软件调试工具)莃硬件:Mini6410嵌入式实验平台、PC机Pentium500以上,硬盘10G以上。芀软件:PC机操作系统Fedora9++ARM-LINUX开发环境荿四、实验步骤羇1 、建立工作目录 蒃[******@zxt smile]# mkdir hello 蚁[******@zxt smile]# cd hello 肁2 、编写程序源代码 螆在 Linux 下的文本编辑器有许多,常用的是 vi 和 Xwindow 界面下的 gedit 等,开发过程中推荐使用 vi。 Kdevelope、anjuta 软件的界面与 类似,使用它们对于熟悉 windows 环境下开发的用户更容易上手。 螇实际的 源代码较简单,如下: 肂 #include <> 蕿main() { 蝿 printf(“hello world \n”); 袇} 蒃我们可以是用下面的命令来编写 的源代码,进入 hello 目录使用 vi 命令来编辑代码: 芁[******@zxt hello]# vi 薈按“i”或者“a”进入编辑模式,将上面的代码录入进去,完成后按 Esc 键进入命令状态,再用命令“:wq”保存并退出。这样我们便在当前目录下建立了一个名为 。羆袄蝿莇肆肁蒁肆膆蒂衿腿芆袃薀3、编写Makefile袈要使上面的 程序能够运行,我们必须要编写一个 Makefile 文件,Makefile 文件定义了一系列的规则,它指明了哪些文件需要编译,哪些文件需要先编译,哪些文件需要重新编译等等更为复杂的命令。使用它带来的好处就是自动编译,只需要敲一个“make”命令整个工程就可以实现自动编译,本次实验只有一个文件,它还不能体现出使用 Makefile 的优越性,但当工程比较大文件比较多时,不使用 Makefile 几乎是不可能的。本次实验用到的 Makefile 文件如下: 芆CC= armv4l-unknown-linux-gcc 芃EXEC = hello肈OBJS = 蚆CFLAGS += 莆LDFLAGS+= –static莀螀all: $(EXEC) 蒅$(EXEC): $(OBJS) 蒆$(CC) $(LDFLAGS) –o $@ $(OBJS) 螁clean: 芈-rm -f $(EXEC) *.elf *.gdb *.o蒈薆4、编译应用程序膂在上面的步骤完成后,我们就可以在hello目录下运行“make”来编译我们的程序了。如果进行了修改,重新编译则运行:羀芇蚅5、下载调试薃 1、进入root莈羆终端输入suroot,再输入密码即可。螅羄 2、膀聿袅膁袂螈 袅薂出现上面的界面,点击回车,出现下图艿薇羅此时才能进行正常的下载。羂羁 3、ctrl+a,再点击s,出现下图莅肅莃葿选择第一个zmodem,回车。出现下图莈膅蒀膁回车,出现下图膇芄袁输入绝对路径,出现下图虿羆回车,出现下图莄节从上图可以看出,文件未被下载,原因是mini6410板子已经有了hello可执行文件(之前下载的),若需要下载,则需要删除之前的hello文件,rmhello即可。莁删除之后,继续下载,出现下图罿蒄下载成功。蚃 4、运行程序蝿在电脑终端输入./hello,或者在mini6410终端输入hello都可。螈蒄五、?其中的宏定义分别是什么意思?薁蒇Makefile定义了一系列规则,指明了哪些文件需要编译,哪些文件需要先编译等复杂命令。终端中只要在工作目录下输入make即可编译,输入makeclean则清除编译。makefile是一个文本文件,用于描述程序源代码之间以及程序可执行代码与源代码之间的依赖关系。薄膁关于宏定义,简单点说就是文本替换。为了方便使用不同的编译器或者编译环境以及硬件环境,一些复杂的软件使用了大量
合工大嵌入式系统实验报告 来自淘豆网m.daumloan.com转载请标明出处.