S5PV210的电阻触摸屏&ADC控制器
一、ADC与触摸屏控制器结构框图

1、S5PV210一共支持10路模拟输入,分别为AIN0-AIN9.其中AIN0和AIN1是只做模拟输入的,AIN2-AIN9分别可以支持2个电阻式触摸屏,所以这个就是上个博客中电阻式触摸屏的
第一种接口,将电阻触摸板传感器直接与SoC控制器相连。所以4个模拟输入引脚负责一个电阻式触摸屏。
2、从上面可以看出来,整个控制器由多个部分组成。AD转换和触摸屏控制部分有2个附属单元。其中一个是反向控制AINn引脚的逻辑(图中的箭头),主要作用是在触摸屏获取坐标
的过程中分时给xy方向供电和测量;第二个是中断产生部件,对于AIN1和AIN0来说,当AD转换完成之后就会通过INT_ADC0和INT_ADC1中断信号通知CPU可以来读取数据了,而
对于两组触摸屏来说,如果X/Y轴数据转化完成之后会通过INT_PEN0和INT_PEN1中断信号来通知CPU读取坐标信息,但是对于触摸屏被按下而产生的中断是另一个中断信号,其实I2C
从设备的硬件接口会有一个中断引脚连接到SoC中的一个外部中断引脚上。
3、两种工作模式:Normal Conversion Mode (AUTO_PST = 0, XY_PST = 0) & Separate X/Y Position Conversion Mode (AUTO_PST = 0, XY_PST = control)
(1)AD转换器有2种工作模式:正常操作模式和分时X/Y位置转换模式。
(2)正常操作模式用作普通的AD转换,分时X/Y位置转换模式用作电阻式触摸屏。正常AD转换下将AD转换值放在TSDATX中,在分时X/Y模式下会将X/Y坐标分别放在TSDATX和
TSDATY中。
(3)对于AIN0和AIN1来说没有这么多模式,他们只能工作在普通模式;对于AIN2-AIN9来说,因为被复用,所以才有2种模式。如果我们将这........几个引脚用作普通AD转换
则配置为普通模式,如果用作电阻式触摸屏检测,则配置成分时X/Y模式。
4、中断参与
(1)其实普通AD转换和触摸屏AD转换本身都可以不在中断参与下完成。
(2)普通AD转换如果不要中断,那就去查询。开启一次转换后然后不断查询标志位,直道AD转换完硬件自动置位标志位后我们才去读取转换值就不会错。当然也可以用中断,控
制器提供了一个相应的中断给普通AD转换。
(3)触摸屏也可以用或者不用中断。对于SoC来说永远不知道人会什么时候按下或者弹起触摸屏,所以触摸屏的按下/弹起对SoC来说是纯粹的异步事件。对于这种情况SOC只有2
种解决方案:轮询和中断。
5、主要寄存器
(1)TSADCCONn寄存器

