Obsah:

NODEMCU LUA ESP8266 s 16 bitovým portovým expandérom MCP23017 IC: 6 krokov (s obrázkami)
NODEMCU LUA ESP8266 s 16 bitovým portovým expandérom MCP23017 IC: 6 krokov (s obrázkami)

Video: NODEMCU LUA ESP8266 s 16 bitovým portovým expandérom MCP23017 IC: 6 krokov (s obrázkami)

Video: NODEMCU LUA ESP8266 s 16 bitovým portovým expandérom MCP23017 IC: 6 krokov (s obrázkami)
Video: NodeMCU V3 ESP8266 - обзор, подключение и прошивка в Arduino IDE 2024, Júl
Anonim
NODEMCU LUA ESP8266 s integrovaným expandérom 16 bitových portov MCP23017
NODEMCU LUA ESP8266 s integrovaným expandérom 16 bitových portov MCP23017

MCP23017 je relatívne jednoduchý obvod na výrobu dosky, pretože má port A a B na oboch stranách čipu a kolíky sú v poradí.

Podobne je aj zbernica adries I2C spolu.

Na tomto IC sú 2 piny, ktoré sú nepoužívané, pretože sú porovnateľné s MCP23S17, ktorý používa rozhranie SPI, kde sa tieto piny používajú.

Dátový list tohto IC je k dispozícii od spoločnosti Microchip.

Krok 1: Schéma zapojenia

Schéma zapojenia
Schéma zapojenia

Schéma zapojenia ukazuje, ako pripojiť IC k ESP8266

POZNÁMKA: Integrovaný obvod pracuje medzi 2,7 a 5,5 voltov.

Pripojenia pinov na mojej doske

  • Kolík 9 (VDD) na 3v3
  • Kolík 18 (RESET) na 3v3
  • Kolík 17 (A2) na GND
  • Kolík 16 (A1) na GND
  • Kolík 15 (A0) na GND
  • Kolík 14 (NC) na GND (nie je potrebné)
  • Pin 13 (SDA) na ESP GPIO0
  • Pin 12 (SCL) na ESP GPIO2
  • Kolík 11 (NC) na GND (nie je potrebné)
  • Kolík 10 (VSS) na GND

Krok 2: Výroba základnej dosky

Výroba základnej dosky
Výroba základnej dosky

Doska je vyrobená tak, ako je vysvetlené vyššie, všetko má jednoduché rozloženie.

Výroba mojej základnej dosky zabrala málo času a je zobrazená vyššie.

Tento obvod môžete samozrejme postaviť na doske.

Krok 3: Ďalšie dosky

Ďalšie dosky
Ďalšie dosky

Vytvoril som niekoľko ďalších 8 bitových dosiek, ktoré je možné ľahko zapojiť do rôznych projektových dosiek.

Prvá doska je pripojená k 7 -segmentovému LED displeju a je zapojená na kolíky 1 na segment a, piny 2 až b atď. Na ochranu diód LED je malý odpor (asi 55 ohmov).

Druhým z nich je 8 prepínacích bánk, ktoré sú zapojené dohromady a môžu byť pripojené k 3,3 V alebo k zemi. Neuviedol som žiadne ťahové odpory, pretože MCP23017 má v sebe zabudované.

Tretí je zo súpravy Ebay, pozostáva z 8 LED diód a poľa rezistorov s pripojením na Gnd. Mám tiež rovnakú dosku, ale LED diódy som nainštaloval opačne, takže sa namiesto Gnd pripája na 3,3 V alebo 5 V. Na Ebay sú známi ako 8 -kanálová súprava LED diódy pre svetlo tečúcej vody, 99p z Číny.

Krok 4: Programovanie

Programovanie
Programovanie

Napísal som programy tak, aby pracovali s ESP01, pretože tento má iba 2 I/O piny. Je možné ho samozrejme použiť s ktoroukoľvek z dosiek ESP8266. Kolíky SDA a SCL je možné priradiť ľubovoľnému kolíku od 1 do 12.

Ak používate staršiu verziu LUA (napr. NodeMCU 0.9.6 build 20150704 od Lua 5.1.4), I2C je už nainštalovaný. V opačnom prípade musíte zaistiť, aby bol modul I2C súčasťou vašej zostavy.

Zahrnul som 3 jednoduché programy Lua, aby som ukázal, ako sa dá IC použiť.

7Segment.lua poháňa LED displej a sekvencie medzi číslami 1 až 0.

KittCar.lua poháňa 8 LED diód, aby simulovali slávne auto z 80. rokov.

Reader.lua číta z portu B.

Krok 5: Ktorý pin?

Ktorý pin?
Ktorý pin?

Extra program, ktorý som vymyslel pri drotárstve.

Port B používa ako vstup a port A ako výstup. Na fotografii sú prepínače DIP, ale môžete pripojiť jeden z pinov portu B na GND a LED displej ukáže, ktorý pin je pripojený.

POZNÁMKA: Súčasne funguje iba s 1 kolíkom!

Krok 6: Záver

Záver
Záver

K dispozícii sú samozrejme aj ďalšie expandéry I/O. Niektoré sú 8 -bitové, 16 -bitové a dokonca 24 -bitové! Všetky fungujú podobným spôsobom ako MCP23017, ale tento integrovaný obvod je pre svoje schopnosti veľmi lacný a dá sa získať z Číny asi za 10 p.

Nepoužil som všetky funkcie tohto IC, pretože sú k dispozícii aj prerušenia, ktoré je možné použiť. Čítanie údajového listu hovorí o rôznych registroch a spôsoboch, akými je možné IC použiť.

Je možné mať 8 z týchto zariadení na tej istej zbernici I2C, ktoré poskytujú 128 I/O portov, všetky ovládané 2 riadkami. Zamyslite sa nad možnosťami, ktoré tam sú!

Odporúča: