In die artikel sal ons 'n 1602-vloeibaarkristalskerm met 'n FC-113 I2C-module aan Arduino koppel, waardeur die verbinding slegs met twee datadrade en twee kragdrade gedoen sal word.
Dit is nodig
- - Arduino;
- - LCD 1602-skerm (16 karakters, 2 reëls);
- - I2C-adapter FC-113;
- - verbindingsdrade.
Instruksies
Stap 1
Die FC-113-module is gebaseer op die PCF8574T-mikrokring, wat 'n 8-bis-skuifregister is - I / O-uitbreider vir die I2C-seriële bus. In die figuur word die mikrokring aangedui as DD1.
R1 is 'n snyweerstand om die kontras van die LCD aan te pas.
Jumper J1 word gebruik om die verligting van die skerm aan te skakel.
Pen 1… 16 word gebruik om die module aan te sluit op die LCD-skermpennetjies.
Kontakblokkies A1 … A3 is nodig om die adres van die I2C-toestel te verander. Deur die ooreenstemmende springers te soldeer, kan u die toesteladres verander. Die tabel toon die korrespondensie van adresse en springers: "0" stem ooreen met die oop stroombaan, "1" - met die geïnstalleerde springer. Die toesteladres is standaard 0x27, d.w.s. al 3 springers is oop.
Stap 2
Die module is standaard aan die I2C-bus aan die Arduino gekoppel: die SDA-pen van die module is gekoppel aan die analoge poort A4, die SCL-pen is gekoppel aan die analoge poort A5 van die Arduino. Die module word aangedryf deur + 5V van die Arduino. Die module self word deur pen 1 … 16 met die ooreenstemmende pen 1 … 16 op die LCD-skerm verbind.
Stap 3
Nou het ons 'n biblioteek nodig om met LCD's te werk via die I2C-koppelvlak. U kan byvoorbeeld hierdie een gebruik: https://www.dfrobot.com/wiki/index.php?title=I2C/TWI_LCD1602_Module_(SKU:_DFR0063)#Sample_Code (skakel in die reël "Download voorbeeldkode en biblioteek").
Die afgelaaide argief "LiquidCrystal_I2Cv1-1.rar" word uitgepak na die map "\ biblioteke", wat in die Arduino IDE-gids geleë is.
Die biblioteek ondersteun 'n stel standaardfunksies vir LCD-skerms:
LiquidCrystal () - skep 'n veranderlike van die tipe LiquidCrystal en aanvaar vertoonverbindingsparameters (pinnommers), begin () - initialisering van die LCD-skerm, instelling van parameters (aantal lyne en simbole);
skoonmaak () - maak die skerm skoon en plaas die wyser terug na die beginposisie;
huis () - plaas die wyser terug na die beginposisie;
setCursor () - stel die wyser op die gespesifiseerde posisie;
skryf () - vertoon 'n karakter op die LCD-skerm;
druk () - vertoon teks op die LCD-skerm;
wyser () - wys die wyser, d.w.s. onderstreep onder die plek van die volgende karakter;
noCursor () - verberg die wyser;
knip () - wyser knipper;
noBlink () - kanselleer om te knip;
noDisplay () - skakel die skerm uit terwyl u alle inligting vertoon;
vertoon () - skakel die skerm aan terwyl alle inligting wat vertoon word gestoor word;
scrollDisplayLeft () - skuif die vertooninhoud 1 posisie na links;
scrollDisplayRight () - skuif die inhoud van die vertoning 1 posisie na regs;
outoscroll () - aktiveer outoscroll;
noAutoscroll () - skakel outoscroll uit;
leftToRight () - stel die rigting van die teks van links na regs;
rightToLeft () - teksrigting van regs na links;
createChar () - Skep 'n persoonlike karakter vir die LCD-skerm.
Stap 4
Laat ons die voorbeeld oopmaak: File -> Monsters -> LiquidCrystal_I2C -> CustomChars en doen dit weer 'n bietjie. Laat ons 'n boodskap vertoon, waaraan 'n knipperende simbool sal verskyn. Al die nuanses van die skets word in die kommentaar by die kode opgemerk.
Stap 5
Laat ons die kwessie van die skep van u eie simbole vir LCD-skerms van naderby beskou. Elke karakter op die skerm bestaan uit 35 punte: 5 breed en 7 hoog (+1 gereserveerde onderstreep). In reël 6 van die skets hierbo stel ons 'n skikking van 7 getalle: {0x0, 0xa, 0x1f, 0x1f, 0xe, 0x4, 0x0}. Kom ons skakel heksgetalle om na binêre: {00000, 01010, 11111, 11111, 01110, 00100, 00000}. Hierdie getalle is niks anders as bitmasker vir elk van die 7 reëls van die karakter nie, waar "0" 'n ligpunt aandui en "1" 'n donker punt. Byvoorbeeld, 'n hartsimbool wat as 'n bietjie masker gespesifiseer is, sal op die skerm verskyn soos in die figuur getoon.
Stap 6
Laai die skets op na Arduino. Op die skerm verskyn die inskripsie wat ons gespesifiseer het met 'n knipperende wyser aan die einde.