嵌入式系统设计与开发实验指导书.docx

上传人:b****3 文档编号:3765155 上传时间:2022-11-25 格式:DOCX 页数:15 大小:42.09KB
下载 相关 举报
嵌入式系统设计与开发实验指导书.docx_第1页
第1页 / 共15页
嵌入式系统设计与开发实验指导书.docx_第2页
第2页 / 共15页
嵌入式系统设计与开发实验指导书.docx_第3页
第3页 / 共15页
嵌入式系统设计与开发实验指导书.docx_第4页
第4页 / 共15页
嵌入式系统设计与开发实验指导书.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

嵌入式系统设计与开发实验指导书.docx

《嵌入式系统设计与开发实验指导书.docx》由会员分享,可在线阅读,更多相关《嵌入式系统设计与开发实验指导书.docx(15页珍藏版)》请在冰豆网上搜索。

嵌入式系统设计与开发实验指导书.docx

嵌入式系统设计与开发实验指导书

南昌工程学院

《嵌入式系统设计与开发》实验指导书

 

2011年9月

 

目录

实验一…………………………嵌入式系统基本操作(9.14)

实验二…………………………linux编程基础(9.21)

实验三…………………………设备文件和驱动程序安装(10.12)

实验四…………………………DEMO驱动程序(10.19)

实验五…………………………AD驱动程序(10.26)

实验六…………………………MiniGUI应用程序设计(11.2)

实验七…………………………嵌入式数据库程序设计(11.9)

实验八…………………………QT应用程序设计(11.16)

实验一:

嵌入式系统基本操作

一、实验目的

1.撑握实验箱的基本操作。

2.掌握利用telnet协议控制远程的计算机。

3.掌握利用nfs服务,将远程计算机的硬盘作为本地硬盘使用。

二、实验设备和仪器

1.计算机

2.UP-2410S实验箱

三、实验内容及要求

1.实验箱和宿主机的硬件连接(串行线和网络的连接),运行实验箱上的程序。

2.在终端方式学习linux命令的基本操作。

(1)画出计算机的目录结构(使用ls和cd命令)

(2)创建目录和复制文件(使用mkdir和cp命令)

(3)查看和设置IP地址(使用ifconfig命令)

(4)新增用户及修改口令(使用adduser和passwd命令)

(5)查看系统服务(使用service命令)

(6)挂载FAT分区(使用mount命令)

3.利用telnet协议操作远程计算机。

4.利用nfs服务,将远程计算机上的目录挂载到本机。

四、实验原理及步骤

1.操作实验箱

利用终端(串口协议)来操作实验箱。

具体步骤如下:

(1)连接电缆线

第一步:

将串口线,一端连接到计算机的COM1口,另一端接实验箱的COM1口。

第二步:

将网线,一端连接到计算机的RJ45接口,另一端接实验箱的NIC-1口。

第三步:

插上实验箱的电源

思考:

串口线和网线分别实现什么功能?

(2)画出实验箱的目录结构

第一步:

打开计算机(缩主机),进入进入Linux操作系统。

第二步:

单击“开始/系统工具/终端”,进入终端窗口。

第三步:

在终端下运行minicom。

注:

如果是第一次运行minicom,则要进行设置,即设置串口为:

ttyS0,传输率为:

1152008N1,数据流控制选择:

NO。

第四步:

打开实验箱电源,这时在minicom窗口,出现显示。

按“Enter”键,实验箱开始启动Linux操作系统。

第五步:

使用ls和cd命令画出目录结构。

(3)运行实验箱上的程序

第1步:

仔细分析实验箱的目录结构,看看应用程序存放在什么目录。

第2步:

运行一个动画程序(程序存放的绝对路径是:

/mnt/yaffs/mplay,播放器文件名是:

mplay,动画文件名假设是:

test.avi),输入以下命令:

[/mnt/yaffs]cdmplay

[/mnt/yaffs/mplay]./mplaytest.avi

第3步:

运行MiniGUI、MP3等其它应用程序

2.学习linux命令的基本操作

第1步:

进入终端方式

依次单击“开始/系统工具/终端”,这时会弹出一个窗口,在窗口出现如下提示:

[root@localhostroot]#

思考:

“[root@localhostroot]”的各部分(如:

root)代表什么意思?

第2步:

使用“ls”查看文件和目录。

[root@localhostroot]#ls

思考:

显示的文件和目录有好几种颜色,它们代表什么意思。

