嵌入式实验报告书(共14页)_第1页
嵌入式实验报告书(共14页)_第2页
嵌入式实验报告书(共14页)_第3页
嵌入式实验报告书(共14页)_第4页
嵌入式实验报告书(共14页)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上 嵌入式linux实验报告 姓名:梅发同 学号: 实验一:熟悉嵌入式系统开发环境 一 实验目的: 1熟悉嵌入式系统硬件实验平台 2掌握超级终端配置方法。 3. 掌握嵌入式系统开发环境配置,ARM-Linux下NFS服务器的配置方法 4. 掌握常用的 Linux下shell命令 二 实验设备及工具 :硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。软件:PC机操作系统REDHAT LINUX 9.0 、MINICOM 、AMRLINUX开发环境三 实验内容 : (1)掌握嵌入式系统实验平台上的各类借接口

2、的位置; (2)配置windows的超级终端,熟悉vivi的命令行,bootload、kernel、root和用户程序的介绍; (3)配置linux的终端,配置网络服、Ip地址,开发目录共享,挂载等。四 实验结果分析配置windows的超级终端输入终端名称选择COM1接口设置COM1属性打开虚拟机,启动linux。新建终端,输入minicom启动实验箱设置ip并且在minicom下ping通主机设置网络服务取消防火墙选中NFS设置共享文件夹在主机编译运行程序hello wordHello.c 源代码如下:在target上挂载主机开发目录上嵌入式程序到实验箱,运行Mount t nfs 主机IP

3、:/开发目录 /hostcd /host运行程序交叉编译完成实验心得:实验中应注意需要将编译的程序文件挂载到开发板,才能在ARM里找到我们需要运行的文件。还要注意区分gcc和armv4l-unknown-linux-gcc编译器的区别。只有用armv4l-unknown-linux-gcc编译的才能在开发板上运行。实验二 嵌入式Linux程序设计一 实验目的: 1掌握嵌入式Linux软件设计方法原理 2掌握Makefile文件设计方法。 3. 熟悉Linux下静态库和共享库的设计 二 实验设备及工具 :硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G

4、以上、内存大于256M。软件:PC机操作系统REDHAT LINUX 9.0 、MINICOM 、AMRLINUX开发环境三 实验内容 : (1)编写一个带输入、输出的由5个文件组成的嵌入式软件; (2)写好makefile文件,并上机调试; (3)用变量指明两种编译器。四 实验结果分析:1 在宿主机(PC)上建立用户开发目录,编写嵌入式程序文件,3个C文件+2个头文件。2 编写Makefile文件,要求Makefile文件实现这5个文件的编译,有clean 和intall 选项,用变量选择86和arm编译器指明CC= gcc或CC= armv4l-unknown-linux-gcc arm编

5、译:gcc编译:3 编译程序,并下载到实验箱上执行 mount t nfs 主机ip:/开发目录 /host。在主机里运行挂载后在目标板里运行实验心得Makefile文件在实验中可以修改,比如将input.o:input.c这样重复的内容删掉。将重复使用的东西赋给一个变量,之后只要用$()引用这个变量即可。注意makefile里选择gcc编译还是用arm gcc编译。如果是在本机上运行,则使用gcc编译,若是挂载到开发板运行,则要用arm-unknown-linux-gcc编译,然后像第一次实验一样挂载运行,就可以成功完成。实验三 驱动程序设计一 实验目的1学习在 LINUX 下进行驱动设计的

6、原理 2掌握使用模块方式进行驱动开发调试的过程3了解在 linux 环境下对S3C2410 芯片的8 通道10 位A/D 的操作与控制。二 实验设备及工具 :硬件:UP-NETARM2410-S嵌入式实验仪、PC机pentumn500以上、硬盘40G以上、内存大于256M。软件:PC机操作系统REDHAT LINUX 9.0 、MINICOM 、AMRLINUX开发环境三 实验内容1在 PC 机上编写简单的虚拟硬件驱动程序并进行调试,实验驱动的各个接口函数的实现,分析并理解驱动与应用程序的交互过程。四 实验结果分析 驱动实验:修改makefile文件 修改驱动文件 编译驱动,make 生成可执

7、行文件,测试该文件 实验心得:实验时要将驱动程序copy出来,否则如果运行不当的话会破坏系统。实验六 嵌入式GUI一、实验目的1. 了解在 Linux 下安装Qt 的基本步骤;2. 学会在Qt 环境在X11 平台下程序设计的方法;二、实验内容1. 在本机 Linux 下编译和使用Qt 例程;2. 在本机环境下编译和运行一个程序并显示运行结果;三、预备知识1. 熟悉使用 C+语言程序设计;2. 掌握Linux 下常用编辑器的使用;3. 掌握Linux 下程序编译;4. 熟悉Qt 程序设计;四、实验室设备和工具硬件:UP-ARM2410CL、PC 机Pentumn500 以上, 硬盘80G 以上。

8、软件:PC 机操作系统RHEL4 超级终端(或X-shell) ARM-Linux 开发环境qt-x11-opensource-src-4.4.0.tar.gz arm-linux-gcc-3.4.6-glibc-2.3.6五、实验步骤编译 QT-X11 环境在Trolltech 公司的网站上可以下载该公司所提供的Qt/Embedded 的免费版本,在安装产品光盘以后,本次实验目录下已有要下载的文件,在/arm2410cl/gui/src 下。在做实验前把本次实验用到的qt-x11-opensource-src-4.4.0.tar.gz 文件拷贝到/home/sprife/qt4/for_pc