start by read就是当AD转换完成之后,如果CPU从相应的寄存器中读走转换完的数据之后,硬件会自动开启下一次AD转换。
ENABLE_START位,如果我们将该位值1开启一次AD转换之后,该位会被自动置为0
(2)TSCONn:主要是用来控制在测量X轴和Y轴坐标时,两个面板电极供电的问题
(3)TSDLYn:看名字是用来做延时的,这个寄存器主要是用来实现当完成一次AD转换后不要立马就开启下一次AD转换,而是需要延时一段时间。指定TS0 - ADC启动或间隔延迟寄存器
(4)TSDATXn:触摸屏的X轴AD转换完成后的数据放在这个寄存器中,如果我们只是做为普通的AD转换,那么这个数据也是存放这个寄存器中
(5)TSDATYn:触摸屏的Y轴AD转换完成后的数据放在这个寄存器中
(6)CLRINTADCn:清除中断挂起标志位,对应上图中的INT_ADCn
(7)CLRINTPENn:清除中断挂起标识位,对应上图中的INT_PENn
S5PV210的电阻触摸屏&ADC控制器的更多相关文章
- STM32f103的电阻触摸屏的五点校正算法
源:STM32f103的电阻触摸屏的五点校正算法 STM32f103的触摸屏的设置与使用
- (stm32学习总结)—LCD—液晶显示
显示器简介 显示器属于计算机的 I/O 设备,即输入输出设备.它是一种将特定电子信息输出到屏幕上再反射到人眼的显示工具.常见的有 CRT 显示器.液晶显示器.LED 点阵显示器及OLED 显示器 本章 ...
- JZ2440 裸机驱动 第14章 ADC和触摸屏接口
本章目标: 了解S3C2410/S3C2440和触摸屏的结构: 了解电阻触摸屏的工作原理和等效电路图: 了解S3C2410/S3C2440触摸屏控制器的多种工作模式: ...
- 【团购活动】接口最全最好用的S5PV210开发板Sate210-F 开发板开始团购活动了,一起学习linux!
接口最全最好用的S5PV210开发板Sate210-F 开发板开始团购活动了,一起学习linux!http://bbs.eeworld.com.cn/forum.php?mod=viewthread& ...
- S5PV210之Sate210-F DIY硬件,移植uboot,kernel,android 活动现在已经进入实施阶段吗,欢迎广大网友参与 !
大家一起来diy 超低价四核的exynos4412或者Cortex A8S5pv210开源开发板 商业版Sate210已经完成了好久了.Sate4412 也已经出来.但是这两个接口非常全,主要是针对企 ...
- mini2440触摸屏驱动分析
mini2440驱动分析系列之 ---------------------------------------Mini2440触摸屏程序分析 By JeefJiang July,8th,2009 这是 ...
- 基于FPGA的XPT2046触摸控制器设计
基于FPGA的XPT2046触摸控制器设计 小梅哥编写,未经许可,文章内容和所涉及代码不得用于其他商业销售的板卡 本实例所涉及代码均可通过向 xiaomeige_fpga@foxmail.com 发 ...
- 【STM32H7教程】第54章 STM32H7的LTDC应用之LCD电阻触摸和电容触摸
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第54章 STM32H7的LTDC应用之LCD电阻 ...
- S3C2440触摸屏驱动实例开发讲解
出处:http://www.embeddedlinux.org.cn/html/yingjianqudong/ 一.开发环境 主 机:VMWare--Fedora 9 开发板:Mini2440--6 ...
随机推荐
- nginx响应时间监控脚本
最近我们服务的使用方总是反应说我们接口超时,于是做了一个监控脚本,统计最近五分钟的响应情况,并对异常情况发送邮件报警. #!/bin/bash function define(){ ori_log_p ...
- C++坑点集合 - 1 隐式调用和默认实现的构造函数的坑
C++是一个编译器会替你在背后做很多事情的语言,包括模板实例化,按需要创造隐式的构造函数,默认构造你没有显式构造的成员,按需进行隐式转换和饮食构造等等,如果没有彻底了解清楚,就容易被这些编译器背后做好 ...
- Parallel类实现并行计算
https://msdn.microsoft.com/zh-cn/ff652648.aspx 图像处理——并行计算的应用实例 http://blog.csdn.net/bitfan/article/d ...
- webpy 访问局域网共享资源
遇到一个问题: 在python shell 中调用局域网远程共享文件时,没问题.但是在webpy中调用时,报错:没有权限.那一定是apache设置问题. 网上找不到类似的方法,于是换个思路搜了一下“p ...
- linux 网卡启动方法
CentOS 7默认的网卡名称是eno16777736 一般人的是 eth0 编辑配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eno16777736把 O ...
- ASCIITable: 演示 Arduino 串口输出的进阶功能
原文地址 - https://www.arduino.cc/en/Tutorial/ASCIITable ASCII字符表 本例展示了高级的串口打印功能,通过本功能可以在Arduino软件(IDE)的 ...
- WEB页面采集器编写经验之一:静态页面采集器
严格意义来说,采集器和爬虫不是一回事:采集器是对特定结构的数据来源进行解析.结构化,将所需的数据从中提取出来:而爬虫的主要目标更多的是页面里的链接和页面的TITLE. 采集器也写过不少了,随便写一点经 ...
- system verilog中的跳转操作
在verilog中,使用disable声明来从执行流程中的某一点跳转到另一点.特别地,disable声明使执行流程跳转到标注名字的声明组末尾,或者一个任务的末尾. verilog中的disable命令 ...
- storm 配置,呵呵。
配置项 配置说明 storm.zookeeper.servers ZooKeeper服务器列表 storm.zookeeper.port ZooKeeper连接端口 storm.local.dir s ...
- E1、T1链路
北美的24路脉码调制PCM简称T1 速率是1.544Mbit/s 北美使用的T1系统共有24个话路,每个话路采样脉冲用7bit编码,然后再加上1位信令码元,因此一个话路占用8bit. 帧同步码是在24 ...