在数据表8.6 GPIO,GPIO 2.8 数据状态寄存器GPIO _DAT_STAT1–3 (地址0x14–0x16)中,有"这些寄存器在读取输入和输出时显示GPIO状态。 阅读两次以清除它们"。这是否意味着我无法读取GPIO状态超过两次?现在我在Linux中执行了这些操作。
1.
错误= TCA8418_write_byte (CHIP,REG_KP_GPIO1,0);
错误= TCA8418_write_byte (CHIP,REG_KP_GPIO2.0);
错误= TCA8418_write_byte (CHIP,REG_KP_GPIO3,0);
二.
错误= TCA8418_write_byte (CHIP,REG_GPIO _DIR1,0);
错误= TCA8418_write_byte (CHIP,REG_GPIO,DIR2,0);
错误= TCA8418_write_byte (CHIP,REG_GPIO _DIR3,0);
然后,当我读取reg 'gPIO_DAT_STAT1',时,我总是得到 一个固定的数字,像0xbf,即使 我通过3.3V或具有10k 电阻的GND更改GPIO电平。
所以,任何人都可以告诉我,当我只想在gpiomode中使用TCA8418时,我应该如何初始化它,以及如何获取或设置GPIO值。







