注释
所有者
|
我将其添加到路线图中。您所谈论的大多数 I/O 使用中断。我看到有一个中断引脚选项。我得再看看那个。 您对如何将其添加到 cpu_map.h 和 config.h 有什么建议吗? |
作者
|
另一种选择是 Microchip 的这种芯片,它有两条中断线,每个 8 针端口一条。多消耗一个 ESP32 引脚,但提供更多灵活性: 直到现在我还没有看过代码。我的初步印象和想法:
大多数工作似乎是为 GPIO 处理(pinMode 等)创建抽象层并为 IO 扩展器实现 I2C 协议。 |
|
我从未使用过它,但我一直在寻找 I2C IO 扩展器并遇到了这些: Digikey 以 2.55 美元的价格出售它们, Sparkfun 有一个分线板,也有代码。 |
|
便宜的 PCF8575 作为端口扩展器怎么样?那里有很多芯片和模块,就简单性而言,它几乎是黄金标准。 http://www.ti.com/lit/ds/symlink/pcf8575.pdf 此外,端口扩展器可用于释放 I/O 以在 ESP32 上进行额外的步进/方向驱动,诸如停止或主轴速度之类的反馈会进入扩展器。 |
|
最后的人都来到了PLC。这就是为什么我试图用这种模块化设计来解决所有这些 I/O 问题。 |


我建议在卡上添加一个 I2C I/O 扩展器,以提供更大的灵活性并解决使用 SD 卡等时的限制。这里是 TI 的示例。
TCA9555 16 位 I2C I/O 扩展器
这增加了 16 条 I/O 线,仅使用 ESP32 板上的 3 个引脚(SDA、SCL 和中断引脚),这些引脚可承受 5V、ESD 保护并提供漏极开路输出。非常适合限位开关、喷雾、探头、门等。
它只会使 BOM 成本增加约 1.50 美元。