GY-63_MS5611/libraries/MCP23017_RT/MCP23x17_registers.h

48 lines
2.6 KiB
C
Raw Normal View History

2024-05-27 04:18:44 -04:00
#pragma once
//
// FILE: MCP23x17_registers.h
// AUTHOR: Rob Tillaart
// PURPOSE: MCP23x17 register file
// URL: https://github.com/RobTillaart/MCP23017_RT
// URL: https://github.com/RobTillaart/MCP23S17
// REGISTERS // description datasheet
#define MCP23x17_DDR_A 0x00 // Data Direction Register A P18
#define MCP23x17_DDR_B 0x01 // Data Direction Register B P18
#define MCP23x17_POL_A 0x02 // Input Polarity A P18
#define MCP23x17_POL_B 0x03 // Input Polarity B P18
#define MCP23x17_GPINTEN_A 0x04 // Interrupt enable P19
#define MCP23x17_GPINTEN_B 0x05 // Interrupt enable P19
#define MCP23x17_DEFVAL_A 0x06 // Interrupt default P19
#define MCP23x17_DEFVAL_B 0x07 // Interrupt default P19
#define MCP23x17_INTCON_A 0x08 // Interrupt control register P20
#define MCP23x17_INTCON_B 0x09 // Interrupt control register P20
#define MCP23x17_IOCR 0x0A // IO control register P20
#define MCP23x17_IOCR2 0x0B // NOT USED
#define MCP23x17_PUR_A 0x0C // Pull Up Resistors A P22
#define MCP23x17_PUR_B 0x0D // Pull Up Resistors A P22
#define MCP23x17_INTF_A 0x0E // Interrupt flag register P22
#define MCP23x17_INTF_B 0x0F // Interrupt flag register P22
#define MCP23x17_INTCAP_A 0x10 // Interrupt capture register P23
#define MCP23x17_INTCAP_B 0x11 // Interrupt capture register P23
#define MCP23x17_GPIO_A 0x12 // General Purpose IO A P23
#define MCP23x17_GPIO_B 0x13 // General Purpose IO B P23
#define MCP23x17_OLAT_A 0x14 // NOT USED output latch P24
#define MCP23x17_OLAT_B 0x15 // NOT USED
// IOCR = IO CONTROL REGISTER bit masks - details datasheet P20
#define MCP23x17_IOCR_BANK 0x80 // Controls how the registers are addressed.
#define MCP23x17_IOCR_MIRROR 0x40 // INT Pins Mirror bit.
#define MCP23x17_IOCR_SEQOP 0x20 // Sequential Operation mode bit.
#define MCP23x17_IOCR_DISSLW 0x10 // Slew Rate control bit for SDA output.
#define MCP23x17_IOCR_HAEN 0x08 // Hardware Address Enable bit (MCP23S17 only).
#define MCP23x17_IOCR_ODR 0x04 // Configures the INT pin as an open-drain output.
#define MCP23x17_IOCR_INTPOL 0x02 // This bit sets the polarity of the INT output pin.
#define MCP23x17_IOCR_NI 0x01 // Not implemented.
// -- END OF FILE --