This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TIC12400-Q1:TIC12400-Q1开关状态读取问题

Guru**** 1568665 points
Other Parts Discussed in Thread: TIC12400-Q1
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1309743/tic12400-q1-tic12400-q1-switch-status-read-issue

器件型号:TIC12400-Q1

Hai 团队、

我们将 MSDI 与微控制器连接。 开关与 MCU 之间的 SPI 通信正在正常运行。 我们将通道0、2、4、6连接为接地。 我们也能够读取 MSDI 器件 ID 寄存器。

它返回为0x20

但我们无法通过在按下开关的同时读取状态寄存器(0x05)来检测开关变化。 但它会在硬件中发生变化。

我们编写了附加的配置。 一旦配置完成、信号电压 增加至4.5V (为什么增加)。 实际上是2.4V、未按下开关。

请找到以下配置。 您能帮我解决任何配置问题吗? 配置之前的电压为:输出按下开关时为2.4V、按下开关时为1.3V。 我们将2V 编程为比较器阈值。


Step1:Enable input channels 0 2 4 6 (Requirement)
Register 1BH

23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
 0  0  0  0  0  0  0  0  0  0  0  0  0  0 0 0 0 1 0 1 0 1 0 1 ---->0x000055




Setp2: Current Source Selection:

Register 1CH

Configure all to source selection [0h]


23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0  ----> 0x000000
 0  0  0  0 0  0   0  0  0  0  0  0  0  0 0 0 0 0 0 0 0 0 0 0




Step3: Wetting Current Configuration

WC_CFG0 Register 1Dh : wetting current Configure to 2mA[2h]


23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x002092
0  0  0  0  0  0  0  0   0  0  1  0  0  0 0 0 1 0 0 1 0 0 1 0 


WC_CFG1 Register 1EH : Wetting current configure to 2mA[2H]



23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0X000000
0  0  0  0  0   0  0  0 0  0  1  0  0  0  0 0 1 0 0 1 0 0 1 0 




Step4: Mode Selection

Mode Register 32h


23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x000000
0  0  0  0   0  0  0  0  0  0  0  0  0  0 0 0 0 0 0 0 0 0 0 0


Step 5: Set Device Configuration

Register Address 1AH
Set trigger to 0 [Stop Device]
VS Ratio to 1 - to support voltage range from 4.5 to 30v
polling enabled
INT_CONFIG - Interrupt Assertion to static
crc disabled
Polling activation time 1024us[bh]
polling time 4ms [1h]



23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x953562
1  0  0  1  0  1  0  1  0  0  1  1  0  1  0 1 0 1 1 0 0 0 1 0




Step 6 : Comparator Thresholds Configuration

THRES_COMP Register 21h:
Set to 3h - threshold voltage to 2V

Digital Inputs 00 02 04 06

23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x000000
0  0  0  0   0  0  0  0  0  0  0  0  0  0 0 0 0 0 0 0 0 0 0 0 


Step 7 :Enable global interrupt on state change

INT_EN_CFG0 Register 24h: Global Interput
SSC_EN TO enable interrupt assertion on Switch State Change 


23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x000004
0  0  0  0  0  0  0  0  0  0  0  0   0  0 0 0 0 0 0 0 0 1 0 0 


Step 8: Interrupts detection configuration
Register is 0x22

Digital Input 00,02,04,06

23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x003333
0  0  0  0  0  0  0  0  0  0  1   1  0 0  1 1 0 0 1 1 0 0 1 1 



Step 9 : Enable Device to Start Operation:

Now all the required settings done, enable trigger for normal operation

CONFIG Register 1Ah:

23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ---> 0x812D62(Requirement)


Step 9 : Monitor status
IN_STAT_COMP

IN_STAT_COMP Register 05h:

