需要用AD转换,网上找来找去也没找到合适的,自己写了个,查询方式的,后续更新中断方式的。
1.tq2440_adc_sk.c
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/device.h>
//包含class_create, device_create, ......这些程序
#include <asm/uaccess.h>
#include <asm/irq.h>
#include <asm/io.h>
//2.6.39版本内核为此位置
//之前版本的内核位置可能为
//#include <asm/regs-gpio.h>
//#include <asm/hardware.h>
#include <mach/regs-gpio.h>
#include <mach/hardware.h>
#include <linux/clk.h>
//clk
//加入两个结构体,用来供内核自动创建主设备号
//主要就是在init和exit两个函数中加入了这两个结构体
static struct class *adcdrv_class;
static struct class_device *adcdrv_class_dev;
volatile unsigned long *adccon;
volatile unsigned long *adctsc;
volatile unsigned long *adcdat0;
volatile unsigned in

这篇博客介绍了如何在Linux下开发AD转换驱动,特别是针对tq2440平台。作者分享了自己编写的查询方式AD驱动代码,并计划后续更新中断方式的驱动。驱动代码位于driver/input/misc目录下,配置文件在kconfig中定义,帮助信息表明这是Steven King于2013年8月18日编写的。
最低0.47元/天 解锁文章
3200

被折叠的 条评论
为什么被折叠?



