Arduino библиотека за управление на MCP23017 /
MCP23017 Arduino Library
/kn34pc.com/справочник/...
Microchip
MCP23017 - 16-Bit I/O
Expander with Serial Interface
Features:
- 16-bit remote bidirectional I/O port
- I/O pins default to input
- High-speed I2C interface
- 100 kHz
- 400 kHz
- 1,7 MHz
- Three hardware address pins to allow up to eight devices on the bus
I2C address = (0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27) в зависимост от
лог. ниво на адресните изводи A2, A1, A0
***
Библиотека за управление на MCP23017 под Arduino / MCP23017 Arduino Library:
mcp23017_v0.2.zip
Библиотеката управлява MCP23017 с изводи CAMO! като ИЗХОДИ (засега).
В тестовата схема към I2C шината са свързани (Arduino TWI) вътрешните
pull-up резистори на микроконтролера (20..50 kΩ). При друга конфигурация
(физическа дължина на шината, скорост, брой устройства, паразитен капацитет) при
необходимост да
се монтират външни pull-up резистори (1-10 kΩ) към Vcc.
***
Library constructor:
MCP23017(uint8_t);
стойност: I2C address
***
Публични процедури:
void init();
инициализация на библиотеката
void write_gpa(uint8_t m_data);
запис в GPIOA
m_data = 0x0 ... 0xF
void write_gpb(uint8_t m_data);
запис в GPIOB
m_data = 0x0 ... 0xF
void write_gpab(uint16_t m_data);
запис в GPIOA и GPIOB
m_data = 0x00 ... 0xFF
***
Пример 1: Управление на светодиоди (релета и др.)
mcp23017_led.zip
- два светодиода на изводи GPA0 и GPB0
MCP23017, пример 1 - управление на светодиоди
Забележка: Програмният код (или части от него) е за некомерсиално използване!
Използвани материали:
1. MCP23017, Microchip -
16-Bit I/O Expander with Serial Interface [pdf][916kb]
LZ2WSG, Силистра
2 октомври 2018 година