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.

[参考译文] TCA8418:TCA8418:如何同时使用正常GPIO操作和键盘

Guru**** 2454880 points
Other Parts Discussed in Thread: TCA8418

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/619648/tca8418-tca8418-how-to-use-normal-gpio-operation-and-keypad-simultaneously

部件号:TCA8418

您好,

在“我的项目”中,我使用的是键盘矩阵的TCA8418控制器。 已将键盘控制器作为 从设备连接到处理器(IMX6),我希望同时使用键盘和GPIO。

*这里我使用了5行(R0,R1,R2,R3,R4)和3列(C0,C1,C2)作为键盘用途。

*其余10个GPIO:3个GPIO用于LED控制(O/P)[ R5,R6,R7]

*其他GPIO用作GPIO输入以读取电路板版本ID和类型[C3,C4,C5,C6,C7,C8,C9]

我面临两个问题 ,Plz发现以下问题。

  • 我已将3行配置为O/P,其余GPIO配置为输入(默认为仅输入)。 我不想在这里出现任何GPIO中断... 因此我尚未配置GPIO的中断。
  • 我已禁用10 GPIO的内部上拉。 尽管我禁用了上拉,但它始终只有高电压。如果我在外部下拉,它提供的中间电压为1.1 V
  • 如何读取GPIO输入状态,如果使用GPIO DAT_STATx 寄存器,则表示其始终显示相同的值且未清除。

请尽快解决此问题。

下面是对TCA8418控制器的寄存器转储的开机自检。 请使用reg dump检查配置。

i2cdump -f -y 0 0x34
未指定大小(使用字节数据访问)

    0 1 2 3 4 5 6 7 8 9 a b c  d e f  
00:C4 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00??..........
10:00 00 00 00 3f 7f 03 20 00 00 00 00 00 00 1f 07 00??? ..... ??。
20:00 00 00 e0 00 00 00 00 00 1f 07 00 e0 F8 03 XX ...?..... ?????X

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好Ganesh:
    我不确定如何读取您的寄存器转储? 行“00:”是第一个转储,然后行“10:”是第二次转储寄存器信息吗? 另外,您是否只是转储前16个寄存器? 为什么不是其他寄存器? GPIO _PULL1/2/3位于0x2C,0x2D和0x2E位置,这将有助于查看是否存在潜在的IO配置问题。

    Francis Houde