它有那些参数?

第3步:

使用“cd”命令更改路径。

思考:

它和DOS下的CD的使用有什么区别?

第4步:

使用“cp”命令复制文件

第5步:

使用“mkdir”新建文件夹

第6步:

使用“rm”命令删除文件

第7步:

使用“ifconfig”命令设置IP地址

第8步:

使用adduser和passwd命令新增加一个用户

第9步:

使用service命令查看系统服务

第10步:

使用“mount”命令挂载FAT文件系统,先使用fdisk–l查看硬盘分区信息。

3.利用telnet协议控制远程的计算

设网络连接如图1所示。

目前要利用计算机A来操作计算机B。

所以要将计算机B作为telnet服务器,然后计算机A利用telnet协议登录计算机B,并对其进行操作。

图1网络连接图

第1步:

在计算机B上设置telnet服务

进入终端方式运行setup

选中telnet服务,重启计算机。

第2步:

计算机A利用telnet协议登录计算机B

[~]telnet192.168.0.115

登录时使用普通用户,再用su命令转为根用户(su–lroot)。

第3步:

在计算机B上可以使用命令who查看有多少用户登录本机。

第4步:

这时可以用命令进行各种操作。

4.nfs服务器的设置操作

第1步:

进入终端方式运行setup

第2步:

“防火墙”设为“nofirewall”。

在systemservers项中,选中nfs和telnet服务,去除“iptables”和“ipchains”服务,然后保存设置并退出。

第3步:

修改nfs服务权限,即修改“etc/exports”的文件内容。

每一行表示一个权限设置,格式为:

提供的目录(计算机名或IP地址)(权限)

第4步:

启动nfs服务器,使其生效。

重启计算机。

第5步:

客户机使用nfs服务器的目录,使用mount目录

[~]mount–tnfsIP地址:

目录目录

或[~]mount–onolockIP地址:

目录目录

第六步:

telnet远程操作其它计算机

五、实验报告要求:

1、要求画出实验箱的目录结构。

2、nfs操作过程。

3、如何挂U盘和Windows的FAT分区。

实验二:

Linux编程基础

一、实验目的

1.撑握gcc程序编译

2.撑握gdb程序调试(选做)。

3.撑握makefile工具管理的使用。

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

1.编写一应用程序,使用gcc进行编译,并分别使用-o,-g–static,-O2选项。

2.编写一应用程序,使用gdb对程序进行调试。

3.实现1个应用程序,这个应用程序由2个C文件构成,使用Makefile来完成文件的编译。

四、实验原理及步骤

1.gcc编译程序

具体步骤如下:

第一步:

用vi编写一个C语言应用程序hello.c。

hello.c文件内容如下:

#include

voidmain()

{

printf("helloworld\n");

return0;

}

第二步:

使用gcc编译程序

#gcc–ohellohello.c

第三步:

运行可执行程序

#./hello

第四步:

用vi编写一个C语言应用程序optimize.c。

optimize.c文件内容如下:

#include

intmain(void)

{

doublecounter;

doubleresult;

doubletemp;

for(counter=0;counter<2000.0*2000.0*2000.0/20.0+2020;counter+=(5-1)/4)

{

temp=counter/1979;

result=counter;

}

printf("Resultis%lf\\n",result);

return0;

}

第五步:

观察优化选项编译的效果,具体步骤如下:

[]gccoptimize.c–ooptimize

[]time./optimize

观察程序运行使用的时间

[]gcc–O1optimize.c–ooptimize

[]time./optimize

再观察程序运行使用的时间

第六步:

使用gcc的其它参数进行编译,gcc参如下表:

选项

说明

-oFileName

指定输出文件名,如果没有指定,缺省文件名是:

a.out

-c

只编译生成目标文件,后缀为.o

-g

在执行程序中包括标准调试信息

-O

对程序进行优化编译、链接,提高程序的执行效率。

-IDirName

将DirName加入到头文件的搜索目录列表中

-LDirName

将DirName加入到库文件的搜索目录列表中,在缺省情况下gcc只链接共享库。

-lFOO

链接名为libFOO的函数库

-static

静态链接库文件

2.GDB调试程序

具体步骤如下:

第一步:

用vi编写一个C语言应用程序GDB_test.c(教材P34)。

第二步:

带调试参数-g进行编译

#gcc–gGDB_test.c–oGDB_test

第三步:

启动GDB调试,开始调试

