嵌入式应用开发实验指导书 (1) 下载本文

实验五 FB和摄像头设备应用程序编写实验

[实验目的]

1、掌握FrameBuffer设备和摄像头设备的原理;

2、掌握Linux下对FrameBuffer设备和摄像头设备的使用; 3、完成关于FrameBuffer设备和摄像头设备应用程序编写;

4、在目标机上完成FrameBuffer设备和摄像头设备应用程序运行。 [实验内容]

1、编写fb和摄像头应用程序。 2、编写Makefile文件。

3、下载并调试fb和摄像头应用程序。 [预备知识]

1、C语言的基础知识。

2、程序调试的基础知识和方法。 3、Linux的基本操作。 [实验步骤]

1、建立工作目录。 $cd /

$mkdir FB(或者v4l) $cd FB(或者v4l)

2、编写程序源代码(略)。 3、编写Makefile文件。(编译器使用arm-linux-gcc)。 4、编译fb.c程序。 $make clean $make

正确的话,将生成可执行程序,例如:app。 $cp app /tftpboot/挂接目录 5、挂接主机和目标机

#mount 192.168.1.180:/tftpboot/挂接目录 /mnt/nfs/ #cd /mnt/nfs/examples #./app 运行可执行程序 [实验报告要求]

1、实验报告包括实验目的、实验内容、实验步骤、实验结果和实验小结。2、写出程序源码、实验过程和实验结果(可使用贴图)。

21

实验六 触摸屏设备应用程序编写实验 [实验目的]

1、掌握触摸屏设备的原理;

2、掌握Linux下对触摸屏设备的使用; 3、完成关于触摸屏设备应用程序编写;

4、在目标机上完成触摸屏设备应用程序运行。 [实验内容]

1、编写触摸屏应用程序。 2、编写Makefile文件。

3、下载并调试触摸屏应用程序。 [预备知识]

1、C语言的基础知识。

2、程序调试的基础知识和方法。 3、Linux的基本操作。 [实验步骤]

1、建立工作目录。 $cd /

$mkdir TS $cd TS

2、编写程序源代码。 #include #include #include #include #include #include

/* for data reading from /dev/ts */ typedef struct {

unsigned short pressure; unsigned short x; unsigned short y; // unsigned short pad; } TS_EVENT;

int main(void) {

static int ts = -1; int fb;

static int mousex = 0; static int mousey = 0;

static TS_EVENT ts_event; struct fb_var_screeninfo fb_var; // touch screen

printf(\ printf(\ ts = open (\Y); if (ts < 0) {

fprintf (stderr, \ exit(1); }

while(1) {

read (ts, &ts_event, sizeof (TS_EVENT)); if (ts_event.pressure > 0)

printf (\ } }

3、编写Makefile文件。(编译器使用arm-linux-gcc)。 4、编译fb.c程序。 $make clean $make

正确的话,将生成可执行程序,例如:app。 $cp app /tftpboot/挂接目录 5、挂接主机和目标机

#mount 192.168.1.180:/tftpboot/挂接目录 /mnt/nfs/ #cd /mnt/nfs/examples #./app 运行可执行程序 [实验报告要求]

1、实验报告包括实验目的、实验内容、实验步骤、实验结果和实验小结。 2、写出程序源码、实验过程和实验结果(可使用贴图)。

23

实验七 文件系统制作实验

[实验目的]

1、了解U-boot对文件系统的支持;

2、掌握如何制作文件系统文件、如何从文件系统中加载文件。 [实验内容]

1、查看Linux支持的文件系统。 2、解压文件系统。

3、向文件系统中加入自己的应用程序等。 4、重新生成文件系统。 [实验步骤]

1、 解压文件系统 gzip –d ramdisk.gz

2、 修改文件系统权限属性 chmod –x ramdisk 3、 新建目录rd mkdir rd

4、 挂接文件系统到新建目录 mount –o loop ramdisk rd/ 5、 进入挂接目录 cd rd

6、 查看文件系统属性 df –h rd 7、 向目录添加文件 8、 卸挂目录 umount rd

9、 压缩目录为文件系统 gzip -9 ramdisk 10、复制到主机/tftpboot/目录下

11、下载制作好的文件系统到目标机运行。 [实验报告要求]

1、实验报告包括实验目的、实验内容、实验步骤、实验结果和实验小结。 2、写出制作文件系统的过程。

3、在目标机上运行自己制作的文件系统,给出截图结果。

实验八 嵌入式综合实验

[实训目的]1、掌握FB,触摸屏设备的原理;2、掌握Linux下对FB,触摸屏设备的使用,挂接开发机和目标机,完成系统的交叉编译;3、完成一个综合嵌入式系统实验。

[实验内容]综合FB设备和触摸屏设备程序,设计一个嵌入式系统。在主机上编译通过、并运行。在目标机上运行此系统。以下两者方法任选一种:

(1)主机挂接目标机运行系统;制作包含此系统可执行程序的文件系统在目标机上运行。 [实验步骤] 参考实验三到实验七。自主设计一个嵌入式系统。

[实验报告要求]实验报告包括实验目的、实验内容、实验步骤、实验结果和实验小结。 序号 实验项目名称 实验一 基本接口实验(一) 时间 2014.2.26 3,4节 2014.3.1 1,2节 2014.3.1 3,4节 2014.3.5 3,4节 实验二 基本接口实验(二) 2014.3.7 1,2节 2014.3.7 3,4节 2014.3.12 3,4节 实验三 Bootloader及Linux内核加载实验 2014.3.14 1,2节 2014.3.14 3,4节 实验四 串口应用程序编写实验 2014.3.19 3,4节 2014.3.21 1,2节 实验五 FB和摄像头设备应用程序编写实验 2014.3.21 3,4节 2014.3.26 3,4节 2014.3.28 1,2节 实验六 触摸屏设备应用程序编写实验 2014.3.28 3,4节 2014.4.2 3,4节 2014.4.4 1,2节 实验七 文件系统制作实验 2014.4.4 3,4节 2014.4.9 3,4节 实验八 嵌入式综合实验 2014.4.11 1,2节 2、写出系统源码。3、在目标机上运行此系统,给出截图结果。

25