嵌入式驱动开发实验指导书 下载本文

source /root/.bashrc d) 测试

在任意终端下输入arm4v后,按tab键,如能出现arm编译命令armv4l-unknown-linux-gcc即为成功交叉编译环境搭建成功。 2)

从百度云盘下载,下载后搭建samba服务器,拷贝到/root目录下。

则Makefile中 KERNELDIR = /root/kernel-2410s 3)

编写驱动程序myadc.c 下载s3c2410实验箱内核源码

编写Makefile,并对驱动程序进行测试,成功后,编写用户程序。 4)

编写测试程序test.c

在Makefile中增加编译语句,对test.c进行编译。 5)

运行、测试

将编译后的驱动程序和测试程序,拷贝到实验箱所连接的上位机。通过超级终端将程序下载到实验箱,进行测试。观察结果。 6)

按照之前实验提交方式,提交源程序、目标程序及测试结果

一.myadc 1、

预分频使能位,1为使能,0为禁止 启动adc控制位,1为启动,0为不启动 预分频值 定义通道 等待队列读写 中断的入口函数 2、

配置ADC 启动指定的通道 进入睡眠

从ADCDATA0读数据 取0-9这10位ADC转换数据 4、

将预分频值转换成ADCCON可接收形式 5、

将ADC的通道号转换成ADCCON可接收形式 6、

初始化等待队列 计数器加1 7、

计数器减1 8、

在/dev中建立设备文件,指明它是字符驱动设备,可读写 9、

注销ADC设备 释放中断

实验六

实验题目:Linux内核编译

实验目的:了解Linux内核编译步骤;学会如何将驱动加入到内核,通过内核编译,实现驱动静态加载。 实验类型:综合 实验要求:必修 仪器设备:计算机 实验内容、方法、步骤:

对编写的globalvar或chrdemo等设备驱动程序,通过内核编译,实现静态加载。内核编译后,重启机器,对驱动功能进行测试,比较静态与动态加载的不同。测试后,写出内核编译步骤及运行程序后的结果。具体步骤如下: 1)

将驱动源程序加入到linux系统内核源码中

a) 将驱动源程序拷贝到内核源码相应路径。 cp globalvar.c /usr/src/linux/driver/char

b) 修改/usr/src/linux/driver/char下配置文件Config.in,在文件最后一行endmenu前,加入一行 tristate 'globalvar support' CONFIG_GLOBALVAR