打印
[应用相关]

STM32采集电阻触摸贴膜

[复制链接]
834|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
今天为了解决一个测量电阻屏压力的问题,自己直接用STM32做了一个测量电阻屏的程序(直接把触摸屏的四根线接到单片机引脚上),通过AD切换采集,采集X轴电压,Y轴电压,和压力..最后附上自己的程序




使用特权

评论回复
沙发
susceptibility|  楼主 | 2020-5-17 10:43 | 只看该作者
先说一下电阻屏的原理

两层膜

使用特权

评论回复
板凳
susceptibility|  楼主 | 2020-5-17 10:43 | 只看该作者

上下的线(电阻)是呈    十  字交叉

使用特权

评论回复
地板
susceptibility|  楼主 | 2020-5-17 10:44 | 只看该作者

使用特权

评论回复
5
susceptibility|  楼主 | 2020-5-17 10:45 | 只看该作者
现在按下以后测量X轴

X+ 接VCC     X-接GND   Y-不接,测Y+的电压

相当于

使用特权

评论回复
6
susceptibility|  楼主 | 2020-5-17 10:45 | 只看该作者
按下的位置越靠近X+


测得的电压越高

同理越原理X+测得的电压越低

使用特权

评论回复
7
susceptibility|  楼主 | 2020-5-17 10:46 | 只看该作者
对了


测量得电压不受YR-和YR+的影响,因为测量时YR-那端是浮空,YR+检测电压那端的检测电压电路没有寄生电压影响

使用特权

评论回复
8
susceptibility|  楼主 | 2020-5-17 10:47 | 只看该作者
现在测量Y轴

就是Y+接VCC    ,Y-接GND,,X-悬空,测量X+的电压



测得的Y轴电压越高

使用特权

评论回复
9
susceptibility|  楼主 | 2020-5-17 10:47 | 只看该作者
电阻屏还有一点是可以测量压力,,,自己也是为了测量这个压力而自己写的,,,一开始以为是触摸芯片内部的寄生电阻太大才引起的测量压力很不准确,自己用32做了以后才发现问题..变量问题....

使用特权

评论回复
10
susceptibility|  楼主 | 2020-5-17 10:48 | 只看该作者
自己参考的这篇**

https://wenku.baidu.com/view/2bcc7eb569dc5022aaea003e.html

使用特权

评论回复
11
susceptibility|  楼主 | 2020-5-17 10:49 | 只看该作者
我这里就说一种,其实明白了一种另一种自然明白....

如果再知道流过Rtouch的电流 I

那么电阻Rtouch = (V1 - V2)/I  假设电流是从V1流向V2哈...

使用特权

评论回复
12
susceptibility|  楼主 | 2020-5-17 10:50 | 只看该作者
先看怎么得到V1和V2

先得到V1

使用特权

评论回复
13
susceptibility|  楼主 | 2020-5-17 10:50 | 只看该作者
而这个R在测量X轴的时候是可以得到的

使用特权

评论回复
14
susceptibility|  楼主 | 2020-5-17 10:53 | 只看该作者
所以流过Touch的电流值就是

V1/R = V1 /(得到的X轴的电压值/4095*(X+和X-之间的电压值))

使用特权

评论回复
15
susceptibility|  楼主 | 2020-5-17 10:53 | 只看该作者
然后切换一下(就是说手在按着的时候电路在做切换测量)

再得到V2

使用特权

评论回复
16
susceptibility|  楼主 | 2020-5-17 10:54 | 只看该作者
那么Touch的电阻值就是

(V2-V1) / (V1/R) =(V2-V1) / (V1 /(得到的X轴的电压值/(4095*(X+和X-之间的电压值))))

得到的X轴的电压值设为 X

X+和X-之间的电阻设为   R总

Touch电阻值 = (V2-V1)/(V1/(X/(4095*R总)) = (V2-V1)*4095*R总/V1

=V2*4095*R总/V1  - 44095*R总

= 4095*R总*(V2/V1 - 1)

应该是4096....

使用特权

评论回复
17
susceptibility|  楼主 | 2020-5-17 10:54 | 只看该作者
竟然有点高中的感觉了............

感觉写的有点乱...................一开始就应该把那些参数用变量规定好....不应该用汉字表达

实际操作会发现上下屏接触的面积越大电阻值就越小,其实也好理解--按照常识来说,为什么平常都说导线越粗电阻越小...按照物理的公式

使用特权

评论回复
18
susceptibility|  楼主 | 2020-5-17 10:55 | 只看该作者
这样的话其实也可以利用电阻屏来检测接触面积

我的程序

触摸屏引脚                 单片机引脚

X+                             PA1

X-                              PB0

Y+                             PA2

Y-                              PA3

程序就是按照原理来测量的,没用DMA多路AD采集,,因为弄了好长时间发现靠近的两个AD总是受到影响..弄得自己很郁闷

使用特权

评论回复
19
susceptibility|  楼主 | 2020-5-17 10:55 | 只看该作者
期待我同学小于的DMA多路采集AD的程序,,,,,....

使用特权

评论回复
20
susceptibility|  楼主 | 2020-5-17 10:56 | 只看该作者
程序代码链接:

链接:http://pan.baidu.com/s/1gfN2hfd密码:yifn

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

238

帖子

1

粉丝