Innehållsförteckning:
- Steg 1: Kretsdiagram
- Steg 2: Gör huvudkortet
- Steg 3: Ytterligare kort
- Steg 4: Programmering
- Steg 5: Vilken stift?
- Steg 6: Slutsats
Video: NODEMCU LUA ESP8266 Med MCP23017 16 Bit Port Expander IC: 6 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
MCP23017 är en relativt enkel IC att göra ett bräde för eftersom den har port A och B på vardera sidan av chipet och stiften är i ordningsföljd.
På samma sätt är I2C -adressbussen också tillsammans.
Det finns 2 stift på denna IC som är oanvända eftersom det är jämförbart med MCP23S17 som använder ett SPI -gränssnitt där dessa stift används.
Ett datablad för denna IC är tillgängligt från Microchip.
Steg 1: Kretsdiagram
Kretsschemat visar hur man ansluter IC till en ESP8266
OBS: IC körs mellan 2,7 och 5,5 volt.
Pin Anslutningar på mitt kort
- Stift 9 (VDD) till 3v3
- Pin 18 (RESET) till 3v3
- Stift 17 (A2) till GND
- Pin 16 (A1) till GND
- Pin 15 (A0) till GND
- Stift 14 (NC) till GND (Ej nödvändigt)
- Pin 13 (SDA) till ESP GPIO0
- Pin 12 (SCL) till ESP GPIO2
- Stift 11 (NC) till GND (Ej nödvändigt)
- Pin 10 (VSS) till GND
Steg 2: Gör huvudkortet
Styrelsen är rakt fram för att göra som förklarat ovan, allt har en enkel layout.
Min huvudkort tog lite tid att göra och visas ovan.
Du kan naturligtvis bygga denna krets på en brödbräda.
Steg 3: Ytterligare kort
Jag har skapat några extra 8 bitars kort som enkelt kan anslutas till olika projektkort.
Det första kortet är anslutet till en 7 -segment LED -display och är ansluten pin 1 till segment a, pin 2 till b etc. Det finns ett litet motstånd (ca 55 ohm) för att skydda lysdioderna.
Den andra är en 8 switchar bank som alla är ihopkopplade och kan anslutas till 3.3V eller jord. Jag har inte inkluderat några dragmotstånd eftersom MCP23017 har dem inbyggda.
Den tredje är från ett Ebay -kit, den består av 8 lysdioder och en resistor array med en anslutning till Gnd. Jag har också samma kort men installerade lysdioderna tvärtom så att den ansluts till 3.3V eller 5V istället för Gnd. På Ebay är de kända som ett 8 -kanals flödande vattenljus LED DIY -kit, 99p från Kina.
Steg 4: Programmering
Jag har skrivit programmen för att arbeta med en ESP01 eftersom den bara har 2 I/O -stift. Den kan naturligtvis användas med alla ESP8266 -kort. SDA- och SCL -stiften kan tilldelas valfri stift mellan 1 och 12.
Om du använder en äldre version av LUA (t.ex. NodeMCU 0.9.6 build 20150704 som drivs av Lua 5.1.4) är I2C redan installerat. Annars måste du se till att I2C -modulen ingår i din byggnad.
Jag har inkluderat 3 enkla Lua -program för att visa hur IC: n kan användas.
7Segment.lua driver en LED -display och sekvenser mellan siffrorna 1 till 0.
KittCar.lua driver 8 LED -kortet för att simulera den berömda bilen från 80 -talet.
Reader.lua läser från Port B.
Steg 5: Vilken stift?
Ett extra program som jag kom på när jag pysslade.
Den använder port B som ingång och port A som utgång. Bilden visar DIP -switchar, men du kan ansluta en av port B -stiften till Gnd och LED -displayen visar vilken stift som är ansluten.
OBS: Det fungerar bara med 1 stift åt gången!
Steg 6: Slutsats
Det finns naturligtvis andra I/O -utbyggare tillgängliga. Vissa är 8 -bitars, 16 -bitars och till och med 24 -bitars! Alla fungerar på liknande sätt som MCP23017, men denna IC är mycket billig för sin förmåga och kan köpas för cirka 10 p styck från Kina.
Jag har inte använt alla funktioner i denna IC eftersom det också finns avbrott som kan tas i bruk. Att läsa databladet berättar allt om de olika registren och sätten IC kan användas.
Det är möjligt att ha 8 av dessa enheter på samma I2C -buss som ger 128 I/O -portar som alla styrs av 2 linjer. Tänk på möjligheterna där!
Rekommenderad:
Gör SAMD21-baserade kort USB-port till en hårdvaruseriell port !: 3 steg
Göra SAMD21-baserade kort USB-port till en hårdvaruseriell port!: Det är standard idag att använda en Arduino (eller någon annan kompatibel) USB-port på kortet som en emulerad serieport. Detta är mycket användbart för att felsöka, skicka och ta emot data från våra älskvärda kort. Jag arbetade med uChip när jag gick igenom datashash
NODEMCU Lua ESP8266 med realtidsklocka (RTC) och EEPROM: 7 steg
NODEMCU Lua ESP8266 Med Real Time Clock (RTC) & EEPROM: Att få rätt tid är viktigt om du vill föra en datalogg. Det finns olika sätt att få tid från källor på Internet. Du kan fråga varför inte använda ESP8266 för att hålla tid åt dig? Du kan väl, den har sin egen interna RTC (Real Time
NODEMCU LUA ESP8266 Körning av en M5450B7 LED Display Driver IC: 5 steg (med bilder)
NODEMCU LUA ESP8266 Körning av en M5450B7 LED -skärmdrivrutin IC: M5450B7 är en 40 -stifts DIP LED -skärmdrivrutin IC.Det ser snarare ut som ett odjur, men det är relativt enkelt att styra och programmera. Det finns 34 utgångsstiften som kan ha en LED ansluten till var och en. Enheten sjunker ström snarare än levererar den så att
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: 6 steg
NODEMCU LUA ESP8266 Med MCP23008 8 Bit Port Expander IC: MCP23008 är en 8-bitars I/O Expander med seriellt gränssnitt och fungerar mellan 1,8 och 5,5 volt, så är idealisk för ESP8266, Arduino, Raspberry Pi, PIC Chips och mer. Om du har sett min andra Instructable på MCP23017 kanske du undrar
NODEMCU LUA ESP8266 Med CD4017 Decade Counter: 4 steg (med bilder)
NODEMCU LUA ESP8266 Med CD4017 Decade Counter: CD4017 är en decennieräknare / avdelare. Detta betyder att när den får en puls räknar den den och skickar en utgång till den lämpliga stiftet. Det är en ganska enkel IC att använda och du kan antingen bygga kretsen på ett brödbräda eller köpa en från Ebay för