kategorier: Microcontroller kredsløb
Antal visninger: 24878
Kommentarer til artiklen: 0
Hvad er skærmene til Arduino, og hvordan man forbinder dem
Mikrokontrollere giver dig mulighed for at foretage ethvert automatiserings- og overvågningssystem. Men for interaktion mellem teknologi og menneske har vi brug for begge indgangsenheder - forskellige knapper, håndtag, potentiometre og outputenheder - lysindikatorer (pærer), forskellige lydsignalanordninger (tweeters) og til sidst skærme. I denne artikel skal vi se på tegnvisninger til Arduino, hvordan man forbinder dem og får dem til at fungere.

Typer af skærme
Skærme kan opdeles i:
-
Segment (f.eks. På et digitalt ur);
-
alfanumerisk;
-
Grafik.
Segmenteret bruges til at indikere enkle mængder, for eksempel: temperatur, tid, antal omdrejninger. Sådan bruges i lommeregnere og på husholdningsapparater, der budgetterer i dag. Information vises ved at fremhæve bestemte tegn.
De kan være både flydende krystal og LED. Alfanumeriske skærme findes på gamle husholdningsapparater, legetøj, industrielt udstyr og mere. De kaldes også for tegn-syntese, tekstmæssigt, symbolsk. Består af et sæt store pixels. Kan udføres på LCD-, TFT- og OLED-teknologi.
Grafiske skærme kan endda omfatte en skærm eller en smartphone-skærm. Jeg tror ikke, at der kræves nogen specielle forklaringer. Artiklen fokuserer specifikt på samarbejde mellem tegn-syntese eller symbolsk skærm og Arduino.
Sign-syntese-skærme
Skærme af denne art kan samtidig vise et vist antal tegn, begrænset af geometriske dimensioner. De er markeret i henhold til dette mønster:
-
1602;
-
2002.
Hvor de to første cifre er antallet af tegn på linjen, og det andet par er antallet af linjer. Således kan et display kaldet 1602 vise 2 linjer på 16 tegn ad gangen.
Skærme er kendetegnet ved typen af datainput:
-
Med parallel indtastning af data;
-
Med datainput via I2C-protokol.
Parallel dataindgang involverer overførsel af henholdsvis 8 eller 4-bit ord på henholdsvis 10 eller 6 stifter (fig. Nedenfor - forbindelsesdiagram til styring af 4 bit). Foruden data leveres der strøm til displayet. Overvej dette, når du designer, ellers har du muligvis ikke nok stifter Arduino bestyrelser.

Overførsel af data til displayet ved hjælp af I2C tager 4 stifter af din Arduino, hvoraf 2 er strøm, og 2 er data. Men overvej dette spørgsmål mere detaljeret nedenfor.
Blandt indenlandske producenter kan adskille virksomheden MELT. Blandt de produkter, der har en række forskellige skærme. Nedenfor er for eksempel et display mærket 20S4, der ligner det foregående, det fortæller os, at det viser 4 linjer med 20 tegn.

Det er bygget på controlleren KB1013VG6 fra JSC ANGSTREM, der ligner HD44780 fra HITACHI og KS0066 fra SAMSUNG. Hvorpå langt de fleste kinesiske skærme er bygget. For øvrig understøtter han ligesom skærme på ovenstående chips standard Arduino IDE parallelle kontrolbibliotek, men mere om det senere.

Skilt-syntetiserende skærme leveres med og uden baggrundsbelysning og kan også variere i farven på de viste tegn. Baggrundslysets lysstyrke og billedkontrast er normalt justerbare. Nedenfor er et eksempel på et skema fra et datablad til MELT nævnt ovenfor.

Variabel modstand R og tjener til at justere lysstyrken.
tilslutning
Vi vil overveje forbindelsen på en skærm af type 1602. Vær først og fremmest opmærksom på undertegnelsen af konklusionerne. Der er to muligheder, nummerering. I de to figurer nedenfor er alt i orden - fra 1 til 16 af output.


Bemærk, at VSS forstås som land. Ellers er pin-tildelingerne identiske. Men ofte kan du finde ikke-standard nummerering:

Hvad ser du? Kontakter er kun underskrevet 1, 14 og 15. Desuden i den forkerte rækkefølge. Ellers forblev de 15. og 16. kontakter også anoden og katoden i baggrundsbelysningen, og 1 og 2 er den almindelige kontakt og plus-strøm.Vær forsigtig og vær opmærksom på dette, når du tilslutter!
Lad os analysere mere detaljeret.
-
1 - (Vss) jord eller “-” strøm.
-
2 - (Vcc) "+" strøm. Oftest er det 5 volt.
-
3 - justerer kontrasten for tegn. Det udføres via et potentiometer installeret mellem "+" strømmen og denne kontakt. Jo højere spænding, desto lavere er lysstyrke og strømforbrug.
-
4 - (RS) Adressesignal. Ved tilstedeværelsen af et signal fra arduino ved denne indgang forstår skærmstyringen, om kommandosignalet (f.eks. Flytter markøren) eller den tegnkode, der skal vises på datalinjen.
-
5 - (E) tilladelser til at få adgang til data. Når der er en logisk "1", udfører displayet en kommando eller viser et symbol.
-
6-14 - gennem disse stifter tilvejebringes parallel dataindtastning.
-
15 - (BLA) baggrundsbelysningsanode. Så det lyser op i fuld lysstyrke - + 5V leveres her.
-
16 - (BLC) baggrundsbelysningskatode. Opret forbindelse til jorden.
Et af eksemplerne på forbindelse til Arduino i 4-bit mode blev diskuteret ovenfor. Se nu på ledningsdiagrammet i 8 bit kontroltilstand. For øvrig kan du bemærke en variabel modstand. Det er nødvendigt at justere lysstyrken i baggrundsbelysningen, som nævnt tidligere.

