Loading...
Searching...
No Matches

Register definitions for Microchip MCP23x17 I/O expanders. More...

Detailed Description

Register definitions for Microchip MCP23x17 I/O expanders.

Author
Gunar Schorcht gunar.nosp@m.@sch.nosp@m.orcht.nosp@m..net

Definition in file mcp23x17_regs.h.

Go to the source code of this file.

Register addresses (IOCON.BANK = 0)

#define MCP23X17_REG_IODIR   (0x00)
 I/O direction register pair.
 
#define MCP23X17_REG_IODIRA   (0x00)
 I/O direction register port A.
 
#define MCP23X17_REG_IODIRB   (0x01)
 I/O direction register port B.
 
#define MCP23X17_REG_IPOL   (0x02)
 Input polarity port register pair.
 
#define MCP23X17_REG_IPOLA   (0x02)
 Input polarity port register port A.
 
#define MCP23X17_REG_IPOLB   (0x03)
 Input polarity port register port B.
 
#define MCP23X17_REG_GPINTEN   (0x04)
 Interupt-on-change enabled register pair.
 
#define MCP23X17_REG_GPINTENA   (0x04)
 Interupt-on-change enabled register port A.
 
#define MCP23X17_REG_GPINTENB   (0x05)
 Interupt-on-change enabled register port B.
 
#define MCP23X17_REG_DEFVAL   (0x06)
 Default value register pair.
 
#define MCP23X17_REG_DEFVALA   (0x06)
 Default value register port A.
 
#define MCP23X17_REG_DEFVALB   (0x07)
 Default value register port B.
 
#define MCP23X17_REG_INTCON   (0x08)
 Interupt-on-change config register pair.
 
#define MCP23X17_REG_INTCONA   (0x08)
 Interupt-on-change config register port A.
 
#define MCP23X17_REG_INTCONB   (0x09)
 Interupt-on-change config register port B.
 
#define MCP23X17_REG_IOCON   (0x0A)
 I/O expander config register pair.
 
#define MCP23X17_REG_IOCONA   (0x0A)
 I/O expander config register port A.
 
#define MCP23X17_REG_IOCONB   (0x0B)
 I/O expander config register port B.
 
#define MCP23X17_REG_GPPU   (0x0C)
 GPIO pull-up resistor register pair.
 
#define MCP23X17_REG_GPPUA   (0x0C)
 GPIO pull-up resistor register port A.
 
#define MCP23X17_REG_GPPUB   (0x0D)
 GPIO pull-up resistor register port B.
 
#define MCP23X17_REG_INTF   (0x0E)
 Interrupt flag register pair.
 
#define MCP23X17_REG_INTFA   (0x0E)
 Interrupt flag register port A.
 
#define MCP23X17_REG_INTFB   (0x0F)
 Interrupt flag register port B.
 
#define MCP23X17_REG_INTCAP   (0x10)
 Interrupt capture register pair.
 
#define MCP23X17_REG_INTCAPA   (0x10)
 Interrupt capture register port A.
 
#define MCP23X17_REG_INTCAPB   (0x11)
 Interrupt capture register port B.
 
#define MCP23X17_REG_GPIO   (0x12)
 GPIO port register pair.
 
#define MCP23X17_REG_GPIOA   (0x12)
 GPIO port register port A.
 
#define MCP23X17_REG_GPIOB   (0x13)
 GPIO port register port B.
 
#define MCP23X17_REG_OLAT   (0x14)
 Output latch register pair.
 
#define MCP23X17_REG_OLATA   (0x14)
 Output latch register port A.
 
#define MCP23X17_REG_OLATB   (0x15)
 Output latch register port B.
 

Register structure definitions

#define MCP23X17_IOCON_BANK   (0x80)
 Registered separated into different banks.
 
#define MCP23X17_IOCON_MIRROR   (0x40)
 INT pins internally connected.
 
#define MCP23X17_IOCON_SEQOP   (0x20)
 Sequential option disabled.
 
#define MCP23X17_IOCON_DISSLW   (0x10)
 Slew rate control for SDA disabled.
 
#define MCP23X17_IOCON_HAEN   (0x08)
 Hardware address enabled.
 
#define MCP23X17_IOCON_ODR   (0x04)
 Open-drain output (overrides INTPOL)
 
#define MCP23X17_IOCON_INTPOL   (0x02)
 INT signals are active high.
 

Macro Definition Documentation

◆ MCP23X17_IOCON_BANK

#define MCP23X17_IOCON_BANK   (0x80)

Registered separated into different banks.

Definition at line 67 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_DISSLW

#define MCP23X17_IOCON_DISSLW   (0x10)

Slew rate control for SDA disabled.

Definition at line 70 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_HAEN

#define MCP23X17_IOCON_HAEN   (0x08)

Hardware address enabled.

Definition at line 71 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_INTPOL

#define MCP23X17_IOCON_INTPOL   (0x02)

INT signals are active high.

Definition at line 73 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_MIRROR

#define MCP23X17_IOCON_MIRROR   (0x40)

INT pins internally connected.

Definition at line 68 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_ODR

