如何扫描超过 100 个数字输入(低电平或高电平)?

How to scan more than 100 digital inputs (low level or high level)?

我有 120 个接受高电平或低电平的数字输入。如果考虑使用IO扩展器,则需要8个IO扩展器(16位)。在这种情况下,我的板子上只有一个 I2C 接口可以连接 8 个 I2C 设备。另一种方法是使用 2 个 IO 扩展器(16 位)来构建两个 8x8 矩阵,如键盘矩阵。但问题是键盘短接了列线和行线,而我的输入只接受高电平或低电平。

对于这个需求有没有更好的硬件设计?任何建议表示赞赏。

为了减少芯片的占用空间和焊接工作量,建议使用具有大量 GPIO 引脚的 I2C GPIO 扩展器。

例如,PCA9505/PCA9506在TSSOP-56封装中提供了40个GPIO。只需要4颗芯片就可以支持128个GPIO,还有32个GPIO备用。

编程只需要处理I2C设备的4个地址

希望对您有所帮助。