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