- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式系统实验内容09–10
实验一 熟悉Linux开发环境一、实验目的
二、实验内容
本次实验使用Redhat Linux 9.0操作系统环境,安装ARM-Linux的开发库及编译器。创建一个新目录,并在其中编写hello.c和Makefile文件。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已经编译好的文件到目标开发板上运行。
三、预备知识
C语言的基础知识、程序调试的基础知识和方法,Linux的基本操作。
四、实验设备及工具(包括软件调试工具)
硬件:UP-NETARM2410-S嵌入式实验平台、PC机Pentium 500以上, 硬盘10G以上。
软件:PC机操作系统REDHAT LINUX 9.0+MINICOM+A-LINUX开发环境
五、实验步骤
1、建立工作目录
[root@zxt smile]# mkdir hello
[root@zxt smile]# cd hello
2、编写程序源代码
在Linux下的文本编辑器有许多,常用的是vim和Xwindow界面下的gedit等,我们在开发过程中推荐使用vim,用户需要学习vim的操作方法,请参考相关书籍中的关于vim的操作指南。 Kdevelope、anjuta软件的界面与vc6.0 类似,使用它们对于熟悉windows环境下开发的用户更容易上手。
实际的hello.c源代码较简单,如下:
#include stdio.h
main()
{
printf(“hello world \n”);
}
我们可以是用下面的命令来编写hello.c的源代码,进入hello目录使用vi命令来编辑代码:
[root@zxt hello]# vi hello.c
按“i”或者“a”进入编辑模式,将上面的代码录入进去,完成后按Esc键进入命令状态,再用命令“:wq”保存并退出。这样我们便在当前目录下建立了一个名为hello.c的文件。
3、编写Makefile
要使上面的hello.c程序能够运行,我们必须要编写一个Makefile文件,Makefile文件定义了一系列的规则,它指明了哪些文件需要编译,哪些文件需要先编译,哪些文件需要重新编译等等更为复杂的命令。使用它带来的好处就是自动编译,你只需要敲一个“make”命令整个工程就可以实现自动编译,当然我们本次实验只有一个文件,它还不能体现出使用Makefile的优越性,但当工程比较大文件比较多时,不使用Makefile几乎是不可能的。下面我们介绍本次实验用到的Makefile文件。
CC= armv4l-unknown-linux-gcc
EXEC = hello
OBJS = hello.o
CFLAGS +=
LDFLAGS+= –static
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS)
clean:
-rm -f $(EXEC) *.elf *.gdb *.o
下面我们来简单介绍这个Makefile文件的几个主要部分:
CC 指明编译器
EXEC 表示编译后生成的执行文件名称
OBJS 目标文件列表
CFLAGS 编译参数
LDFLAGS 连接参数
all: 编译主入口
clean: 清除编译结果
注意:“$(CC) $(LDFLAGS) -o $@ $(OBJS)”和“-rm -f $(EXEC) *.elf *.gdb *.o”前空白由一个Tab制表符生成,不能单纯由空格来代替。
与上面编写hello.c的过程类似,用vi来创建一个Makefile文件并将代码录入其中
[root@zxt hello]# vi Makefile
4、编译应用程序
在上面的步骤完成后,我们就可以在hello目录下运行“make”来编译我们的程序了。如果进行了修改,重新编译则运行:
[root@zxt hello]# make clean
[root@zxt hello]# make
注意:编译、修改程序都是在宿主机(本地PC机)上进行,不能在MINICOM下进行。
5、下载调试
在宿主PC计算机上启动NFS服务,并设置好共享的目录,具体配置请参照前面第一章第四节中关于嵌入式Linux环境开发环境的建立。在建立好NFS共享目录以后,我们就可以进入MINICOM中建立开发板与宿主PC机之间的通讯了。
[root@zxt hello]# minicom
[/mnt/yaffs] mount -t nfs -o nolock 192.168.0.56:/arm2410s /host
注意: IP地址需要根据宿主PC机的实际情况修改
成功挂接宿主机的arm2410s目录后,在开发板上进入/host目录便相应进入宿
您可能关注的文档
- 小学生错别字状况的调查和分2.doc
- 小学生零花钱来源和数量调查报告.doc
- 小学生语文修改病句练习题2后附答案.doc
- 小学电脑课的教和学.doc
- 小学知识大全––词语部分.doc
- 小学生良好学习习惯养成教育的研究活动记录––6月.doc
- 小学科学5年级下册复习资料.doc
- 小学科学3年级下册《磁极的相互作用》教学设计.doc
- 小学科学5年级下册同步探究(修改版).doc
- 小学科学五上第4单元运动和力练习题.doc
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)