Innholdsfortegnelse:
- Trinn 1: Kretsdiagram
- Trinn 2: Lag hovedkortet
- Trinn 3: Ekstra brett
- Trinn 4: Programmering
- Trinn 5: Hvilken pin?
- Trinn 6: Konklusjon
Video: NODEMCU LUA ESP8266 Med MCP23017 16 Bit Port Expander IC: 6 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
MCP23017 er en relativt enkel IC å lage et kort for da den har port A og B på hver side av brikken og pinnene er i rekkefølge.
På samme måte er I2C -adressebussen også sammen.
Det er 2 pinner på denne IC som er ubrukt da den kan sammenlignes med MCP23S17 som bruker et SPI -grensesnitt der disse pinnene brukes.
Et datablad for denne IC er tilgjengelig fra Microchip.
Trinn 1: Kretsdiagram
Kretsdiagrammet viser hvordan du kobler IC til en ESP8266
MERK: IC går mellom 2,7 og 5,5 volt.
Fest tilkoblinger på brettet mitt
- 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ødvendig)
- Pin 13 (SDA) til ESP GPIO0
- Pin 12 (SCL) til ESP GPIO2
- Pin 11 (NC) til GND (ikke nødvendig)
- Pin 10 (VSS) til GND
Trinn 2: Lag hovedkortet
Tavlen er rett frem for å lage som forklart ovenfor, alt har en enkel layout.
Hovedtavlen min tok litt tid å lage og er vist ovenfor.
Du kan selvfølgelig bygge denne kretsen på et brødbrett.
Trinn 3: Ekstra brett
Jeg har laget noen ekstra 8 -biters kort som enkelt kan kobles til forskjellige prosjektkort.
Det første kortet er koblet til en 7 -segment LED -skjerm og er koblet pin 1 til segment a, pin 2 til b etc. Det er en liten motstand (ca. 55 ohm) for å beskytte lysdiodene.
Den andre er en 8 bryterbank som alle er koblet sammen og kan kobles til 3,3V eller jord. Jeg har ikke inkludert noen trekkmotstander da MCP23017 har dem innebygd.
Den tredje er fra et Ebay -sett, den består av 8 lysdioder og et motstandsarray med tilkobling til Gnd. Jeg har også det samme kortet, men installerte lysdiodene motsatt vei slik at den kobles til 3,3V eller 5V i stedet for Gnd. På Ebay er de kjent som et 8 -kanals flytende vannlys LED DIY -sett, 99p fra Kina.
Trinn 4: Programmering
Jeg har skrevet programmene for å jobbe med en ESP01, da denne bare har 2 I/O -pinner. Den kan selvfølgelig brukes med alle ESP8266 -kortene. SDA- og SCL -pinnene kan tildeles en hvilken som helst pinne mellom 1 og 12.
Hvis du bruker en eldre versjon av LUA (f.eks. NodeMCU 0.9.6 build 20150704 drevet av Lua 5.1.4) er I2C allerede installert. Ellers må du sørge for at I2C -modulen er inkludert i bygningen din.
Jeg har inkludert 3 enkle Lua -programmer for å vise hvordan IC kan brukes.
7Segment.lua driver et LED -display og sekvenser mellom tallene 1 til 0.
KittCar.lua driver det 8 LED -kortet for å simulere den berømte bilen fra 80 -tallet.
Reader.lua leser fra Port B.
Trinn 5: Hvilken pin?
Et ekstra program jeg kom på mens jeg puslet.
Den bruker port B som inngang og port A som utgang. Bildet viser DIP -brytere, men du kan koble en av port B -pinnene til Gnd, og LED -displayet viser hvilken pinne som er tilkoblet.
MERK: Det fungerer bare med 1 pinne om gangen!
Trinn 6: Konklusjon
Det er selvfølgelig andre I/O -utvidere tilgjengelig. Noen er 8 bit, 16 bit og til og med 24 bit! Alle fungerer på lignende måte som MCP23017, men denne IC -en er veldig billig for sine evner og kan hentes for rundt 10p hver fra Kina.
Jeg har ikke brukt alle funksjonene til denne IC, da det også er avbrudd som kan tas i bruk. Lesing av databladet forteller alt om de forskjellige registre og måter IC kan brukes på.
Det er mulig å ha 8 av disse enhetene på samme I2C -buss som gir 128 I/O -porter alle styrt av 2 linjer. Tenk på mulighetene der!
Anbefalt:
Lag SAMD21-baserte kort USB-port i en maskinvare-seriell port !: 3 trinn
Gjøre SAMD21-baserte kort USB-port til en maskinvare-serieport !: Det er standard i dag å bruke en Arduino (eller annen kompatibel) USB-port som en emulert seriell port. Dette er veldig nyttig for feilsøking, sending og mottak av data fra våre elskelige tavler. Jeg jobbet med uChip da jeg gikk gjennom datashash
NODEMCU Lua ESP8266 med sanntidsklokke (RTC) og EEPROM: 7 trinn
NODEMCU Lua ESP8266 Med sanntidsklokke (RTC) og EEPROM: Det er viktig å få riktig tid hvis du vil beholde en datalogg. Det er forskjellige måter å få tid fra kilder på Internett. Du kan spørre hvorfor ikke bruke ESP8266 til å holde tid for deg? Vel, du kan, den har sin egen interne RTC (sanntid
NODEMCU LUA ESP8266 Kjøring av en M5450B7 LED -skjermdriver IC: 5 trinn (med bilder)
NODEMCU LUA ESP8266 Kjøring av en M5450B7 LED -skjermdriver IC: M5450B7 er en 40 -pins DIP LED -skjermdriver IC. Det ser ganske dyrt ut, men det er relativt enkelt å kontrollere og programmere. Det er 34 utgangspinner som kan ha en LED tilkoblet til hver enkelt. Enheten synker strøm i stedet for å levere den, så c
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: 6 trinn
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: MCP23008 er en 8-bits I/O Expander med serielt grensesnitt og fungerer mellom 1,8 og 5,5 volt, så den er ideell for ESP8266, Arduino, Raspberry Pi, PIC Chips og mer. Hvis du har sett min andre Instructable på MCP23017, lurer du kanskje på
NODEMCU LUA ESP8266 Med CD4017 tiårsteller: 4 trinn (med bilder)
NODEMCU LUA ESP8266 Med CD4017 Decade Counter: CD4017 er en tiårsteller / skillelinje. Dette betyr at når den mottar en puls, teller den den og sender en utgang til den riktige pinnen. Det er en ganske enkel IC å bruke, og du kan enten bygge kretsen på et brødbrett eller kjøpe en fra Ebay for