定时器驱动程序实验.doc

定时器驱动程序实验.doc

ID:57651541

大小:50.00 KB

页数:5页

时间:2020-08-30

定时器驱动程序实验.doc_第1页
定时器驱动程序实验.doc_第2页
定时器驱动程序实验.doc_第3页
定时器驱动程序实验.doc_第4页
定时器驱动程序实验.doc_第5页
资源描述:

《定时器驱动程序实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验定时器驱动程序实验一、实验目的1、学习Linux下定时器驱动程序的编写方法;2、学习定时器应用程序的编写方法;3、进一步学习Linux内核模块的编译方法;4、学习Linux内核模块的挂载、调用、卸载方法。二、实验内容1、编写定时器驱动程序和定时器应用测试程序;2、对驱动程序交叉编译成内核模块,对测试程序交叉编译成可执行文件;3、通过超级终端或网络将内核模块、测试程序下载到实验箱上;4、在实验箱上对驱动程序进行挂载、卸载实验,运行应用程序对驱动程序做测试实验。三、实验操作方法1、编写驱动程序和应用测试程

2、序首先在“/home”下建立“module”文件夹,然后切换到“/home/module”文件夹下,分别编写定时器0驱动程序“timer.c”、定时器0应用程序“timertest.c”,“timer.c”和“timertest.c”内容如后面所列。2、编译驱动程序和应用测试程序(1)复制一些头文件将“/usr/include/linux”下的文件version.h,复制到“/usr/local/arm/2.95.3/arm-linux/include/linux”下面。修改文件version.h中的第一

3、行,将#defineUTS_RELEASE“2.4.20”修改为#defineUTS_RELEASE“2.4.18-rmk7-pxa1”使编译环境操作系统的版本号与实验箱上操作系统的版本号一致。注意上面的”2.4.18-rmk7-pxa1”中的“1”,为数字1,而不是字母L的小写。(2)编译驱动程序在“/home/module”目录下进行编译,编译命令如下:arm-linux-gcc–D__KERNEL__-DMODULE–I/usr/local/arm/2.95.3/arm-linux/include–

4、O2-Wall–O–ctimer.c–otimer.ko正确编译后会产生在ARM上运行的驱动程序内核模块“timer.ko”。(3)编译定时器测试程序编译命令如下:arm-linux-gcc–I/usr/local/arm/2.95.3/arm-linux/includetimertest.c–otimertest正确编译后会产生在ARM上运行的程序“timertest”。3、通过超级终端下载程序(1)复制下载文件到“windows-Linux共享目录”下windows操作系统与Linux操作系统的共享目

5、录为:Windows下:e:VMwareshareLinux下:/mnt/hgfs/share在PC机端的Linux操作系统下执行:#cptimer.ko/mnt/hgfs/share↙#cptimertest/mnt/hgfs/share↙(2)下载文件通过超级终端对目标板进行操作,下载文件。首先转到下载欲保存文件的目录“/tmp”。在超级终端执行如下命令:#cd/tmp↙然后利用超级终端下载文件。在超级终端进行操作:点击“传送”主菜单、“发送文件”,在弹出的“发送文件”对话框先后选择“e:VMw

6、areshare”下的“timer.ko”、“timertest”文件,点击“发送”,即可就文件传送到目标板的“/tmp”目录下。4、挂载与驱动程序模块(1)挂载驱动程序内核模块在目标板上执行如下操作:#cd/tmp↙#insmodtimer.ko↙正确挂载后会显示出:#timermoduleinstalled!(2)创建设备入口点——添加设备文件在目标板上的/tmp目录下执行如下操作:#mknod/dev/timerc2310↙5、测试驱动程序(1)修改测试程序权限修改在目标板上的/tmp目录下文件“

7、timertest”的权限,执行如下操作:#chmoda+xtimertest↙(2)运行测试程序按下实验箱上直流电机的电源按钮,在目标板上的/tmp目录下执行如下操作:#./timertestn↙n可以取值:0~5。数字0使电机停止转动;数字1~5是控制直流电机运转,数字1使电机转速最低,数字3使电机以中速运转,数字5使电机转速最高。改变数字n的值,反复操作,观察电机的运行情况。6、卸载驱动程序内核模块执行如下操作:#rmmodtimer.ko↙正确卸载后会显示出:#timermoduleexit!四、

8、实验参考程序1、定时器0驱动参考程序timer.c#include//在/usr/local/arm/2.95.3/arm-linux/include目录下#include#include#include#include#include

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。