9、 目录下。实验具体目录可以自行定义,拷贝库文件:#cd /home/#mkdir sprife#cd sprife#mkdir qt4#cd qt4#mkdir for_pc#cd for_pc#cp /arm2410cl/gui/Qt/src/qt-x11-opensource-src-4.4.0.tar.gz ./Qt 本机环境的搭建需要以下几步:#tar xzvf qt-x11-opensource-src-4.4.0.tar.gz#cd qt-x11-opensource-src-4.4.0#./configure -prefix /usr/local/Trolltech/Qt-x11

10、-4.4.0 /这里自行新建目录Trolltech/Qt-x11-4.4.0出现安装提示时选择yes 注意大小写#gmake#gmake install./configure 是对Qt 进行配置,它包括很多选项,例如可以通过添加“ -no-opengl”等,上面命令中的-prefix 参数指定Qt-x11 环境的安装目录。如果想要进一步了解可以通过键入 ./configure -help 来获得更多的帮助信息。gmake 与gmake insall 命令分别是编译与安装QT 环境如果上面各步都能够成功的编译通过,下面就可以通过运行Qt/Embedded 自带的demo来查看运行结果。#cd /

11、home/sprife/qt4/for_pc/qt-x11-opensource-src-4.4.0/examples/widgets/wiggly/#./wiggle将上面的步骤完成后,我们就已经建立好了在本机上开发Qt 应用程序的环境,下面我们通过编写一个“Hello”的程序来了解Qt 程序设计。Hello, Qt!我们以一个非常简单的 Qt 程序开始Qt 的学习。我们首先一行行的分析代码,然后我们将会看到怎样编译和运行这个程序。1 #include <QApplication>2 #include <QLabel>3 int main (int argc, cha

12、r *argv )4 5 QApplication app (argc, argv);6 QLabel *label = new QLabel ("Hello Qt!");7 label->show ();8 return app. exec ();9 第 1 行和第2 行包含了两个类的定义:QApplication 和QLabel。对于每一个Qt 的类,都会有一个同名的头文件,头文件里包含了这个类的定义。因此,你如果在程序中使用了一个类的对象,那么在程序中就必须包括这个头文件。第3 行是程序的入口。几乎在使用Qt 的所有情况下,main()函数只需要在把控制权转交给

13、Qt 库之前执行一些初始化,然后Qt 库通过事件来向程序告知用户的行为。argc 是命令行变量的数量,argv 是命令行变量的数组。这是一个C/C+特征。它不是Qt 专有的,无论如何Qt 需要处理这些变量第5 行定义了一个QApplication 对象App。QApplication 管理了各种各样的应用程序的广泛资源,比如默认的字体和光标。App 的创建需要argc 和argv 是因为Qt 支持一些自己的命令行参数。在每一个使用Qt 的应用程序中都必须使用一个QApplication 对象,并且在任何Qt 的窗口系统部件被使用之前创建此对象是必须的。App 在这里被创建并且处理后面的命令行变

14、量(比如在X 窗口下的-display)。请注意,所有被Qt 识别的命令行参数都会从argv 中被移除(并且argc 也因此而减少)。第6 行创建了一个QLabel 窗口部件(widget),用来显示“Hello,Qt!”。在Qt 和Unix的术语中,一个窗口部件就是用户界面中一个可见的元素,它相当于Windows 术语中的“容器”加上“控制器”。按钮(Button)、菜单(menu)、滚动条(scroll bars)和框架(frame)都是窗口部件的例子。窗口部件可以包含其它的窗口部件。例如,一个应用程序界面通常就是一个包含了QMenuBar,一些QToolBar,一个QStatusBar

15、和其它的一些部件的窗口。绝大多数应用程序使用一个QMainWindow 或者一个QDialog 作为程序界面,但是Qt 允许任何窗口部件成为窗口。在这个例子中,QLabel 窗口部件就是作为应用程序主窗口的。第7 行使我们创建的QLabel 可见。当窗口部件被创建的时候,它总是隐藏的,必须调用show()来使它可见。通过这个特点我们可以在显示这些窗口部件之前定制它们,这样就不会出现闪烁的情况。第8 行就是main()将控制权交给Qt。在这里,程序进入了事件循环。事件循环是一种stand-by 的模式,程序会等待用户的动作(比如按下鼠标或者是键盘)。用户的动作将会产生程序可以做出反应的事件(也被

16、称为“消息”)。程序对这些事件的反应通常是执行一个或几个函数。为了简单起见,我们没有在main()函数的结尾处调用delete 来删除QLabel 对象。这种内存泄露是无害的,因为像这样的小程序,在结束时操作系统将会释放程序占用的内存堆。下面我们来编译这个程序。建立一个名为hello 的目录,在目录下建立一个名为hello.cpp 的c+源文件,将上面的代码写入文件中。#cd /home/sprife/#mkdir hello#vi hello.c编辑hello.c 源文件,填入上述9 行代码编译程序#/home/sprife/qt4/for_pc/qt-x11-opensource-src-4.4.0/bin/qmake -project#/home/sprife/qt4/for_pc/qt-x1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论