Indholdsfortegnelse:
- Trin 1: Kredsløbsdiagram
- Trin 2: Lav hovedkortet
- Trin 3: Yderligere tavler
- Trin 4: Programmering
- Trin 5: Hvilken pin?
- Trin 6: Konklusion
Video: NODEMCU LUA ESP8266 Med MCP23017 16 Bit Port Expander IC: 6 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
MCP23017 er en relativt let IC til at lave et board til, da den har Port A og B på hver side af chippen, og benene er i rækkefølge.
På samme måde er I2C -adressebussen også alle sammen.
Der er 2 ben på denne IC, som er ubrugte, da den kan sammenlignes med MCP23S17, der bruger en SPI -grænseflade, hvor disse ben bruges.
Et datablad for denne IC er tilgængeligt fra Microchip.
Trin 1: Kredsløbsdiagram
Kredsløbsdiagrammet viser, hvordan IC'en tilsluttes en ESP8266
BEMÆRK: IC kører mellem 2,7 og 5,5 volt.
Fastgør forbindelser på mit bord
- Pin 9 (VDD) til 3v3
- Pin 18 (RESET) til 3v3
- Pin 17 (A2) til GND
- Pin 16 (A1) til GND
- Pin 15 (A0) til GND
- Pin 14 (NC) til GND (ikke nødvendigt)
- Pin 13 (SDA) til ESP GPIO0
- Pin 12 (SCL) til ESP GPIO2
- Pin 11 (NC) til GND (ikke nødvendigt)
- Pin 10 (VSS) til GND
Trin 2: Lav hovedkortet
Tavlen er lige til at lave som forklaret ovenfor, alt er af et enkelt layout.
Min hovedtavle tog lidt tid at lave og er vist ovenfor.
Du kan selvfølgelig bygge dette kredsløb på et brødbræt.
Trin 3: Yderligere tavler
Jeg har lavet nogle ekstra 8 bit boards, der let kan sættes i forskellige projektkort.
Det første kort er tilsluttet et 7 segment LED display og er forbundet pin 1 til segment a, pin 2 til b osv. Der er en lille modstand (ca. 55 ohm) for at beskytte LED'erne.
Den anden er en 8 switch bank, der alle er koblet sammen og kan tilsluttes 3.3V eller jord. Jeg har ikke inkluderet nogen trækmodstande, da MCP23017 har dem indbygget.
Den tredje er fra et Ebay -kit, den består af 8 lysdioder og et modstandsarray med forbindelse til Gnd. Jeg har også det samme kort, men installerede lysdioderne den modsatte vej rundt, så det forbinder til 3,3V eller 5V i stedet for Gnd. På Ebay er de kendt som et 8 Channel Flowing Water Light LED DIY Kit, 99p fra Kina.
Trin 4: Programmering
Jeg har skrevet programmerne til at arbejde med en ESP01, da denne kun har 2 I/O -ben. Det kan naturligvis bruges med alle ESP8266 -plader. SDA- og SCL -benene kan tildeles enhver stift mellem 1 og 12.
Hvis du bruger en ældre version af LUA (f.eks. NodeMCU 0.9.6 build 20150704 drevet af Lua 5.1.4) er I2C allerede installeret. Ellers skal du sikre dig, at I2C -modulet er inkluderet i din build.
Jeg har inkluderet 3 enkle Lua -programmer for at vise, hvordan IC'en kan bruges.
7Segment.lua driver et LED -display og sekvenser mellem tallene 1 til 0.
KittCar.lua driver det 8 LED -kort for at simulere den berømte bil fra 80'erne.
Reader.lua læser fra Port B.
Trin 5: Hvilken pin?
Et ekstra program kom jeg på, mens jeg pjattede.
Den bruger port B som input og port A som output. Billedet viser DIP -switches, men du kan tilslutte en af port B -benene til Gnd, og LED -displayet viser, hvilken pin der er tilsluttet.
BEMÆRK: Det fungerer kun med 1 pin ad gangen!
Trin 6: Konklusion
Der er naturligvis andre I/O -udvidere til rådighed. Nogle er 8 bit, 16 bit og endda 24 bit! Alle fungerer på samme måde som MCP23017, men denne IC er meget billig for sine muligheder og kan hentes for omkring 10 p stykker fra Kina.
Jeg har ikke brugt alle funktionerne i denne IC, da der også er afbrydelser, der kan tages i brug. Læsning af databladet fortæller alt om de forskellige registre og måder, hvorpå IC'en kan bruges.
Det er muligt at have 8 af disse enheder på den samme I2C -bus, der giver 128 I/O -porte alle styret af 2 linjer. Tænk på mulighederne der!
Anbefalede:
Gør SAMD21-baserede plader USB-port til en hardware-seriel port !: 3 trin
Gør SAMD21-baserede plader USB-port til en hardware-seriel port !: Det er i dag standard at bruge en Arduino (eller en hvilken som helst anden kompatibel) USB-port som en emuleret seriel port. Dette er meget nyttigt til fejlfinding, afsendelse og modtagelse af data fra vores elskelige boards. Jeg arbejdede på uChip, da jeg gennemgik datashash
NODEMCU Lua ESP8266 med ur i realtid (RTC) og EEPROM: 7 trin
NODEMCU Lua ESP8266 Med Real Time Clock (RTC) & EEPROM: Det er vigtigt at få den korrekte tid, hvis du vil føre en datalog. Der er forskellige måder at få tiden fra kilder på Internettet. Du kan spørge, hvorfor ikke bruge ESP8266 til at holde tid til dig? Det kan du godt, det har sin egen interne RTC (Real Time
NODEMCU LUA ESP8266 Kørsel af en M5450B7 LED Display Driver IC: 5 trin (med billeder)
NODEMCU LUA ESP8266 Kørsel af en M5450B7 LED -skærmdriver IC: M5450B7 er en 40 Pin DIP LED -skærmdriver IC. Det ser snarere ud som et dyr, men det er relativt let at styre og programmere. Der er 34 output pins, der kan have en LED tilsluttet til hver enkelt. Enheden synker strøm frem for at levere den, så c
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: 6 trin
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: MCP23008 er en 8-bit I/O Expander med Serial Interface og fungerer mellem 1,8 og 5,5 volt, så den er ideel til ESP8266, Arduino, Raspberry Pi, PIC Chips og mere. Hvis du har set min anden Instructable på MCP23017, undrer du dig måske
NODEMCU LUA ESP8266 Med CD4017 Decade Counter: 4 trin (med billeder)
NODEMCU LUA ESP8266 Med CD4017 Decade Counter: CD4017 er en tiårs tæller / divider. Det betyder, at når den modtager en puls, tæller den den og sender en udgang til den relevante pin. Det er en ganske let IC at bruge, og du kan enten bygge kredsløbet på et brødbræt eller købe et fra Ebay til