AD7843是ADI公司生产的一种四线式触摸屏控制器,目前广泛应用于电阻式触摸屏输入系统中。尽管ADI公司给出了相关的典型应用和应用注意,但是在实际使用过程中仍然会遇到一些问题,比如怎样用硬件实现AD7843的时序逻辑、如何提高测量、如何抗干扰,以及提高测量可靠性等。
AD7843数字转换器在一个12位逐次逼近式比较寄存器(SAR)ADC架构上集成了用于驱动触摸屏的低通阻抗开关。这些器件不使用内部基准电压,当以大于125kSaps的吞吐率运行时的功耗小于1.4mW。它们还带有10KeV到12KeV的模拟输入ESD保护,增强了抗ESD能力,以避免关键的内部系统元件损坏。使用单2.2V 到5.25V的电源工作。 AD7843串行接口的完整操作需要24个DCLK.,前8个脉冲接收8位的命令,并在第6个脉冲的上升沿开始采样,从第9个脉冲开始进入转换阶段,输出12位采样值,转换结束进入空闲阶段。直到24个DCLK结束,CS置高电平,测量结束。此外,AD7843还支持其它的工作方式,这里不予详述。
应用实例
的硬件接口示意图为一个驱动触摸屏应用,我们的触摸屏是四线电阻屏,它可以等效成水平方向和垂直方向的两个线性电阻。当有键按下时,通过控制AD7843可以测量到触摸位置对应的水平和垂直方向的电压值,进而通过计算得到触摸位置的坐标值。
AD7843的控制时序由386EX(属Intel X86系列CPU) 产生。测量命令的发送和测量数据的接收由386EX的同步串口完成。中DCLK信号是由386EX同步串口的发送时钟TXCLK和接收时钟RXCLK经过逻辑转换产生,SSIORX和SSIOTX分别是386EX同步串口的数据接收端和数据发送端。其测量周期的流程如所示。
设计中的问题及解决方法
1. 占用系统资源问题由上面的例子可知,AD7843的所有控制时序是由软件完成的。而且为了保证时序不被影响,测量周期内不应被中断打断,所以就必须屏蔽中断。这样在实际操作中就遇到了一个问题,在比较频繁地操作触摸屏时,会大量占用CPU的时间,从而影响系统其它任务的执行,例如串口数据因来不及处理而造成数据的丢失甚至通讯中断。为了解决这个问题,我们采用一个逻辑器件EPM7032,由硬件来生成AD7843的控制时序,从而大大减轻了CPU的负担。下面介绍硬件逻辑如何实现。我们将这部分逻辑看作一个芯片,其引脚定义如下:
entity AD_ctrl_delay_cmp is
Port
(
clk:in std_logic;--时钟输入(1.8432MHz)
dout: out std_logic;--AD7843的DIN
clkout: out std_logic;--AD7843的DCLK信号
clkssio:out std_logic;--同步串口的接收时钟
cs: in std_logic;--AD7843的片选信号
rst: in std_logic-上电复位信号
);
end AD_ctrl_delay_cmp;
其工作流程是:当有键按下时,CPU(386EX)会将cs置低,CPLD逻辑首先发8个clkout脉冲,在dout脚输出测量X坐标的命令,然后再发16个脉冲,在clkssio脚输出与clkout同步的16个脉冲到386EX的同步串口的接收时钟引脚。386ex此时从同步串口接收到16位数据,取前12位作为实际采样值。然后产生测量Y坐标的时序,与测量X坐标的方法相同。完成测量,再延时一段时间,完成第二次测量,与次测量方法相同。测量两次的目的是为了削除键抖动。386EX的同步串口接收到四次测量数据后将cs置低。
其内部逻辑的VHDL完整代码请参见《电子工程专辑》网www.eetchina.com。
2. AD7843的测量值有偏差
在实际的使用过程还遇到另外一个问题,在按触摸屏的过程中,有时测量出的按键位置有偏差,观察AD7843相关引脚波形发现输入电压有抖动。分析后发现抖动可能由两方面产生:
a. AD7843的模拟地与系统的数字地不是一点相连。数字地干扰由公共阻抗耦合到AD7843的模拟地,产生干扰造成抖动。解决办法是模拟地与数字地一点连接。
b. 触摸屏在按下和释放过程中有抖动,所以要进行键削抖。采用两次键值比较是一个较好的方法,具体工作原理是连续测量X 、Y坐标值两次,然后进行比较,若相同或相差在允许的误差范围内就认为是有效键,否则为无效键。这里要十分注意的是为了有效地去除抖动,在次测量X、Y坐标和第二次测量X、Y坐标之间一定要有延时,延时应大于触摸屏的抖动时间,抖动的时间在触摸屏的性能指标中有说明。本文中的硬件CPLD逻辑已经实现了两次键值比较的键削抖功能。
3. 因外界干扰,触摸屏按键无响应触摸屏在现场应用中有时会出现“死机”现象(触摸屏按键无响应)。分析发现现场环境较恶劣,存在较强的电磁干扰,因此在触摸屏的引脚叠加了高频干扰脉冲,影响了AD7843的正常工作时序,造成AD芯片工作不正常。解决方法是在AD的关键引脚DCLK、DIN、DOUT对地接0.001u的高频滤波电容。
将上述解决方法应用到触摸屏系统后,在现场应用一年多,未出现按键无响应、按键坐标值错误等故障,运行良好。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。