关于Capsense模拟开关的问题

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Fayne_Meng
Level 4
Level 4
Distributor - Weikeng(GC)
100 sign-ins First like received 10 likes given

Hi,

   是否有关于触摸按键 Analog Multiplexer 部分的相关描述资料可以提供?

我这边调用了CapSense_GetSensorCapacitance(6,0,&p);获取按键6的电容值,需要查看模拟开关是否切换到了我要检测的那个通道,是否有相关的函数可以获取模拟开关的切换情况?capsense底层有没有模拟开关的配置函数,谢谢。

Regards

Fayne

1 解答
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

我们假设你的应用中有多个按键,触摸按键逐个进行扫描时,每扫描完一个按键,都会产生一个中断,然后再中断函数中吧当前按键从 AMUX 上断开,并且初始化下一个要扫描的按键(初始化包括吧按键连接到 AMUX这样的操作)。

至于如何保证通道切换是正确的,这个问题我不知道该如何回答,因为按键的扫描顺序是在代码中规定好了的,由代码逻辑的正确执行来保证通道的切换正确。 

 

b6095d0e-dfcb-48a8-b0f1-0b49aba501ae.PNG

如果客户一定要用独立的监控代码获取当前按键与AMUX 的连接状态,可以从 analog routing 界面入手。如下就是基于 PSOC4000 芯片的一个5按键设计工程。你可以看到 AMUXA 通过模拟 switch 与5个触摸按键引脚连接,当吧光标移动到某个switch 上,就会显示当前 switch 对应的控制寄存器名称,地址, mask 位等。通过读取这个寄存器的信息就可以知道switch 的 open/close 状态。

111.JPG

在原帖中查看解决方案

0 点赞
5 回复数
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

你不需要关心底层 AMUX 的动作吧,你想要按键6的电容值,直接使能 BIST 调用 API 获取就好了呀,没有什么特殊的用法。 而且你也不用担心 CapSense 和其他模拟外设抢占 AMUX 资源,只要你的工程编译没有问题,就证明不存在 AMUX 资源冲突。

0 点赞
Fayne_Meng
Level 4
Level 4
Distributor - Weikeng(GC)
100 sign-ins First like received 10 likes given

Hi Vison,

     是做产品认证,他们要知道PSOC如何保证通道切换是正确的。所以想问一下有没有相关的获取AMUX的状态的函数?

Fayne

0 点赞
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

我们假设你的应用中有多个按键,触摸按键逐个进行扫描时,每扫描完一个按键,都会产生一个中断,然后再中断函数中吧当前按键从 AMUX 上断开,并且初始化下一个要扫描的按键(初始化包括吧按键连接到 AMUX这样的操作)。

至于如何保证通道切换是正确的,这个问题我不知道该如何回答,因为按键的扫描顺序是在代码中规定好了的,由代码逻辑的正确执行来保证通道的切换正确。 

 

b6095d0e-dfcb-48a8-b0f1-0b49aba501ae.PNG

如果客户一定要用独立的监控代码获取当前按键与AMUX 的连接状态,可以从 analog routing 界面入手。如下就是基于 PSOC4000 芯片的一个5按键设计工程。你可以看到 AMUXA 通过模拟 switch 与5个触摸按键引脚连接,当吧光标移动到某个switch 上,就会显示当前 switch 对应的控制寄存器名称,地址, mask 位等。通过读取这个寄存器的信息就可以知道switch 的 open/close 状态。

111.JPG

0 点赞
Fayne_Meng
Level 4
Level 4
Distributor - Weikeng(GC)
100 sign-ins First like received 10 likes given

Hi Vison,

     明白了,感谢您的解答,谢谢。

Fayne

0 点赞
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

CapSense AMUX的切换这一块从来没出过问题,这是最底层最基本的逻辑了,只要 CPU逻辑运行是对的,是不会出问题的。

0 点赞