本文档介绍 iTOP-4412 开发板的 adc 驱动的升级和测试例程。
自带的驱动只能支持一路 adc,本文介绍如何修改可以支持 4 路 adc 的控制。
1 硬件简介
如下图所示,这是 4412 的 datasheet 截图,可以看到 4412 一共有 4 路 ADC 接口。

如下图所示,这是开发板自带的 ADC 电路,ADC 接的是滑动变阻器,网络标号是
XadcAIN0,因为有滑动变阻器,所以这一路测试的时候,动了滑动变阻器,就会影响 adc 的
输出值。

如下图所示,是底板和核心板连接器,可以看到 XadcAIN[0:3],这四路都引到底板。

如下图所示,可以看到 ADC1 和 ADC2 引到 J38 端子。

综上,4412 开发板一共四路 ADC,通道 0 接到滑动变阻器,通道 1 和 2 通过 J38 引
出,通道 4 引到底板,但是底板并没有引出。
2 驱动升级
压缩包中的“itop4412_adc.c”文件是升级之后的 adc 驱动文件,拷贝到内核源码下的
“drivers/char/”目录下,将原来旧的驱动覆盖(老驱动注意备份),如下图所示,然后重新
编译内核镜像,将新的内核镜像烧写到开发板中。

3 测试例程和测试方法
测试例程是压缩包中的“topeet_4412_adc.c”文件,拷贝到开发板,使用命令“arm-
none-linux-gnueabi-gcc -o topeet_4412_adc topeet_4412_adc.c -static”编译,如下图
所示。

将生成的测试例程 topeet_4412_adc,通过 U 盘、TF 卡或者 NFS 等方式弄到开发板。
如下图所示,在开发板控制台中,使用命令“/dev/adc”,可以看到 adc 的设备节点。

测试程序“topeet_4412_adc”需要两个参数,第一个参数是设备节点“/dev/adc”,
第二个参数是通道数 0、1、2、3。
如下图所示,使用命令“./topeet_4412_adc /dev/adc 0”可以测试滑动变阻器的 adc
值,作者测试的值为 5897。

旋转滑动变阻器的旋钮,再次测试,如下图所示,变为了 6202。

如果要测量通道 1 和 2,可以将其拉高为 1.8V(注意:不要超过 1.8V)或者 0V(接
地),如下图所示,将通道 1 拉高到 1.8V,使用命令“./topeet_4412_adc /dev/adc 1”。

如果将其拉低,接地,再次测试,如下图所示,读取的值为 0。

iTOP-4412开发板_驱动_adc驱动升级和测试例程的更多相关文章

  1. 迅为4412开发板Linux驱动教程——编写简单应用调用驱动

    Linux驱动教程:http://pan.baidu.com/s/1c0hljUS 编写简单应用调用驱动--头文件 • 打印头文件 – include <stdio.h>调用打印函数pri ...

  2. 4412开发板升级4.2之后改了logo开机后屏幕闪解决办法

    荣品4412开发板升级到4.2请注意增加虚拟机内存. 问:荣品4412开发板升级到Android4.2之后,改了logo.4412板子开机后,过一会屏幕就一闪一闪,是什么原因? Android4.2编 ...

  3. 基于讯为4412开发板的Android开发流程

    讯为4412开发板  使用三星2410芯片,基于arm9架构,由于自己电脑硬件的局限,只能跑Android4.0.3系统. 1.Uboot这个直接使用官方镜像烧写就可以了,一般情况不用去重复烧写. 略 ...

  4. 【开学季】自学嵌入式开发|四核开发板|4412开发板|ARM+Android+linux技术

    淘宝店铺:迅为开发板http://arm-board.taobao.com 网站:http://www.topeetboard.com QQ咨询:2551456065 电话咨询:010-5895758 ...

  5. 迅为三星Exynos 4412开发板四核Cortex-A9ARM安卓linux开发板

    开发板光盘资料包含:原理图(PDF格式).底板PCB(Allegro格式).驱动程序源码.芯片和LCD数据手册.开发环境.产品使用手册. 4412开发板简介: iTOP-Exynos4412开发板采用 ...

  6. 【转帖】嵌入式4412开发板QT5.7编译安装到arm

    QT5.7.0+UBUNTU16.04+ARM-NONE-LINUX-GNUEABI4.8+busybox最小LINUX系统 Orandragon记录 本文转自迅为4412开发板群:http://to ...

  7. 迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法

    迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com/ 用户在开发板上运 ...

  8. [转帖]4412开发板/4418开发板Android4.4.4实现ble功能

    本文转自迅为论坛:http://bbs.topeetboard.com ①.4418开发板实现ble功能方法: 在4418/android/device/nexell/drone2/device.mk ...

  9. 迅为4412开发板Linux驱动教程——总线_设备_驱动注册流程详解

    本文转自:http://www.topeetboard.com 视频下载地址: 驱动注册:http://pan.baidu.com/s/1i34HcDB 设备注册:http://pan.baidu.c ...

随机推荐

  1. IL指令表

    名称 说明 Add 将两个值相加并将结果推送到计算堆栈上. Add.Ovf 将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上. Add.Ovf.Un 将两个无符号整数值相加,执行溢出检查,并且 ...

  2. Git入门—创建项目

    Git入门—创建项目 注:win10系统下 打开Git Bash,进入存放仓库的目录 创建 初始化git init,该命令执行完后会在当前目录生成一个 .git 目录. 所有 Git 需要的数据和资源 ...

  3. Java泛型中<? extends E>和<? super E>的区别

    这篇文章谈一谈Java泛型声明<? extends E>和<? super E>的作用和区别 <? extends E> <? extends E> 是 ...

  4. xshell中进入PLSQL命令不能使用方向键和退格键的做法(输入后显示乱码)

    解决输入退格键为乱码的情况 输入时可以ctrl+backspace进行强制退格,或者使用下面一种方法: 在xshell的连接属性中配置,如下图红圈部分:  彻底解决方向键和退格键的一种办法(未亲测) ...

  5. Git各个状态之间转换指令总结

    基本状态标识 A- = untracked 未跟踪 A = tracked 已跟踪未修改 A+ = modified - 已修改未暂存 B = staged - 已暂存未提交 C = committe ...

  6. WSL、Git on Windows 、Putty等的创建的rsa秘钥与连接linux的使用。

    1. 在windows 上面可以使用多种方式创建公钥和私钥 这里从一开始说: 1.1 windows subsystem linux 的方式最简单了 cmd 命令行 下 进入 WSL 输入命令 bas ...

  7. Django中的From和ModelForm

  8. LDOOP ADD_PRINT_TEXT多页项

    纯文本打印(ADD_PRINT_TEXT)项超过宽度且高度不够的情况下,不会隐藏后面的内容,而是会分到下一页.分页数量和每页显示内容多少 和设置的纯文本打印项高度有关.LODOP.SET_PRINT_ ...

  9. Django之缓存、信号和图片验证码

    一. 缓存 1. 介绍 缓存通俗来说:就是把数据先保存在某个地方,下次再读取的时候不用再去原位置读取,让访问速度更快. 缓存机制图解 2.Django中提供了6种缓存方式 1. 开发调试 2. 内存 ...

  10. 转:ls用法详解

    在Linux中显示文件大小的时候,通常的做法是使用“ls -l”,显示的大小是文件的字节大小. 但是,如果文件比较大的话,显示起来不是特别易读,这个时候,可以使用“ls -lh”,就可以使用比较接近文 ...