Skip to content

Support for MCP23016 #30

@Flameeyes

Description

@Flameeyes

The MCP23016 is another member of the MCP230xx family, and a predecessor of the MCP23017 that is already supported.

The main differences between the '16 and the '17 (from the CircuiPython point of view), from what I can tell are:

  • '16 has no pull up resistor configuration (afaict it's always in pull-up mode);
  • '16 doesn't allow atomic operations on the whole 16 I/O lines, instead they are accessed as two 8-bit groups (the same is true for polarity configuration and interrupt config).

Otherwise it's pretty much business as usual from the software side. It's a bit more complicated on the hardware side, which I guess is why they don't recommend it for new hardware projects.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions