Glavne elektronske zunanje naprave, povezane z mikrokrmilnikom 8051

Preizkusite Naš Instrument Za Odpravo Težav





Povezovanje je eden pomembnih konceptov v mikrokrmilnik 8051 ker je mikrokrmilnik CPU, ki lahko izvede določeno operacijo podatkov in daje izhodne podatke. Vendar pa za izvedbo operacije potrebujemo vhodno napravo za vnos podatkov, nato pa izhodna naprava prikaže rezultate operacije. Tu uporabljamo tipkovnico in LCD zaslon kot vhodno in izhodno napravo skupaj z mikrokrmilnikom.

Mikrokrmilnik 8051 Periferne naprave

Mikrokrmilnik 8051 Periferne naprave



Vzpostavljanje povezav je postopek povezovanja naprav, tako da si lahko izmenjujejo informacije in zaradi česar je lažje pisati programe. Glede na naše potrebe obstajajo različne vrste vhodnih in izhodnih naprav, kot so LED, LCD, 7segment, tipkovnica, motorji in druge naprave.


Tu je podanih nekaj pomembnih modulov, povezanih z mikrokrmilnikom 8051.



1. Povezava LED z mikrokrmilnikom:

Opis:

LED diode se najpogosteje uporabljajo v številnih aplikacijah za prikaz izhoda. Kot test med preizkusom najdejo ogromno aplikacij za preverjanje veljavnosti rezultatov v različnih fazah. So zelo poceni in lahko dostopni v različnih oblikah, barvah in velikostih.

Svetleča dioda

Svetleča dioda

Načelo delovanje LED je zelo enostavno. Preproste LED diode so tudi strežniki kot osnovne prikazovalne naprave, stanje Vklop in Izklop pa pomeni popolne informacije o napravi. Običajne razpoložljive LED imajo 1,7-voltni padec napetosti, kar pomeni, da ko uporabimo nad 1,7 V, dioda prevaja. Dioda potrebuje 10mA toka, da sveti s polno jakostjo.


Naslednje vezje opisuje 'kako žariti LED'.

LED-diode se lahko povežejo z mikrokrmilnikom bodisi v običajni konfiguraciji anode bodisi v skupni katodi. Tu so LED diode povezane v skupno konfiguracijo anod, ker skupna konfiguracija katode porabi več energije.

Shema vezja

LED vmesnik z mikrokrmilnikom

LED vmesnik z mikrokrmilnikom

Izvorna koda:

#include
void main ()
{
nepodpisani int i
medtem ko (1)
{
P0 = 0x00
za (i = 0i<30000i++)
P0 = 0xff
za (i = 0i<30000i++)
}
}

2. 7-segmentno vezno vezje zaslona

Opis:
Sedemsegmentni zaslon je najosnovnejši elektronski zaslon. Sestavljen je iz osmih LED, ki so povezane zaporedno, tako da prikažejo številke od 0 do 9, ko so vklopljene ustrezne kombinacije LED. 7-segmentni zaslon uporablja sedem LED za prikaz številk od 0 do 9, osma LED pa se uporablja za pike. Tipičen sedem segmentov je videti všeč, kot je prikazano na spodnji sliki.

7-segmentni zaslon

7-segmentni zaslon

7-segmentni zasloni se v številnih sistemih uporabljajo za prikaz številčnih informacij. Naenkrat lahko prikažejo eno števko. Tako je število uporabljenih segmentov odvisno od števila prikazanih številk. Tu so številke od 0 do 9 neprekinjeno prikazane z vnaprej določenim časovnim zamikom.

7-segmentni zasloni so na voljo v dveh konfiguracijah, ki sta skupna anoda in skupna katoda. Tu se uporablja običajna anodna konfiguracija, ker izhodni tok mikrokrmilnika ne zadostuje za pogon LED. 7-segmentni zaslon deluje na negativno logiko, na ustrezen zatič moramo vnesti logiko 0, da zasveti LED.

7-segmentne konfiguracije zaslona

7-segmentne konfiguracije zaslona

Naslednja tabela prikazuje šestnajstiške vrednosti, ki se uporabljajo za prikaz različnih številk.

7-segmentna prikazna tabela

7-segmentna prikazna tabela

Shema vezja

Vmesnik 7-segmentnega zaslona

Vmesnik 7-segmentnega zaslona

Izvorna koda:

#include
sbit a = P3 ^ 0
void main ()
{
nepodpisani znak n [10] = {0x40,0xF9,0x24,0x30,0x19,0x12,0x02,0xF8,0xE00,0x10}
nepodpisan int i, j
a = 1
medtem ko (1)
{
za (i = 0i<10i++)
{
P2 = n [i]
za (j = 0j<60000j++)
}
}
}

3. Povezava LCD z mikrokrmilnikom

LCD pomeni zaslon s tekočimi kristali, ki lahko prikazuje znake v vrstici. Tu lahko 16-kratni LCD zaslon prikaže 16 znakov na vrstico, obstajajo pa dve vrstici. Na tem LCD-ju je vsak znak prikazan v matriki 5 * 7 slikovnih pik.

LCD zaslon

LCD zaslon

LCD je zelo pomembna naprava, ki se uporablja za skoraj vse avtomatizirane naprave, kot so pralni stroji, avtonomni robot, sistemi za nadzor moči in druge naprave. To se doseže s prikazom njihovega stanja na majhnih prikazovalnih modulih, kot so 7-sedemsegmentni prikazovalniki, večsegmentne LED itd. Razlogi za to so, da imajo LCD-ji cenovno ugodne cene, jih je mogoče enostavno programirati in nimajo omejitev glede prikazovanja posebnih znakov.

Sestavljen je iz dveh registrov, kot sta register ukazov / navodil in podatkovni register.

V registru ukazov / navodil so shranjena ukazna navodila, dana LCD-ju. Ukaz je navodilo, ki ga dobi LCD, ki izvaja nabor vnaprej določenih nalog, kot so inicializacija, čiščenje zaslona, ​​nastavitev položaja kurzorja, nadzor zaslona itd.

V podatkovnem registru so shranjeni podatki za prikaz na LCD-prikazovalniku. Podatki so ASCII vrednost znakov, ki se prikažejo na LCD-prikazovalniku.

Delovanje LCD-ja nadzorujeta dva ukaza. Ko je RS = 0, R / W = 1, bere podatke, in ko je RS = 1, R / W = 0, zapisuje (natisne) podatke.

LCD uporablja naslednje ukazne kode:

Ukazi na LCD zaslonu

Ukazi na LCD zaslonu

Shema vezja:

Povezava LCD z mikrokrmilnikom

Povezava LCD z mikrokrmilnikom

Izvorna koda:

#include
#define kam P0

sbit rs = P2 ^ 0
sbit rw = P2 ^ 1
sbit pri = P2 ^ 2

neveljavno lcd_initi ()
void lcd_dat (nepodpisani znak)
void lcd_cmd (nepodpisani znak)
zamuda za praznino (nepodpisan int)
prikaz praznine (nepodpisani znaki *, nepodpisani znaki r)
void main ()
{

lcd_initi ()
lcd_cmd (0x80)
zamuda (100)
zaslon (“EDGEFX TECHLNGS”, 15)
lcd_cmd (0xc0)
zaslon (“KITS & SOLTIONS”, 15)
medtem ko (1)
}

