注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
billbot501的个人空间 https://home.eeworld.com.cn/space-uid-274536.html [收藏] [复制] [分享] [RSS]
日志

武林学习LM3S811(六)触摸芯片XPT2046驱动

已有 4218 次阅读2011-6-7 10:42

触摸控制器芯片介绍:

XPT2046内部有 2.5V的参考电压源,可以作为辅助输入、电池电压测量和片内温度测量的参考电压。当不使用时,参考电压源可以处于省电模式。内部参考电压源在电源电压低至2.7V时仍可正常工作。当不使用时,参考电压还可以处于省电模式。内部参考电压在电源电压低于2.7V时仍可正常工作,并且监测着在 0V6V范围内的电源电压。XPT2046 125KHz转换速率 2.7V电压下的功耗仅为750 µWXPT2046以其低功耗和高速率等特性,被广泛应用在采用电池供电的小型手持设备上,比如 PDA、手机等。

XPT2046 是一种典型的逐次逼近型模数转换器SAR ADC),包含了采样/保持、模数转换、串口数据输出等功能。同时芯片集成有一个 2.5V的内部参考电压源、温度检测电路,工作时使用外部时钟。XPT2046 可以单电源供电,电源电压范围为 2.7V5.5V。参考电压值直接决定ADC的输入范围,参考电压可以使内部参考电压,也可以从外部直接输入1VVCC范围内的参考电压(要求外部参考电压源输出阻抗低)。XYZVBATTempAUX模拟信号经过片内的控制寄存器选择后进入ADCADC可以配置为单端或差分模式。选择VBATTempAUX时可以配置为单端模式;作为触摸屏应用时,可以配置为差分模式,这可有效消除由于驱动开关的寄生电阻及外部的干扰带来的测量误差,提高转换准确度。

编程需要注意的是,设置模式为SSI_FRF_MOTO_MODE_3

SSIConfig(SSI0_BASE, SSI_FRF_MOTO_MODE_3, SSI_MODE_MASTER, 2000000, 8);

没做数据处理时,读出的数据有误差:

为了对触摸更加准确,做了下面处理。

1、采集15个数据,去除10个极值点,得到5个有效数据,平均处理

2、如果数据小于100失败

2次读取ADS7846,连续读取2次,当两者之差小于50,认为有效平均处理

经过处理后较为准确了。

代码:

6.2-触摸驱动.zip

发表评论 评论 (1 个评论)
回复 hlmdd 2012-3-13 20:18
期待继续有新的

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章