- Potřebný materiál:
- Registr směn:
- Rozhraní LCD s ESP12 bez použití posuvného registru:
- KÓD:
- Rozhraní LCD s ESP12 pomocí posuvného registru SN74HC595N:
- KÓD:
V tomto tutoriálu uvidíme, jak propojit NodeMCU s 16x2 LCD bez použití komunikace I2C. Zde budeme propojovat 16x2 LCD pomocí posuvného registru SN74HC595. Můžeme jej také propojit, i když nepoužíváme žádný posuvný registr. V tomto tutoriálu uvidíme oba druhy rozhraní. Hlavním rozdílem mezi oběma rozhraními je počet pinů použitých v NodeMCU.
Potřebný materiál:
- NodeMCU ESP12E
- SN74HC595 Shift Register IC
- 16x2 LCD modul
- Potenciometry
- Dráty muž-žena
- Nepájivá deska
Registr směn:
V digitálních systémech je posuvný registr kombinací klopných obvodů, které jsou kaskádovitě zapojeny do série a sdílejí stejné hodiny. V tomto kaskádovém balíčku fungují data jednoho flip-flopu jako data pro další flip-flop, což má za následek obvod, který posune o jednu pozici bitové pole v něm uložené.
IC, které použijeme, je SN74HC595N. Jedná se o jednoduchý 8bitový seriál paralelně s posuvným registrem IC. Jednoduše řečeno, tento IC umožňuje přidání dalších vstupů nebo výstupů do mikrokontroléru převodem dat mezi paralelními a sériovými formáty. Náš mikrokontrolér používá 3 piny tohoto IC k sériovému odesílání dat. Ve skutečnosti bude 8bitový výstup přicházet na 8 pinech po získání 8bitových informací ze vstupních pinů. Další informace o posuvných registrech se dozvíte zde.
Schéma PIN a funkce PIN IC SN74HC595N jsou uvedeny níže:
Zde najdete rozhraní 74HC595N s Arduino a Raspberry pi.
Rozhraní LCD s ESP12 bez použití posuvného registru:
Pokud jste použili 16x2 LCD s deskou Arduino, bude to velmi snadné. Musíte pouze připojit piny v NodeMCU stejně, jako jste to udělali s deskou Arduino.
V NodeMCU je 16 pinů GPIO a potřebujeme 6 pinů a gnd, vcc. Připojte piny podle níže uvedeného schématu zapojení:
Použijeme 4 datové piny a RS, EN na LCD, které jsou připojeny jako:
d7 pin LCD == D8 pin NodeMCU
d6 pin LCD == D7 pin NodeMCU
d5 pin LCD == D6 pin NodeMCU
d4 pin LCD == D5 pin NodeMCU
RS pin LCD == D2 pin NodeMCU
En pin LCD == D3 pin NodeMCU
Pro tato připojení můžete použít jakýkoli GPIO.
Nyní nahrajte kód pomocí Arduino IDE, jak bylo vysvětleno výše. Kód je stejný jako u desky Arduino, kterou najdete v příkladu Liquidcrystal. Program je jednoduchý a snadno srozumitelný, pokud se chcete o programu dozvědět více, podívejte se na naše LCD rozhraní s Arduino programem.
KÓD:
#zahrnout
Jak jsme viděli, už jsme použili 6 pinů NodeMCU. Pro tuto malou desku je již k dispozici méně kolíků a zbývá nám několik kolíků pro propojení dalších senzorů.
Abychom tento problém překonali, použijeme posuvný registr IC, který minimalizuje ne. pinů použitých na NodeMCU.
Rozhraní LCD s ESP12 pomocí posuvného registru SN74HC595N:
V posuvném registru IC je k dispozici 8 výstupních a 3 vstupní piny. Pro připojení s LCD použijeme 6 výstupních pinů a 3 vstupní piny pro NodeMCU.
Připojení LCD s IC jsou uvedena jako:
D7 pin LCD == pin 1 IC
D6 pin LCD == pin 2 IC
D5 pin LCD == pin 3 IC
D4 pin LCD == pin 4 IC
RS pin LCD == pin 7 IC
En pin LCD == pin 15 IC
Propojení NodeMCU s IC:
D6 pin NodeMCU == pin 14 IC, DATA PIN IC
Pin D7 NodeMCU == pin 12 IC, LATCH PIN IC
Pin D8 NodeMCU == pin 11 IC, CLOCK PIN IC
Připojte PIN 16 a PIN 10 IC k Vcc.
Připojte PIN 8 a PIN 13 IC k GND.
Proveďte obvod opatrně podle níže uvedeného schématu:
Nyní je náš hardware připraven k programování.
Nyní potřebujeme knihovnu „ LiquidCrystal595 “, kterou si můžete stáhnout z tohoto odkazu https://github.com/tehniq3/LiquidCrystal595 podle následujících kroků:
1. Přejít na nabídku Skica Arduino IDE.
2. Klikněte na Zahrnout knihovnu .
3. Nyní klikněte na Přidat knihovnu.zip. Vyberte soubor zip, který jste stáhli z daného odkazu a je hotový.
Nyní nahrajte níže uvedený kód a uvidíte zprávu tisknoucí LCD.
KÓD:
#zahrnout
Kód je jednoduchý, protože jako argument v LiquidCrystal595 lcd () musíme dát pouze datový kolík, západkový kolík a hodinový kolík ; a zbytek kódu je stejný, jako jsme to udělali dříve.
Tímto způsobem jste právě uložili 3 piny NodeMCU pomocí Shift Register.
Zkontrolujte také propojení 16x2 LCD s jinými mikrokontroléry:
- Rozhraní LCD s mikrokontrolérem PIC
- 16x2 LCD rozhraní s Raspberry Pi pomocí Pythonu
- Propojení LCD s mikrokontrolérem ATmega32
- Rozhraní LCD s mikrokontrolérem 8051