#define MCP23X17_IOCON_ODR   (0x04)

Open-drain output (overrides INTPOL)

Definition at line 72 of file mcp23x17_regs.h.

◆ MCP23X17_IOCON_SEQOP

#define MCP23X17_IOCON_SEQOP   (0x20)

Sequential option disabled.

Definition at line 69 of file mcp23x17_regs.h.

◆ MCP23X17_REG_DEFVAL

#define MCP23X17_REG_DEFVAL   (0x06)

Default value register pair.

Definition at line 36 of file mcp23x17_regs.h.

◆ MCP23X17_REG_DEFVALA

#define MCP23X17_REG_DEFVALA   (0x06)

Default value register port A.

Definition at line 37 of file mcp23x17_regs.h.

◆ MCP23X17_REG_DEFVALB

#define MCP23X17_REG_DEFVALB   (0x07)

Default value register port B.

Definition at line 38 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPINTEN

#define MCP23X17_REG_GPINTEN   (0x04)

Interupt-on-change enabled register pair.

Definition at line 33 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPINTENA

#define MCP23X17_REG_GPINTENA   (0x04)

Interupt-on-change enabled register port A.

Definition at line 34 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPINTENB

#define MCP23X17_REG_GPINTENB   (0x05)

Interupt-on-change enabled register port B.

Definition at line 35 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPIO

#define MCP23X17_REG_GPIO   (0x12)

GPIO port register pair.

Definition at line 54 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPIOA

#define MCP23X17_REG_GPIOA   (0x12)

GPIO port register port A.

Definition at line 55 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPIOB

#define MCP23X17_REG_GPIOB   (0x13)

GPIO port register port B.

Definition at line 56 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPPU

#define MCP23X17_REG_GPPU   (0x0C)

GPIO pull-up resistor register pair.

Definition at line 45 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPPUA

#define MCP23X17_REG_GPPUA   (0x0C)

GPIO pull-up resistor register port A.

Definition at line 46 of file mcp23x17_regs.h.

◆ MCP23X17_REG_GPPUB

#define MCP23X17_REG_GPPUB   (0x0D)

GPIO pull-up resistor register port B.

Definition at line 47 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCAP

#define MCP23X17_REG_INTCAP   (0x10)

Interrupt capture register pair.

Definition at line 51 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCAPA

#define MCP23X17_REG_INTCAPA   (0x10)

Interrupt capture register port A.

Definition at line 52 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCAPB

#define MCP23X17_REG_INTCAPB   (0x11)

Interrupt capture register port B.

Definition at line 53 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCON

#define MCP23X17_REG_INTCON   (0x08)

Interupt-on-change config register pair.

Definition at line 39 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCONA

#define MCP23X17_REG_INTCONA   (0x08)

Interupt-on-change config register port A.

Definition at line 40 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTCONB

#define MCP23X17_REG_INTCONB   (0x09)

Interupt-on-change config register port B.

Definition at line 41 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTF

#define MCP23X17_REG_INTF   (0x0E)

Interrupt flag register pair.

Definition at line 48 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTFA

#define MCP23X17_REG_INTFA   (0x0E)

Interrupt flag register port A.

Definition at line 49 of file mcp23x17_regs.h.

◆ MCP23X17_REG_INTFB

#define MCP23X17_REG_INTFB   (0x0F)

Interrupt flag register port B.

Definition at line 50 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IOCON

#define MCP23X17_REG_IOCON   (0x0A)

I/O expander config register pair.

Definition at line 42 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IOCONA

#define MCP23X17_REG_IOCONA   (0x0A)

I/O expander config register port A.

Definition at line 43 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IOCONB

#define MCP23X17_REG_IOCONB   (0x0B)

I/O expander config register port B.

Definition at line 44 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IODIR

#define MCP23X17_REG_IODIR   (0x00)

I/O direction register pair.

Definition at line 27 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IODIRA

#define MCP23X17_REG_IODIRA   (0x00)

I/O direction register port A.

Definition at line 28 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IODIRB

#define MCP23X17_REG_IODIRB   (0x01)

I/O direction register port B.

Definition at line 29 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IPOL

#define MCP23X17_REG_IPOL   (0x02)

Input polarity port register pair.

Definition at line 30 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IPOLA

#define MCP23X17_REG_IPOLA   (0x02)

Input polarity port register port A.

Definition at line 31 of file mcp23x17_regs.h.

◆ MCP23X17_REG_IPOLB

#define MCP23X17_REG_IPOLB   (0x03)

Input polarity port register port B.

Definition at line 32 of file mcp23x17_regs.h.

◆ MCP23X17_REG_OLAT

#define MCP23X17_REG_OLAT   (0x14)

Output latch register pair.

Definition at line 57 of file mcp23x17_regs.h.

◆ MCP23X17_REG_OLATA

#define MCP23X17_REG_OLATA   (0x14)

Output latch register port A.

Definition at line 58 of file mcp23x17_regs.h.

◆ MCP23X17_REG_OLATB

#define MCP23X17_REG_OLATB   (0x15)

Output latch register port B.

Definition at line 59 of file mcp23x17_regs.h.