实验报告书
课程名:《嵌入式驱动程序设计》
题 目: 实验3 Buzzer设备驱动实验
实验类别 【验证】
班 级: BX1202
学 号: 22
* ** **
1、实验目的
(1)了解Buzzer 设备驱动程序。
2、实验内容
(1)创建并测试Buzzer 设备驱动程序,在虚拟机执行编译。
(2)编写设备驱动的测试程序,将编译好的设备驱动程序下载到试验箱,执行并观察结果。
3、实验设备
PC 机一台;操作系统:Ubuntu 8.04。
ARM实验箱。
4、实验步骤
(1)源文件创建
试创建 Buzzer 设备驱动程序。设备驱动程序的基本作业目录是/working/device_driver。
作业目录 : /working/device_driver/248.buzzer_driver
生成 Buzzer 设备驱动程序作业目录,移动到有关目录中后,创建 buzzer.c 源文件。
(2)编译
创建 Makefile 来编译两个文件。
如果 make clean ,首先编译的驱动程序和执行例题文件会被清除。编译make 驱动程序和执行例题程序。
(3)向目标板下载及执行
在目标板上为了通过 tftp 得到下载,将 buzzer.ko 和 buz_test 文件复制到 /tftpboot 中。如果向 /tftpboot 复制完成,在目标板上输入命令语。(注意)下载得到 buz_test,使用 chmod 命令语改变执行权限。
(4)接下来,需要将模块插入到内核中。插入命令是 insmod,通过 mknod 装载设备驱动程序。Mknod 使用时,使用的主编号可以作为 insmod 命令语使用时出现的编号使用。主编号可以在 insmod 后查看 /var/log/messages 来了解。
5、实验结果
(1)驱动程序源文件创建
创建目录
创建驱动源文件
(2)使用设备驱动程序的应用程序。
创建测试源文件
(3)创建 Makefile 来编译两个文件。
创建makefile文件
(4)编译make 驱动程序和执行例题程序。
编译文件
(5)向目标板下载及执行
下载生成文件
(6)使用 chmod 命令语改变执行权限。
修改命令
(7)运行测试程序
运行测试程序
(8)结束测试程序
结束测试程序
6、实验思考题
(1)请说明嵌入式系统对外部设备的访问方式有哪些。
答:动态映射和静态映射
7、实验体会
通过本次的实验,我能在虚拟机执行编译、编写设备驱动的测试程序,并且将编译好的设备驱动程序下载到试验箱。下载本文