prikaz praznine (nepodpisani znaki *, nepodpisani znaki r)
{
nepodpisan int w
za (w = 0w{

lcd_dat (s [w])
}
}

neveljavno lcd_initi ()
{
lcd_cmd (0x01)
zamuda (100)
lcd_cmd (0x38)
zamuda (100)
lcd_cmd (0x06)
zamuda (100)
lcd_cmd (0x0c)
zamuda (100)
}
neveljavno lcd_dat (nepodpisani znak char)
{
glavnik = to
rs = 1
rw = 0

v = 1
zamuda (100)
v = 0
}
void lcd_cmd (nepodpisani char cmd)
{
prišel = cmd
rs = 0
rw = 0

v = 1
zamuda (100)
v = 0
}
zamuda pred praznino (nepodpisan int n)
{

nepodpisan int a
za (a = 0a}

4. Vezje koračnega motorja

Vrste koračnih motorjev-1

Enopolni koračni motor

TO koračni motor je eden najpogosteje uporabljenih motorjev za natančno kotno gibanje. Prednost uporabe koračnega motorja je v tem, da je kotni položaj motorja mogoče nadzorovati brez kakršnega koli povratnega mehanizma. Koračni motorji se pogosto uporabljajo v industrijski in komercialni uporabi. Pogosto se uporabljajo tudi v pogonskih sistemih, kot so roboti, pralni stroji itd.

Vrste koračnih motorjev-2

Bipolarni koračni motor

Koračni motorji so lahko enopolarni ali bipolarni in tu uporabljamo unipolarni koračni motor. Enopolni koračni motor je sestavljen iz šestih žic, od katerih so štiri povezane na tuljavo motorja in dve običajni žici. Vsaka skupna žica je priključena na vir napetosti, preostale žice pa na mikrokrmilnik.

Shema vezja:

Vezje koračnega motorja

Vezje koračnega motorja

Izvorna koda:

#include
sbit a = P3 ^ 0
sbit b = P3 ^ 1
sbit c = P3 ^ 2
sbit d = P3 ^ 3

zamuda praznine ()

void main ()
{

medtem ko (1)
{

a = 0
b = 1
c = 1
d = 1
zamuda ()
a = 1
b = 0
c = 1
d = 1
zamuda ()
a = 1
b = 1
c = 0
d = 1
zamuda ()
a = 1
b = 1
c = 1
d = 0

}
}

zamuda praznine ()
{

nepodpisani znak i, j, k
za (i = 0i<6i++)
za (j = 0j<255j++)
za (k = 0k<255k++)

}

5. Matrično povezovanje tipkovnice z 8051

Opis:

Matrična tipkovnica

Matrična tipkovnica

Tipkovnica je široko uporabljena vhodna naprava z veliko aplikacijami, kot so telefon, računalnik, bankomat, elektronska ključavnica itd. Tipkovnica se uporablja za sprejem vnosa od uporabnika za nadaljnjo obdelavo. Tu je matrična tipkovnica 4 na 3, sestavljena iz stikal, razporejenih v vrstice in stolpce povezan z mikrokrmilnikom . Za prikaz izhoda je povezan tudi 16 x 2 LCD.

Koncept povezovanja tipkovnice je zelo preprost. Vsaki številki tipkovnice sta dodeljena dva edinstvena parametra, ki sta vrstica in stolpec (R, C). Vsakokrat, ko pritisnete tipko, se številka prepozna tako, da zazna številke vrstic in stolpcev tipkovnice.

Notranji diagram tipkovnice

Notranji diagram tipkovnice

Krmilnik sprva vse vrstice nastavi na nič ('0') in stolpce pregleda, da preveri, ali je pritisnjena katera koli tipka. Če ne pritisnete nobene tipke, bo izhod vseh stolpcev visok ('1').

Shema vezja

Matrično povezovanje tipkovnice z 8051

Matrično povezovanje tipkovnice z 8051

Izvorna koda:

#include
#define kam P0
sbit rs = P2 ^ 0
sbit rw = P2 ^ 1
sbit pri = P2 ^ 2
sbit c1 = P1 ^ 4
sbit c2 = P1 ^ 5
sbit c3 = P1 ^ 6
sbit r1 = P1 ^ 0
sbit r2 = P1 ^ 1
sbit r3 = P1 ^ 2
sbit r4 = P1 ^ 3
neveljavno lcd_initi ()
void lcd_dat (nepodpisani znak)
void lcd_cmd (nepodpisani znak)
zamuda za praznino (nepodpisan int)
prikaz praznine (nepodpisani znaki *, nepodpisani znaki r)

void main ()
{
lcd_initi ()
lcd_cmd (0x80)
zamuda (100)
zaslon (“0987654321”, 10)
medtem ko (1)
}

prikaz praznine (nepodpisani znaki *, nepodpisani znaki r)
{

nepodpisan int w
za (w = 0w{

lcd_dat (s [w])
}
}
neveljavno lcd_initi ()
{
lcd_cmd (0x01)
zamuda (100)
lcd_cmd (0x38)
zamuda (100)
lcd_cmd (0x06)
zamuda (100)
lcd_cmd (0x0c)
zamuda (100)
}

neveljavno lcd_dat (nepodpisani znak char)
{
glavnik = to
rs = 1
rw = 0

v = 1
zamuda (100)
v = 0
}
void lcd_cmd (nepodpisani char cmd)
{
prišel = cmd
rs = 0
rw = 0

v = 1
zamuda (100)
v = 0

}
zamuda pred praznino (nepodpisan int n)
{

nepodpisan int a
za (a = 0a}
}

Upamo, da smo lahko zagotovili dovolj znanja o osnovnih, a pomembnih povezovalnih tokokrogih mikrokrmilnik 8051 . To so najosnovnejša vezja, ki jih zahteva katera koli vdelana sistemska aplikacija, in upamo, da smo vam zagotovili dobro revizijo.

V spodnjem oddelku za komentar je dobrodošlo omeniti nadaljnje poizvedbe ali povratne informacije, povezane s to temo.

Foto krediti