#gdbGDB_test

第四步:

使用用gdb的命令进行调试(教材的P35-P40)。

3.利用Makefile管理工具编译程序。

具体步骤如下:

第一步:

用vi编写4个C语言应用程序和头文件。

这4个文件分别是menu.c,menu.h,music.c和picture.c。

(文件的内容见教材P42-43)

第二步:

在当前目录用vi编写Makefile文件(文件的内容见教材P43-44)

第三步:

编译

#make

第四步:

运行可执行程序

#./menu

五、实验报告要求:

1、总结gcc常用选项及功能。

2、总结gdb常用命令及功能。

3、总结Makefile常用预定义变量及功能。

4、思考:

不同目录下文件Makefile如何编写?

实验三:

设备文件和驱动程序安装

一、实验目的

1.撑握设备文件、主设备号、驱动程序之间的关系。

2.撑握驱动程序的加载方法。

3.学习驱动开发调试的过程。

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

1.在PC机准备一个模块驱动程序,并安装。

2.查看驱动程序的主设备号和模块名称。

3.创建一个设备文件。

4.编写一个应用程序使用设备文件。

5.在实验箱上进行相同的操作。

四、实验原理及步骤

实验箱上的直流电机、步进电机的驱动程序的加载方式是:

动态加载(模块化编译);AD驱程序是:

静态加载(直接编译)。

lsmod命令可以查看模块化驱动程序的使用情况,可以用cat/proc/devices命令查看系统所有的设备(及主设备)的使用情况。

(1)查看设备文件及主设备号

Ø进入/dev目录,

Ø用ls–l命令查看

Ø仔细观察屏幕显示,并能知道每个符号的含义

(2)查看已加载的(模块化)驱动程序

Ø使用lsmod命令,分析显示的内容

Ø运行cat/proc/devices,将显示的结果与上面进行比较。

Ø理解什么叫动态加载和静态加载

(3)加载demo.o驱动程序

Ø加载驱动程序(insmoddemo.o)

Ø查看是否加载成功(lsmod和用ls查看设备文件名是否存在)

(4)创建设备文件

Ø运行cat/proc/devices查看demo的主设备号

Ø创建设备文件(mknod/dev/democ2490)

Ø运行测试程序并观察结果

(5)在实验箱上加载直流电机驱动程序

Øinsmods3c2410-dc-motor.o

Ølsmod

Ø./dcm-main

(6)在实验箱上加载步进电机驱动程序

Øinsmods3c2410-exio.o

Ølsmod

Ø./stepmotor

五、实验报告要求:

1、简述设备文件、主设备号、驱动程序之间的关系?

实验四:

DEMO驱动程序

一、实验目的

1.撑握在linux下进行驱动程序设计的原理。

2.掌握使用模块方式进行驱动开发调试的过程。

3.掌握linux驱动程序的框架结构

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

在PC机上编写简单的虚拟硬件驱动程序并进行调度,实验驱动的各个接口函数的实现,分析并理解驱动与应用程序的交互过程。

四、实验原理及步骤

实验箱上的直流电机、步进电机的驱动程序的加载方式是:

动态加载(模块化编译);AD驱程序是:

静态加载(直接编译)。

lsmod命令可以查看模块化驱动程序的使用情况,可以用cat/proc/devices命令查看系统所有的设备(及主设备)的使用情况。

(1)阅读源程序demo.c驱动程序

Ø理解各函数的功能

Ø了解入口和出口函数

(2)编译驱动程序

Ø编写Makefile文件

Ø运行make命令

(3)加载驱动程序

Øinsmoddemo.o

Ølsmod

(4)创建设备文件

Ømknod/dev/democ2490

(5)阅读测试程序test_demo.c

(6)编译应用程序

Øgcctest_demo.c–otest_demo

(7)运行程序

Ø运行测试程序,并理解运行的结果。

五、实验报告要求:

1、驱动程序内部有那部函数?

驱动程序给应用程序提供那些标准函数?

2、思考驱动程序和设备文件之间的关系。

实验五:

AD驱动程序

一、实验目的

1.学习AD转换的工作的原理。

2.学习AD驱动程序和编写方法。

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

1.学习AD测试程序。

2.学习多线程控制程序。

3.编写利用电位器的电压值来控制直流电机的运行。

四、实验原理及步骤

1.实验原理

实验的硬件电路

逐次逼近型A/D转换原理S3C2410X内置的A/D转换器框图

