- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验3 嵌入式LINUX基本应用程序
预习报告要求:目的、内容、工具、步骤看懂,如果不明白,可以在实验时提出(不用写在报告中),下面思考题要求完成(要签名检查),交正式报告时,附在其后。
简述在PC机方式下,LINUX系统中,一个源文件生成执行映像文件的两种方法。
在网上搜索什么是minicom,有什么作用?
自己准备一个可以运行通过的程序(计算、打印均可)备用。
实验3 嵌入式LINUX基本应用程序
实验目的
熟悉LINUX开发环境,学会基于S3C21410的LINUX开发环境的配置和使用。使用LINUX的armv41-unknown-linux-gcc译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。
实验内容
在RedHat Linux9.0操作系统环境安装ARMLinux的开发库及编译器,新建一个目录,编写hello.c和makefile文件。学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。下载已编译好的文件到嵌入式实验仪中运行。
预备知识
掌握C语言的基础知识、程序设计的基础知识和方法,了解LINUX的基本操作。
实验设备及工具
硬件:华恒嵌入式实验仪、PC机(硬盘10G以上)。
软件:PC机操作系统WINDOWSXP、RedHat Linux9.0+Minicom+ARMLinux开发环境。
实验步骤
首先连接好串口(实验箱接串口一)和交叉连接网线,暂时不要打开开发板电源开关。然后按照本实验末附录的要求设备交叉开发环境。(操作过程中严格遵守“实验室管理条例”)
建立工作目录
#cd /home
#mkdir EXP1
#cd /home/EXP1
编写程序源代码
#vi hello.c
#includestdio.h
main()
{printf”hello world \n”};
}
编写Makefile
makefile示例 CC= armv41-unknown-linux-gcc
EXEC=hello
OBJS=hello.o
CFLAGA+=
LDFLAGS+=-elf2flt –static
All:$(EXEC)
$(EXEC):$(OBJS)
$(CC) $(LDFLAGS) –o $@ S(OBJS)
clean:
-rm –f $(EXEC) *.elf *.gdb *.o
这个makefil显示了几个个的部分
CC指编译器的宏
EXEC表示生成的执行文件名称的宏
OBJS表示目标文件列表宏
CFLAGS连接参数宏
All 为编译主入口
Clean为清除出党编译结果
注:”$(CC……)”和”-rm –f S….”前空白由一个Tab制表符产生,不能单纯由空格来代替。
(注:Makefile从all:开始看起,它是入口点,相当于C代码的main函数。指明你执行make的最终目的。$@ $ 标准的GNU CC编译器识别的变量$@ 表示:前面的target,即$(EXEC),这里就是hello$ :后面的内容。Makefile里面的-D表示定义一个宏-DDEBUG -D__Linux__ glibc里面所识别的宏。-g 是要求带符号表,可支持gdb的源代码调试。.o里面可对应到.c的源代码。CC = /opt/host/armv4l/bin/armv4l-unknown-linux-gcc
CFLAGS = -DDEBUG -D__Linux__ -g
all:hello
hello: hello.o
$(CC) $(CFLAGS) -o $@ $
clean:
rm -rf *.o hello
编译应用程序
如果不用make方式,则运行
# /opt/host/armv41/bin/armv41-unknown-linux-gcc –o hello hello.c
如果用make 方式
在hello目录下运行make,
#make如果进行了修改,重新编译则运行命令
#make clean
#make
注意:编译修改程序都是在开发计算机上进行,不要在Minicom的终端方式下进行。
下载调试
(1)在打开的终端上,输入minicom,同时按下reset键(液晶下面白色)[CTRL+A退出]
(2)输入“ifconfig”
在宿主机PC上启动NFS服务,并设置好共享目录,然后在开发板上运行
#mount –o nolock 22(宿主机地址):/ /mnt(挂载到目标板的mnt目录下)
或者:
#mount –t nfs 10:/ home/EXP1 /mnt
#cd mnt
#cd /mnt/HHARM*/experiment/EXP7
#宿主机:chmod 777 *
#mnt(可以在宿主机下查看或或者运行在宿主机上编译通过的文件)
挂接宿主机的根目录。成功之
文档评论(0)