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.

[参考译文] TCA6418E:TCA6418E 寄存器配置

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/927580/tca6418e-tca6418e-register-configuration

器件型号:

尊敬的团队:

这是我的配置。

GPIO 0 - 5希望用作键盘输入、其外部上拉电阻为10K、当键盘输入被按下时引脚变为低电平、当释放为高电平时、GPIO 6 - 7直接接地。

下面是寄存器设置的顺序

在 Init

 

IO_Write (0x1A、0xFF)// GPIO 0-7 INT enable

 

IO_Write (0x2C、0x00)// GPIO 0-7下拉

 

IO_Write (0x17、0x00)// GPIO 0-7输出全部为低电平

 

IO_Write (0x23、0x00)// GPIO 0-7方向

 

IO_Write (0x29、0x00)// GPIO 0-7去抖

 

当高电平到低电平转换时、IO_Write (0x26、0x03)// GPIO 0-7中断

 

运行期间

 

当接收到 INT 时、检测哪个 GPIO 从高电平变为低电平

 

IO_Write (0x14)//读取两次以清除 INT

  我们也无法获得正确的值、系统有时会在按下键盘后挂起。 您是否从我们的角度看到了问题?  

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

    [引用 user="yaseer Zakaria"]

    器件型号: TCA6418E

    尊敬的团队:

    这是我的配置。

    GPIO 0 - 5希望用作键盘输入、其外部上拉电阻为10K、当键盘输入被按下时引脚变为低电平、当释放为高电平时、GPIO 6 - 7直接接地。

    下面是寄存器设置的顺序

    在 Init

     

    IO_Write (0x1A、0xFF)// GPIO 0-7 INT enable

     

    IO_Write (0x2C、0x00)// GPIO 0-7下拉

     

    IO_Write (0x17、0x00)// GPIO 0-7输出全部为低电平

     

    IO_Write (0x23、0x00)// GPIO 0-7方向

     

    IO_Write (0x29、0x00)// GPIO 0-7去抖

     

    当高电平到低电平转换时、IO_Write (0x26、0x03)// GPIO 0-7中断

     

    [BobbM]我没有发现这方面的任何问题。 有些写入是不必要的、因为它们应该加电/复位到写入的值、但是在复位不良的情况下、最好具有这种功能。

     

    运行期间

     

    当接收到 INT 时、检测哪个 GPIO 从高电平变为低电平

     

    IO_Write (0x14)//读取两次以清除 INT

    [Bobby]我假设不是 IO_Write、而是 IO_Read (0x14)、我假设您执行该操作两次。

    您能否读取寄存器0x11来清除 INT?

      我们也无法获得正确的值、系统有时会在按下键盘后挂起。 您是否从我们的角度看到了问题?  

    [Bobb]当您说系统挂起时、您的意思是什么? (处理器停止检测 INT、因此代码永远不会步进任何位置?)
    这需要多少次按钮按压来干扰/中断系统?
    您能否验证 Vcc 是否未降至 POR 以下?
    复位时是否有合适的上拉电阻器/电容器?
    您是否能够在"系统挂起"后读取寄存器?

    [/报价]

    谢谢、

    -Bobby

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

    尊敬的 Bobby:

    非常感谢、我们一方对0x26寄存器的细微误解、现在已对其进行了分类。

    我们在 VCC=3.3V 上运行芯片、但我们通过10k 从外部上拉1.8V 上的#INT、因为#INT 连接到 FPGA 的1.8V 组。

    目前、我们在 FPGA 上获取中断。 您是否看到任何长期问题或任何失败的机会。

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

    "非常感谢、我们方面对0x26寄存器的理解有点误解、现在已对其进行了分类。"

    很高兴听到您能够解决问题。

    "目前、我们在 FPGA 上获得中断。 您是否会发现任何长期问题或任何失败的机会。"

    没关系、INT 引脚是一个开漏输出、因此它不知道/关心它连接到的是什么、并且不存在任何争用问题。 这意味着您可以通过电阻器连接到1.8V、而无需担心与此相关的故障或生命周期可靠性问题。

    谢谢、

    -Bobby