码迷,mamicode.com
首页 > 其他好文 > 详细

实验四 外设驱动程序设计(小组)

时间:2015-11-18 21:30:54      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

小组成员:20135305姚歌 20135310陈巧然

一.实验目的与要求

  • 掌握实时系统应用和驱动程序的编写
  • 选择某个接口电路(串口、LED、LCD、USB)
  • 平台可选择Windows或Linux

二.实验内容

  • 在ARM开发平台下,选择某个进行接口电路驱动程序设计

三.实验步骤

1、阅读和理解源代码
进入/arm2410cl/exp/drivers/01_demo,使用vi 编辑器或其他编辑器阅读理解源代码
2、编译驱动模块及测试程序
上面介绍了在 Makefile 中有两种编译方法,可以在本机上使用gcc 也可以使用交叉编译器进行编译,这里我们只介绍用交叉编译器进行编译
注意:如果编译的时候出现问题,可能是在/usr/src 下没有建立一个linux 连接,可以使用下面的命令:
[root@zxt 01_demo]# cd /usr/src/
[root@zxt src]# ln -sf linux-2.4.20-8 linux
[root@zxt src]# ls
debug linux linux-2.4 linux-2.4.20-8 redhat

技术分享

也可以通过修改makefile文件来解决

技术分享

技术分享
3、测试驱动程序
如果使用 gcc 编译的话,需要通过下面的命令来建立设备节点,如果使用交叉编译器的话,不需要建立设备节点
#mknod /dev/demo c 254 0
首先要插入驱动模块demo.o,然后可以用lsmod 命令来查看模块是否已经被插入,在不使用该模块的时候还可以用rmmod 命令来将模块卸载

使用测试程序来进行测试,按照上面步骤成功后会出现下面的结果:

技术分享
如果模块没有成功插入的话,会出现下面的情况:
[root@zxt 01_demo]# ./test_demo
####DEMO device open fail####
在驱动模块成功插入后,会在/dev 下面建立一个叫做demo 的设备文件,我们也可以使用cat 命令
来直接调用read 函数,来测试读过程。
[root@zxt demo]# cat /dev/demo/0
device open success!

四.实验中遇到的问题及解决方法

  • 在实验中直接敲make命令无法使用,只能通过修改makefile文件来解决

技术分享

五.实验体会

   这次的Linux实验前期基本步骤同实验一、二相似,都是在配置实验箱的环境下进行的,因为有做实验一、二积累的经验,这次配置就很成功,按实验指导书步骤一步一步来做,很快就解决了。之后基本上掌握了实时系统应用和驱动程序的编写,能够实现在ARM开发平台下,选择某个进行接口电路驱动程序设计,对于ARM开发板的使用有了更深层次的了解。其中实例学习和运行过程中, Makefile有两种编译方法,对于交叉编译方法,显示Error,修改makefile文件后成功。这点在以后的时间里面需要学习更多的相关知识。

实验四 外设驱动程序设计(小组)

标签:

原文地址:http://www.cnblogs.com/20135305yg/p/4975657.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!