Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: Port Expander

2005-09-12 by Thiadmer Riemersma (ITB CompuPhase)

--- In lpc2000@yahoogroups.com, "javida13" <javida13@y...> wrote:
> I have found two possible devices:
>   Philips  PCA9555  (16-bits with pull-ups)
>   Microchip MCP23016 (16-bits w/o pull-ups)
>             MCP23008 (8-bits w/o pull-ups)

When designed a product initially using the MCP23016, but we switched
to the PCA9555 late in the design phase (delaying the production with
a month). This decision was taken due to two problems with the
MCP23016, one of which could not be resolved.

1. We have found that the MCP23016 does not follow the I2C protocol
specification precisely; we needed to add a few short delays in our
implementation of the I2C protocol (which should be redundant).

2. We have found that five of the 16 pins, when configured as outputs,
may occasionaly exhibit a "bounce" when switching from low level to
high level, or vice versa. These bounces occur approximately 10 us
after the level change and have a duration for about 80 us. We could
not find a solution for this problem.

Microchip suggested that we use the MCP23017. However, this took more
redesign of the PCB than switching to PCA9555. (This also allowed us
to remove the redundant delays and speed up the I2C protocol.)

A side note: the pull-ups on the PCA9555 are "weak pull-ups".

Thiadmer

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.