På denne måde har du halvdelen af indgangene besat Arduino UNO-bestyrelser. Hvis du bruger MEGA, vil dette selvfølgelig ikke være et så stort problem, men det er stadig ikke rationelt, især hvis du vil tilslutte en gruppe sensorer og kontroltaster.
For at frigøre inputene skal du bruge I2C-konverteren til LCD-skærmen (det hedder det, og du kan finde den i butikker under dette navn).

Advarsel:
Hvis du vil købe dette modul separat fra displayet, skal du ikke glemme placeringen og nummereringen af konklusionerne, som vi undersøgte tidligere.
Kammen, der vises i bunden, er simpelthen loddet til displayet, og de fire stifter i enden af brættet forbinder til Arduino-stifterne, der er også en tredje gruppe af to stifter (afbildet i ryggen), der tænder for baggrundsbelysningen, modellerne kommer med en jumper installeret.
Skemaet for et sådant modul er som følger:
Og så ser den loddet ud direkte på skærmstifterne. De fleste modeller sælges allerede loddet.

For at bruge det skal du dog finde LiquidCrystal_I2C-biblioteket på netværket, det er ikke i standardsættet for det aktuelle Arduino IDE på dette tidspunkt.
Husk udskæringen af Arduino UNO-plader, i henhold til pin-nummereringen, det dybest set falder sammen med Nano og nogle andre (klik på billedet for at forstørre).
For at arbejde på I2C skal du generere 2 informationssignaler - SDA og SCL, vær opmærksom på figurens nederste højre hjørne. Disse Arduino-stifter er kombineret med A4 og A5 analoge indgange.
Det er vigtigt at:
Du kan ikke tildele dem til andre konklusioner.
Derefter vil ledningsdiagrammet se ud:

Enig, der er langt færre ledninger! Fra arduino til displayet er der kun 4 ledninger. En signalnål bruges kun to!
Men bare det at forbinde dig ikke lykkes, skal du kende enhedens adresse, for dette er der en anden gruppe af kontakter, hvor adressen er indstillet ved hjælp af jumpere. Dette er angivet i initialiseringskommandoen for det tilsvarende bibliotek, mere om det nedenfor.

Programmet
Naturligvis har vi brug for en slags skitse, der kan vise billedet på en tegnskærm. Hvis du vil arbejde direkte med displayet, bliver du nødt til at studere datablad og symboltabeller for hvert specifikt produkt. Men Arduino blev skabt til enkel og hurtig prototype af elektroniske enheder. Derfor vil vi gå den anden vej og drage fordel af fordelene ved civilisationen. Vi har allerede nævnt, at standardsættet med biblioteker i Arduino IDE har en færdiglavet løsning til at arbejde med LCD-skærme. Du kan finde det her:

Forresten, efter at have klikket på linjen med meddelelsen om tilslutning af biblioteket vises automatisk.

Også i Arduino IDE er der flere eksempler på at arbejde med skærmen. De afspejler grundlæggende funktioner og funktioner.

Overvej den enkleste "Hello Word". Eksemplet er helt sammenfaldende med hvad der findes i standard IDE-sættet. Jeg har lige oversat kommentarerne til russisk.Bemærk, at dette er et eksempel på at arbejde i 4-bit-tilstand.

At arbejde med I2C er næsten det samme:

VIGTIGT:
Bemærk, at i dette kodeeksempel angiver den første kommando flere visningsstørrelser, antallet af linjer og tegn, men også dens I2C-adresse. Nemlig - 0x27, hvilket svarer til manglende jumpere. Generelt er dette nødvendigt for at forbinde flere skærme (8 stykker) til to signalledninger.
Et udvalg af videotutorials om emnet
For at det ikke ville være vanskeligt for dig at mestre evnen til at arbejde med skærmen, har vi lavet et udvalg af videolektioner om dette emne.
konklusion
Det viser sig, at det ikke er svært at gøre Arduino-board til venner og skærmen overhovedet. Du har mulighed for både parallel dataoverførsel og seriel via I2C-bussen, hvad du skal vælge - du bestemmer, både hvad angår bekvemmelighed og hastighedskravene i systemet som helhed. Skriv i kommentarerne, hvilke spørgsmål du skal overveje mere detaljeret, og hvad nøjagtigt vil du se om emnet mikrokontrollere!
For mere information om Arduino og funktionerne ved dens anvendelse i forskellige skemaer, se e-bogen - Arduino til dummies. Illustreret praktisk vejledning.
Senest er der frigivet et nyt kursus af Maxim Selivanov "Programming Nextion Displays". Dette er "arduino" i verden af berøringsskærmsdisplay. Men information om det er meget lille.

Hvad er Nextion-skærme? Kort sagt, disse skærme er programmerbare skærme med en berøringsskærm og UART for at skabe en række grænseflader på skærmen. Til programmering bruges et meget praktisk og enkelt udviklingsmiljø, som giver dig mulighed for at skabe endda meget komplekse grænseflader til forskellige elektronik på bare et par aftener! Og alle kommandoer overføres via UART-grænsefladen til mikrokontrolleren eller computeren.
Der er alt, hvad man skal begynde at arbejde med Nextion-skærme på et nyt niveau: NEXTION
Se også på elektrohomepro.com
: