iTOP-4412开发板_驱动_adc驱动升级和测试例程
本文档介绍 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驱动升级和测试例程的更多相关文章
- 迅为4412开发板Linux驱动教程——编写简单应用调用驱动
Linux驱动教程:http://pan.baidu.com/s/1c0hljUS 编写简单应用调用驱动--头文件 • 打印头文件 – include <stdio.h>调用打印函数pri ...
- 4412开发板升级4.2之后改了logo开机后屏幕闪解决办法
荣品4412开发板升级到4.2请注意增加虚拟机内存. 问:荣品4412开发板升级到Android4.2之后,改了logo.4412板子开机后,过一会屏幕就一闪一闪,是什么原因? Android4.2编 ...
- 基于讯为4412开发板的Android开发流程
讯为4412开发板 使用三星2410芯片,基于arm9架构,由于自己电脑硬件的局限,只能跑Android4.0.3系统. 1.Uboot这个直接使用官方镜像烧写就可以了,一般情况不用去重复烧写. 略 ...
- 【开学季】自学嵌入式开发|四核开发板|4412开发板|ARM+Android+linux技术
淘宝店铺:迅为开发板http://arm-board.taobao.com 网站:http://www.topeetboard.com QQ咨询:2551456065 电话咨询:010-5895758 ...
- 迅为三星Exynos 4412开发板四核Cortex-A9ARM安卓linux开发板
开发板光盘资料包含:原理图(PDF格式).底板PCB(Allegro格式).驱动程序源码.芯片和LCD数据手册.开发环境.产品使用手册. 4412开发板简介: iTOP-Exynos4412开发板采用 ...
- 【转帖】嵌入式4412开发板QT5.7编译安装到arm
QT5.7.0+UBUNTU16.04+ARM-NONE-LINUX-GNUEABI4.8+busybox最小LINUX系统 Orandragon记录 本文转自迅为4412开发板群:http://to ...
- 迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法
迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com/ 用户在开发板上运 ...
- [转帖]4412开发板/4418开发板Android4.4.4实现ble功能
本文转自迅为论坛:http://bbs.topeetboard.com ①.4418开发板实现ble功能方法: 在4418/android/device/nexell/drone2/device.mk ...
- 迅为4412开发板Linux驱动教程——总线_设备_驱动注册流程详解
本文转自:http://www.topeetboard.com 视频下载地址: 驱动注册:http://pan.baidu.com/s/1i34HcDB 设备注册:http://pan.baidu.c ...
随机推荐
- python小白——进阶之路——day2天-———容器类型数据(list,set ,tuple,dict,str)
#容器类型数据 : list tuple # ###列表的特性:可获取,可修改,有序 # 声明一个空列表 listvar = [] print(listvar,type(listvar)) # (1) ...
- 搭建vue.js环境
一.安装Node.js (以下安装环境均为win10) 下载链接:https://nodejs.org/en/download/ 官网给出了两个版本,LTS和Curren.字面意思是推荐大多数用户使用 ...
- 故障公告:docker swarm集群“群龙无首”造成部分站点无法访问
今天傍晚 17:38-18:18 左右,由于 docker swarm 集群出现 "The swarm does not have a leader" 问题,造成博问.闪存.园子. ...
- 老铁啊,我同你讲, 这年头不会点 Git 真不行!!!
-------------------------------------知识是一点一点的积累的, 也是一点一点的吸收的,没有人一口就能吃成一个胖子. 版本控制 说到版本控制,脑海里总会浮现大学毕业是 ...
- python之yagmail模块--小白博客
yagmail 实现发邮件 yagmail 可以简单的来实现自动发邮件功能. 安装 pip install yagmail 简单例子 import yagmail #链接邮箱服务器 yag = yag ...
- WEB通知和React Native之即时通讯(iOS Android)
WEB通知和React Native之即时通讯(iOS Android) 一,需求分析 1.1,允许服务器主动发送信息给客户端,客户端能监听到并且能接收. 1.2,为了方便同一个系统内的用户可以指定某 ...
- 使用lombok自动生成链式调用
本文转载:使用 Lombok 自动生成 Getter and Setter
- js DOM操作 容易犯的错误
这样一段html片段 <select class="form-control" id="course_chapter" onchange="fi ...
- mshcMigrate制作的mshc文件中有链接打不开
网上下载的c3ddotnetapiref.chm文件, 使用mshcMigrate工具(2.0.0.75)转换成mshc文件, 添加到help viewer 2.2中, 有时会遇到这样的错误: 选择是 ...
- JSON.stringify() 和 JSON.parse()
stringify()用于从一个对象解析出字符串,如 var obj = {x: 1, y: 2 } console.log(JSON.stringify(obj)) //{"x" ...