欢迎来到天天文库
浏览记录
ID:14702411
大小:449.50 KB
页数:26页
时间:2018-07-30
《嵌入式控制系统综合实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式控制系统综合实验指导书电气工程实验教学中心24目录实验一熟悉嵌入式系统软件开发环境………………………1实验二串口通讯实验……………………………………………5实验三以太网通信实验…………………………………………17实验四综合设计实验……………………………………………2424实验一熟悉嵌入式系统软件开发环境一、实验目的1、熟悉Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用。2、使用Linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。二、实验内容本次实验使用R
2、edhatLinux9.0操作系统环境,安装ARM-Linux的开发库及编译器。创建一个新目录,并在其中编写hello.c和Makefile文件。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已经编译好的文件到目标开发板上运行。三、预备知识C语言的基础知识、程序调试的基础知识和方法,Linux的基本操作。四、实验设备及工具(包括软件调试工具)硬件:UP-NETARM2410-S嵌入式实验平台、PC机Pentium500以上,硬盘10G以上。软件:PC机操作系统REDHATLINUX9.0+MINICOM+ARM-LINUX
3、开发环境五、实验步骤1、建立工作目录[root@zxtsmile]#mkdirhello[root@zxtsmile]#cdhello2、编写程序源代码在Linux下的文本编辑器有许多,常用的是vim和Xwindow界面下的gedit等,在开发过程中推荐使用vim,用户需要学习vim的操作方法,请参考相关书籍中的关于vim的操作指南。Kdevelope、anjuta软件的界面与vc6.0类似,使用它们对于熟悉windows环境下开发的用户更容易上手。实际的hello.c源代码较简单,如下:#includemain(){24printf(“
4、helloworld”);}可以是用下面的命令来编写hello.c的源代码,进入hello目录使用vi命令来编辑代码:[root@zxthello]#vihello.c按“i”或者“a”进入编辑模式,将上面的代码录入进去,完成后按Esc键进入命令状态,再用命令“:wq”保存并退出。这样便在当前目录下建立了一个名为hello.c的文件。3、编写Makefile要使上面的hello.c程序能够运行,必须要编写一个Makefile文件,Makefile文件定义了一系列的规则,它指明了哪些文件需要编译,哪些文件需要先编译,哪些文件需要重新编译等等更为复杂的命令
5、。使用它带来的好处就是自动编译,你只需要敲一个“make”命令整个工程就可以实现自动编译,当然本次实验只有一个文件,它还不能体现出使用Makefile的优越性,但当工程比较大文件比较多时,不使用Makefile几乎是不可能的。下面介绍本次实验用到的Makefile文件。CC=armv4l-unknown-linux-gccEXEC=helloOBJS=hello.oCFLAGS+=LDFLAGS+=–staticall:$(EXEC)$(EXEC):$(OBJS)$(CC)$(LDFLAGS)-o$@$(OBJS)clean:-rm-f$(EXEC)*.e
6、lf*.gdb*.o下面来简单介绍这个Makefile文件的几个主要部分:?CC指明编译器24?EXEC表示编译后生成的执行文件名称?OBJS目标文件列表?CFLAGS编译参数?LDFLAGS连接参数?all:编译主入口?clean:清除编译结果注意:“$(CC)$(LDFLAGS)-o$@$(OBJS)”和“-rm-f$(EXEC)*.elf*.gdb*.o”前空白由一个Tab制表符生成,不能单纯由空格来代替。与上面编写hello.c的过程类似,用vi来创建一个Makefile文件并将代码录入其中[root@zxthello]#viMakefile4、编
7、译应用程序在上面的步骤完成后,就可以在hello目录下运行“make”来编译的程序了。如果进行了修改,重新编译则运行:[root@zxthello]#makeclean[root@zxthello]#make注意:编译、修改程序都是在宿主机(本地PC机)上进行,不能在MINICOM下进行。5、下载调试在宿主PC计算机上启动NFS服务,并设置好共享的目录,具体配置请参照前面第一章第四节中关于嵌入式Linux环境开发环境的建立。在建立好NFS共享目录以后,就可以进入MINICOM中建立开发板与宿主PC机之间的通讯了。[root@zxthello]#minico
8、m[/mnt/yaffs]mount-tnfs-onolock19
此文档下载收益归作者所有