2.实验步骤

(1)阅读AD源程序

(2)编译AD源程序成可执行程序

(3)将AD可执行程序下载到实验箱

(4)执行AD程序

(5)编写控制程序、编译并执行。

五、实验报告要求:

1、要求根据要求写出祥细具体操作步骤。

2、思考如何用C语言程序给寄存器置位(置0或置1)。

实验六:

MiniGUI应用程序设计

一、实验目的

1.学习MiniGUI程序的结构

2.学习MiniGUI程序的编译方法。

3.学习MiniGUI主窗口、对话框和菜单程序的编写方法。

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

1. 阅读MiniGUI主窗口程序,然后编译并运行。

2.修改程序中存在的错误。

3.在dialog.c程序中增加一个名为“hello”的按钮,按钮的ID号为115。

四、实验原理及步骤

实验源程序在05_MiniguiExp/host目录下(arm目录下是编译成实验箱上运行的程序)。

(1)编译主窗口程序(在缩主机上运行)

Ø阅读主窗口源程序(host/helloworld.c)。

Ø阅读Makefile文件。

Ø进入控制台(Alt_ctrl+F1)

Ø运行程序

Ø并运行观察结果.

(2)编译主窗口程序(在实验箱上运行)

Ø阅读主窗口源程序(arm/helloworld.c)。

Ø阅读Makefile文件。

Ø操作实验箱,并挂载nfs

Ø运行程序

Ø并运行观察结果.

(3)有菜单的主窗口

Ø阅读源程序(host/menu1.cmenu2.cmenu3.c)。

Ø阅读Makefile文件。

Ø编译,并运行

实验源程序在05_MiniguiExp/host目录下(arm目录下是编译成实验箱上运行的程序)。

(1)编译对话框程序

Ø阅读主窗口源程序(host/dialog.c)。

Ø阅读Makefile文件。

Ø进入控制台(Alt_ctrl+F1)

Ø运行程序

Ø并运行观察结果.

(2)编译装载图片程序

Ø阅读主窗口源程序(host/loadbmp.c)。

Ø阅读Makefile文件。

Ø进入控制台(Alt_ctrl+F1)

Ø运行程序

Ø并运行观察结果.

五、实验报告要求:

1、要求写出对话框使用的具体函数及其功能。

2、思考如何在程序中添加一些自己的功能。

实验七:

嵌入式数据库应用

一、实验目的

1.学习嵌入式数据库的应用。

二、实验设备和仪器

1.计算机

三、实验内容及要求

1. 阅读嵌入式数据库的资料

2.学习SQLite3数据库的使用

四、实验原理及步骤

1:

安装SQLite3数据库。

2:

用SQLite3的相关命令实现:

创建一个名为stu.db的数据库,在该数据库中创建一个名为student的表,表的字段信息如表1所示,并向表中插入2条记录,详细信息如表2所示;然后把表中的记录进行查询在终端上显示出来。

表1表的字段信息

字段名

类型

说明

ID

Integer

学生学号,为主键

Name

varchar(20)

学生姓名

Age

Integer

学生年龄

Sex

varchar(20)

学生性别

表2表的记录

ID

Name

Age

Sex

10001

zhansan

20

female

10002

lisi

19

male

3:

编写C程序,通过调用SQLite的API函数完成以上功能。

五、实验报告要求:

1、请将具体步骤写在实验报告上。

2、如果在实验时遇到错误,请写在实验报告上,如果有解决错误的办法,也写在实验报告上。

实验八:

QT应用程序设计

一、实验目的

1.学习QT程序的结构

2.学习QT程序的编译方法。

3.学习QT主窗口、文本框和菜单的编写方法。

二、实验设备和仪器

1.计算机

2.嵌入式实验箱

三、实验内容及要求

1. 阅读QT主窗口程序helloworld.cpp,然后编译并运行。

2.在helloworld.cpp程序中增加一个名为“hello”的按钮。

四、实验原理及步骤

(1)编译主窗口程序(在缩主机上运行)

Ø阅读主窗口源程序(host/helloworld.cpp)。

Ø创建Makefile文件。

Ø运行程序

Ø并运行观察结果.

(2)增加按钮“hello”

Ø添加代码。

Ø创建Makefile文件。

Ø运行程序

Ø并运行观察结果.

五、实验报告要求:

1、要求写出添加按钮的具体函数及其功能。

2、思考如何在程序中添加一些自己的功能。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1