Read the contetns of STAT_COMP Register to verify the changes but it is not changing with pressing the switch.


 






































  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samudra:

    感谢您提供详细的寄存器配置信息!  我看到您使用的是轮询模式、该模式将在轮询周期期间启用和禁用湿性电流。  这将对 INx 引脚上的电容进行充电和放电、并可能会产生一些我们需要验证的直流失调电压。

    您能告诉我连接到 INx 引脚的外部元件是什么吗?  只要简单地了解开关、电阻器和电容器以及相应的值即可。  此外、在打开和关闭位置时、开关上的电阻是多少?

    如何测量 INx 引脚上的电压?  您使用的是数字万用表还是示波器?  如果不使用示波器、是否可以使用示波器并共享示波器图?

    您使用的 VS 和 VIO 电压是多少?  

    此致、

    乔纳森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的答复。 您可以查看随附的 pdf 以了解您的问题吗?

    e2e.ti.com/.../Input-to-TI-on-TIC12400_2D00_1.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samudra:

    感谢您提供更多信息。  您的示波器图似乎显示了超过2V 阈值范围的输入电压、但我想知道您为何要使用如此大的电阻值(47k)来构成分压器、以及为何要在每个输入引脚上使用一个100 Ω 的上拉电阻连接至5V?  

    TIC12400-Q1尝试通过连接到 GND 的开关从 INx 引脚获取湿性电流2mA。  如果开关闭合、则会有一条到 GND 的低阻抗路径、INx 引脚将具有低电压。  然而、如果开关断开、它将有一条到 GND 的高阻抗路径、并且 INx 引脚将获得一个通常接近 VS 电源电压的更高电压。  

    具有12V 电源的单个47k 串联电阻器上的电流将仅约250uA、因为47k 电阻器将防止整个2mA 的湿性电流流动。  因此、您的输入电压基于来自5V 和12V 电源的电流的复杂分压器混合。

    这些组件是否是必需的、或者您是否可以尝试调整其值?  我建议移除100 Ω 的5V 上拉电阻器和47k 下拉电阻器。  我还建议将47k 串联电阻器设置为大约100欧姆。  一个常见应用是在 INx 引脚和开关之间使用一个串联电阻器和一个滤波电容器。

    我将尝试使用 EVM 复制您的配置、以查看我是否获得类似的结果、并识别任何不正确的配置寄存器设置。

    此致、

    乔纳森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    海先生

    好的,先生。 非常感谢您提供的建议值。 我们将在这里更改和测试它。 同时、您可以通过两种方式  

    非常重要。

    此致、

    Samudralankaiah。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samudralankaiah:

    我按照提供的顺序直接将提供的寄存器值复制并粘贴到 EVM 中、然后可以看到输入在2V 比较器阈值附近转换。  这是我切换全部4个开关的瞬间的屏幕截图。

    IN_STAT 寄存器(0x02)的 SSC 位以及 IN_STAT_COMP 寄存器(0x05)的位0、2、4和6也已设置、以反映4个开关上的状态变化。  

    打开开关会导致输入状态切换回高电平。

    您的寄存器配置似乎正确。  如果您在对 INx 引脚上的电阻器进行一些调整后、结果有任何变化、请告诉我。

    您使用的是定制电路板还是 TC12400-Q1 EVM?  (链接)

    此致、

    乔纳森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    非常感谢。 根据您的建议更改电阻器后、它可以正常工作。 状态寄存器值根据数字开关状态发生变化。 开关中断也会生成一个中断。 中断信号为低电平。 但在释放开关后、它不会变为高电平状态。 是否需要进行任何寄存器配置?

    此致、

    萨穆德拉

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samudra:

    通过读取 INT_STAT 寄存器来清除中断位。  您是否在读取此寄存器?

    如果仅监控 INT 引脚电压、它将在设置任何启用的中断位时转换为低电平、并在读取 INT_STAT 寄存器之前保持低电平。  读取 INT_STAT 后、INT 引脚将再次变为高电平。

    此致、

    乔纳森

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    非常感谢您。 我明天会尝试。 让您了解一下。  

    此致、

    萨穆德拉

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    非常感谢您。 该中断是在按下开关后产生的。 它在清除中断寄存器后再次变为高电平。

    非常感谢先生。

    此致、

    Samudralankaiah。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samudra:

    不用客气。  如果您有任何其他问题、请告诉我们。

    此致、

    乔纳森