实验七 ARM9嵌入式系统硬件驱动基础开发实验
【实验目的】
1.掌握嵌入式linux内核的配置编译及移植。
2.掌握ARM linux驱动程序的开发流程。
【实验内容】
1.常用linux命令的使用
2.嵌入式linux驱动程序开发步骤
3.linux内核配置、编译以及移植
【实验设备】
1.ARM9开发板
2.串口线、USB线
3.PC机(软件:VMware Workstation6.5)
【实验原理】
嵌入式 Linux是以Linux为基础的嵌入式作业系统,它被广泛应用在移动电话、个人数字助理(PDA)、媒体播放器、消费性电子产品以及航空航天等领域中。Linux是开放源代码的操作系统,同时具有体积小、执行速度快、较好的可裁剪性与移植性等特点。针对ARM CPU开发的具有MMU(Memory Management Unit)功能的嵌入式Linux操作系统是ARM平台上操作系统的最佳选择。通用的基于ARM系统的Linux开发步骤如下:
1)开发目标硬件系统:如选择微处理器,Flash及其他外设等;
2)建立交叉编译工具:一般的GCC工具都是针对X86体系的,为了能够生成目标板可执行的代码必须建立交叉编译工具;
3)开发Bootloader:建立启动系统的主引导程序;
4)移植Linux内核:如基于ARM的Linux2.4内核移植;
5)开发一个根文件系统:如yaffs文件系统的制作;
6)开发相关硬件的驱动程序:如LCD、Keypad等;
7)开发上层的应用程序:如QT GUI开发。
驱动程序的目的一般式驱动硬件正常工作,所以通常所说的驱动程序都是针对特定的硬件来编写的。驱动程序既可以工作在有操作系统的环境下,也可以工作在无操作系统的环境中。通常在做一些简单的硬件控制时,由于功能比较单一,不需要操作系统来管理,所以针对这种情况下的驱动程序相对来说也比较简单,但是作为一个嵌入式系统,他要实现的任务也相对比较多,比较复杂,所以需要有操作系统来对他进行管理。设备驱动程序是操作系统内核和及其硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作。Linux下的设备驱动程序是内核的一部分,运行在内核模式。也就是说,设备驱动程序为内核提供了一个I/O接口,用户使用这个接口实现对设备的操作。我们在这个实验中主要是将驱动程序的C文件交叉编译后添加进内核,同时,在文件系统中添加驱动测试程序。最后将生成的系统映像文件烧进开发板中。
对于驱动程序的使用,有静态编译和动态编译两种,静态编译指的是将驱动程序添加到内核中,动态编译是指将驱动程序编译成驱动模块。我们采用 第一种,即静态编译的方式添加驱动程序。驱动程序的开发步骤如下:
1)首先,用户在自己的驱动程序源文件中定义file_operations结构,并编写出设备需要的各种操作函数,对于设备不需要的操作函数用NULL初始化,这些操作函数将被注册到内核。当应用程序对相应的设备文件进行操作时,内核会找到相应的操作函数,并进行调用。如果操作函数使用NULL,操作系统就进行默认的处理。
2)设备驱动程序编写完成后,就可将其添加到linux内核中,这需要修改linux的源码,然后重新配置编译linux内核。
3)编写相应的驱动测试程序,下载到ARM板进行相应驱动的测试。
【实验步骤】
1.打开桌面上的虚拟机软件VMware Workstation,用户名为root,密码为123456,即以超级用户的身份登录。打开终端,学习一下Linux常用命令:
# cd / 切换到根目录
# cd dir 切换到当前目录下的dir目录下
# cd .. 切换到上一级目录
# ls 显示当前目录下的文件列表
# vi file 编辑文件file
# tar xzvf file.tgz 将文件file解压
# rm file 删除文件
# rm –fr dir 删除当前目录下叫dir的整个目录
# cp source target 将文件source复制为target,可以指定文件路径
# cat file 查看file的内容
# mv file /dir 将当前目录下的file文件移动到dir目录下
还有一些命令会在后面的使用中具体讲解。
2. 在终端里进入 /opt/FriendlyARM/Nano2410V2 目录下,其中有一个kernel文件夹,这就是我们要操作的LINUX的内核。进入kernel/drivers/char ,即内核驱动的字符型设备驱动文件夹,然后ls查看里面的文件列表,其中有一个 super2410-leds.c文件,这是一个led驱动程
您可能关注的文档
最近下载
- 2025年拍卖师处理委托人疑虑与期望管理的咨询方法专题试卷及解析.pdf VIP
- 用户手册_财务_第二册.doc VIP
- 机场商业业态的智能布局与旅客消费行为引导策略.pdf VIP
- 2025年无人机驾驶员执照飞行日志中起降数据的记录与分析专题试卷及解析.pdf VIP
- 2025年无人机驾驶员执照安全审计绩效评估专题试卷及解析.pdf VIP
- 2025年AWS认证CloudWatch警报全生命周期管理与持续优化专题试卷及解析.pdf VIP
- 2025年演出经纪人艺人合同中的合同履行中的法律文书存储专题试卷及解析.pdf VIP
- 《哲学的指引 :斯多葛哲学的生活之道》马西莫·匹格里奇【文字版_PDF电子书_下载】.pdf VIP
- 低温等离子体多功能手术系统技术参数.docx VIP
- 用户手册_财务_第一册.doc VIP
原创力文档

文档评论(0)