Sunteți pe pagina 1din 25

UNIVERSITATEA OVIDIUS CONSTANA

LUCRRI DE LABORATOR

Microprocesoare i microcontrolere

Autori:
Conf. uni . !r. in". Ti#eriu COROE$CU Dr!. in". Mitru%&Corneliu CARAI'A( In". Elena BDUC In". $orin Romeo TA)U

Constan%a *+,*

CUPRINS

L I. Interfa%area !ispo-iti elor simple la microcontroler ........................................................... . LII. Interfa%area afioarelor cu / se"mente ................................................................................ 0 LIII. Interfa%area afioarelor inteli"ente 1partea I2 .................................................................... 3 LI'. Interfa%area afioarelor inteli"ente 1partea a II&a22...........................................................,* L'. Con ersia analo"4!i"ital5 ...................................................................................................,6 L'I. Interfa%are motoarelor pas cu pas unipolare la microcontroler .......................................,7 L'II. Comunicaii seriale i con ersia TTL&R$*.* 8888888888888888888888 *,

LABORATORUL I

INTERFATAREA DISPOZITIVELOR SIMPLE LA MICROCONTROLER 1.1. Scopul lucrarii 9amiliari-area cu lim#a:ul !e ni el inalt pentru microcontrolere !e tip:;IC<clasa !e mi:loc !enumit =AL1=ust Anat>er Lan"ua"e2. 1.2. Aparatura necesara $tatia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcontroler: ;IC ,097//< pro"ramatorul :;ic?it* si soft@are&ul aferent pro"ramului. 1.3. Consideratii teoretice Lim#a:ul !e pro"ramare =AL este un lim#a: !e ni el inalt in care sintaAele liniilor !e cos sunt foarte asemanatoare cu cele ale lim#a:ului Basic pentru ;C. $e poate numi Basic pentru microcontrolere. ;rin !ispo-iti e periferice simple intele"em le!&uri< #utoane< #u-ere sau !ifu-oare<motoare !e curent continu sau pas cu pas< etc. ,. Bi#lioteca B:picB este interfata spre resursele microcontrolerului si accesea-a re"istrii ce !efinesc porturile fi-ice cat si !irectia !e comunicatie a acestora. *. Bi#lioteca B:!elaCB contine rutina !e intar-iere cu asteptare. 9iecare rutina intar-ie cu timpul in!icat !e catre pro"ramator si il inmulteste cu ar"umentul !in parante-a. Aceste rutine !e intar-iere necesita frec enta !e tact a oscilatorului !e 6M>-< ,+MD- si *+MD-. ;reci-ia este !e cate a procente si cu cat timpul este mai scurt <cu atat eroarea este mai mare.
1.4.SCHEMA ELECTRICA

D1 R2
220 LU ILED

U1
13 14 1 2 3 4 5 6 7 8 9 10 OSC1/CLKIN OSC2/CLKOUT CLR/V##/T$V RB0/INT RB1 RB2 RB3/PG RB4 RB5 RB6/PGC RB7/PGD 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

D2 R3
220 LU ILED

RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF" RA4/T0CKI RA5/AN4/SS RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RE0/AN5/RD RC2/CCP1 RE1/AN6/WR RC3/SCK/SCL RE2/AN7/CS RC4/SDI/SDA RC5/SDO RC6/T!/CK RC7/R!/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 PIC16F877

"5V

R1
10K

1.5.Aplicatii $e !a urmatorul co!: Inclu!e ,0f7//E*+ &&se !efineste microcontrolerul folosit si frec enta oscilatorului Inclu!e :pic &&interfata !e #a-a spre resursele microcontrolerelor ;IC ,0A76 si ,0f7/A Incli!e :!elaC &&#i#lioteca ce contine rutinele !e intar-iere ;inE#+E!irectionF output 4se !efineste pinul + !in portul B ca fiin! iesire 9ore er loop &&start pro"ram in #ucla infinita ;inE#+ F>i">t &&pinul + !in portul B trece in starea lo"ica , DelaCE,++ms1G2 &&intar-iere !e +<G secun!e ;inE#+ Flo@ &&pinul + !in portul B trece in starea lo"ica + DelaCE,++ms1G2 && intar-iere !e +<G secun!e En! loop &&sfarsit #ucla <reintiali-ea-a Acest co! face ca le!ul conectat intre pinul + al portului B si masa sa se aprin!a timp !e G++ !e milisecun!e si sa fie stins tot atat timp. $e cere: ,.Mo!ificati co!ul initial astfel incat le!&ul sa fie aprins timp !e ,++ !e milisecun!e si sa ramana stins timp !e 6++ !e milisecun!e. pinE#+ F >i">t !elaCE,++ms1,2 pinE#+ F lo@ !elaCE,++ms162 *. Instalati un al !oilea le! intre pinul , !in portul B al microcontrolerului si masa< apoi completati co!ul astfel incat le!ul , sa fie aprins timp !e .++ milisecun!e< !upa care se stin"e cel !e&al !oilea le! timp !e .++ !e milisecun!e. Inclu!e ,0f7//E*+ Inclu!e :pic Incli!e :!elaC ;inE#+E!irectionF output ;inE#,E!irection F output 9ore er loop ;inE#+ F>i">t DelaCE,++ms1.2 ;inE#+ Flo@ DelaCE,++ms1/2 ;in E#, F >i">t DelaCE,++ms1.2 ;inE#, F lo@ DelaCE,++ms1/2 En! loop .. Mo!ificati co!ul astfel incat am#ele le!uri sa clipeasca in acelasi timp cu o ca!enta !e 6 ori pe secun!a. 9ore er loop 4

;inE#+ F >i">t ;inE#, F >i">t DelaCE,++ms1*2 ;inE#+ F lo@ ;inE#, F lo@ DelaCEG+ms1,2 En! loop 6. Instalati pe pinul * !in portul B un pus>&#utton. Mo!ificati si completati co!ul a.i. la apasarea #utonului<le!ul , sa se aprin!a cu oca!enta !e 6 ori pe secun!a si le!&ul * sa fie stins can! este eli#erat le!ul * sa ramana aprins. ;inE#+E!irection F output ;inE#,E!irection F output ;inE#*E!irection F input 9ore er loop If pinE#, F lo@ ;inE#+ F >i">t DelaCE,++ms1*2 ;inE#+ F lo@ DelaCEG+ms1,2 Else pinE#, F >i">t ;inE#+ F lo@ En! if En! loop

LABORATORUL II
INTERFAAREA AFIOARELOR CU 7 SEGMENTE 2.1. Scopul lucrarii Interfatarea !irecta cu polari-are in!epen!enta si multipleAarea afisoarelor cu / se"mente. 2.2. Aparatura necesara $tatia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcontroler: ;IC ,097//< pro"ramatorul :;ic?it* si soft@are&ul aferent pro"ramului. 2.3. Consideratii teoretice ;resupunem ca !ispunem !e un afisor cu ano! comun< pinul common se a le"a la sursa !e alimentare iar se"mentele a..." se or conecta la masa prin interme!iul unor re-istente !e ..+ !e o>mi. In "eneral afisoarele cu le!uri nu consuma un curent mai mare !e *+&*G mA aper se"ment< asa!ar< se pot conecta !irect la pinii microcontrolerului !eoarece curentul maAim "enerat !e un sin"ur pin al microcontrolerului este !e maAim *+mA fara a fi ne oie !e #uffere eAterne !e curent. Bi#ioteca B:se en B contine !eclaratii !estinate afisarii cifrelor +....3 pe afisoarele numerice cu ano! sau cato! comun cu interfatare !irecta la microcontroler. Aceasta #i#lioteca apelea-a si #i#lioteca B:se enpH. Bi#lioteca B :se enpBcontine asi"narile pinilor IIO utili-ati !e microcontroller pentru coneAiunea cu afisoarele numerice.Aceasta #i#lioteca poate fi mo!ificata !e catre pro"ramator in functie !e sc>ema >ar!@are pe care se lucrea-a. Instructiunea pentru afisarea pe !i"itii cu / se"mente este Bse enEfromE!i"itB.;entru ca re-ultatul instructiunii sa fie ne"at1can! sunt folosite afisoare cu cato! comun2 atunci instructiunea se scrie su# forma Jse enEfromE!i"it . In =AL semnul eAclamarii eAecuta o ne"atie a aria#ilei. 2.4.Sche a electrica

U1
13 14 1 2 3 4 5 6 7 8 9 10 OSC1/CLKIN OSC2/CLKOUT CLR/V##/T$V RB0/INT RB1 RB2 RB3/PG RB4 RB5 RB6/PGC RB7/PGD 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF" RA4/T0CKI RA5/AN4/SS RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RE0/AN5/RD RC2/CCP1 RE1/AN6/WR RC3/SCK/SCL RE2/AN7/CS RC4/SDI/SDA RC5/SDO RC6/T!/CK RC7/R!/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 PIC16F877

"5V

R1
10%

2.5. Aplicatii $e !a urmatorul co!: Inclu!e ,0f7//E*+ Inclu!e :li# Inclu!e :!elaC Inclu!e :se en ;ortE#E!irection F allEoutput ;ortEcE!irection F allEoutput ;ortEc*E!irection F input 'ar #Cte multipleA, F +#E+++, 'ar #Cte multipleA* F +#E++,+ 'ar #Cte !i"it, F + 'ar #Cte !i"it* F + ;ortEc F multipleA, ;ortE#F J se enEfromE!i"it1!i"it,2 Acest co! face ca primul !i"it sa afise-e aloarea aria#ilei !e tip octet B!i"it,Bacest ca+ .Di"itul este alimentat continu< starile porturilor Bsi C raman nesc>im#ate !eoarece instructiunile au fost eAecutate !oar o sin"ura !ata< neeAistan! o #ucla 9OR.Acest lucru se numeste ca afisorul a fost polari-at in!epen!ent< a!ica nu eAista multipleAare pe plrturile microcontrolerului. $e cere: ,.Completati co!ul astfel incat am#ii !i"iti sa afise-e cifra + prin multipleAarea porturi& lor B si C urmarin! cu atentie sc>ema electrica. ;ortEc F multipleA, portEc F multipleA* ;ortE# F Jse enEfromE!i"it1!i"it,2 portE# F J se enEfromE!i"it1!i"it*2 DelaCE,ms !elaCE,ms *.Instalati un pus>&#utton pe pinul * al portului C al microcontrolerului conform sc>emei electrice.Mo!ificati si completati co!ul a. i la apasarea #utonului aria#ila afisata !e !i"itul , sa se incremente-e cu , la fiecare apasare. If pinEc* if !i"it FF ,+ t>en !i"it, F + T>em !elaCE,++ms1.2 !i"it, F !i"it, K , Di"it, F !i"it, K , en! if En! if ..Implementati co!ul !e eliminare a impulsurilor para-ite "enerate !e apasarea #utonului pentru o incrementare si"ura a aria#ilei< fara BsarituriB. 'ar #Cte time F + 9ore er loop TimeF time K, If time FF,+ 7

T>en !i"it* F !i"it* K , Time F + En! if If !i"it* FF,+ T>en !i"it, F !i"it, K , Di"it* F + En! if If !i"it, FF,+ t>en !i"it, F + !i"it* F + En! if ;ortEc FmultipleA, ;ortE# FJse enEfromE!i"it1!i"it,2 DelaCE,+ms1G2 ;ortEc F multipleA* ;ortE# F Jse enEfromE!i"it1!i"it*2 DelaCE,+ms1G2 En! loop

LABORATORUL III
INTERFAAREA AFIOARELOR INTELIGENTE (PARTEA I) 3.1. Scopul lucrarii Interfa%area !ri er&ului Ditac>i DD66/7+ 4 afior inteli"ent alfanumeric cu cristale lic>i!e. 3.2. Aparatura necesara $ta%ia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcon& troler: ;IC ,097//< pro"ramatorul: ;icLit* i soft@are&ul aferent pro"ramatorului. 3.3. Consideratii teoretice Ditac>i DD66/7+ este unul !intre cele mai cunoscute circuite inte"rate !estinate mo!ulelor !e afiare cu sim#oluri alfanumerice< caractere formate !in matrice !e puncte 1!ot&matriA !isplaC2 /AG. Afioarele cele mai r5spMn!ite sunt cele cu ,0 caractere i * rMn!uri< !ar sunt !isponi#ile !e la o sin"ura linie pMn5 la 6 linii !e cMte ,0 sau *+ !e caractere. Bi#lioteca >!66/7+6 asi"ur5 interfa%area pe 6 #i%i la controlerul Ditac>i DD66/7+. Aceast5 #i#liotec5 apelea-5 i #i#lioteca >!66/7+p care con%ine asi"n5rile pinilor microcontrolerului. Aceasta #i#lioteca poate fi mo!ificat5 !e c5tre pro"ramator Nn func%ie !e le"5turile >ar!@are reali-ate Nn sc>ema electric5. Rutinele incluse Nn #i#lioteca >!66/7+ sunt: & >!66/7+Eclear 4 ter"e afiorul & >!66/7+Eposition, 1A2 4 po-i%ionea-5 cursorul pe linia , i pe po-i%ia lui A f5r5 s5 stear"a afia:ul & >!66/7+Eposition* 1A2 4 po-i%ionea-5 cursorul pe linia * i pe po-i%ia lui A f5r5 s5 tear"a afia:ul & >!66/7+Eline, 4 po-i%ionea-5 cursorul pe linia ,< po-i%ia ,< f5r5 s5 tear"5 afia:ul & >!66/7+Eline * 4 po-i%ionea-5 cursorul pe linia *< po-i%ia*< f5r5 s5 tear"5 afia:ul & cursorE#lin? 1A2 4 pentru A F , cursorul i caracterul pulsea-5< pentru A F * cursorul este afiat< pentru A F . cursorul este afiat i caracterul corespun-5tor pulsea-5 & cursorEoff 4 stin"e cursorul & cursorEleft 4 mut5 cursorul cu o po-i%ie la stMn"a & cursorEri">t 4 mut5 cursorul cu o po-i%ie la !reapta & s>iftEleft 4 cur"e Nntre"ul teAt !e la stMn"a spre !reapta & s>iftEri">t 4 cur"e Nntre"ul teAt !e la !reapta spre stMn"a

Sche a electrica
LCD1
L 016L

3.4.
VSS VDD VEE

U1
13 14 1 2 3 4 5 6 7 8 9 10 OSC1/CLKIN OSC2/CLKOUT CLR/V##/T$V RB0/INT RB1 RB2 RB3/PG RB4 RB5 RB6/PGC RB7/PGD 33 34 35 36 37 38 39 40 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF" RA4/T0CKI RA5/AN4/SS RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RE0/AN5/RD RC2/CCP1 RE1/AN6/WR RC3/SCK/SCL RE2/AN7/CS RC4/SDI/SDA RC5/SDO RC6/T!/CK RC7/R!/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 PIC16F877

A pl ic at ii $e !5

RS RW E 4 5 6

1 2 3

urm5torul co!: inclu!e ,0f7//E*+ inclu!e >!66/7+6 inclu!e :pic inclu!e :li# inclu!e :!elaC >!66/7+Eclear >!66/7+Eline, >!66/7+ F ODO >!66/7+ F OeO >!66/7+ F OlO >!66/7+ F OlO >!66/7+ F OoO >!66/7+ F O O >!66/7+ F OPO >!66/7+ F OoO >!66/7+ F OrO >!66/7+ F OlO >!66/7+ F O!O >!66/7+ F OJO Acest co! face ca pe linia ,< NncepMn! !e la po-i%ia ,< s5 fie afiat mesa:ul: QDello Porl!JB. $e cere: ,2 Mo!ifica%i co!ul astfel NncMt cu Mntul: QDelloB< s5 fie afiat pe prima linie< la po-i%ia .< iar cu Mntul: RPorl!JB< s5 fie afiat pe rMn!ul *< la po-i%ia 7. >!66/7+Eposition, 1.2 >!66/7+ F ODO >!66/7+ F OeO >!66/7+ F OlO >!66/7+ F OlO >!66/7+ F OoO >!66/7+ F O O >!66/7+Eposition* 172 >!66/7+ F OPO >!66/7+ F OoO >!66/7+ F OrO >!66/7+ F OlO >!66/7+ F O!O >!66/7+ F OJO *2 ;o-i%iona%i cursorul pe linia *< po-i%ia 6. Completa%i co!ul astfel NncMt s5 fie afiat cursorul i caracterul corespun-5tor po-i%iei cursorului s5 pulse-e. >!66/7+Eposition* 162 cursorE#lin? 1.2

10

7 8 9 10 11 12 13 14

D0 D1 D2 D3 D4 D5 D6 D7

.2 Completa%i co!ul astfel NncMt s5 se afie-e acelai mesa:: QDello Porl!B< pe primul rMn!< !e la po-i%ia ,< liter5 cu liter5< la !istan%a !e .++ !e milisecun!e una fa%5 !e cealalt5< folosin! rutinele !e NntMr-iere Q!elaCB. >!66/7+Eline, >!66/7+ F ODO !elaCE,++ms 1.2 >!66/7+ F OeO !elaCE,++ms 1.2 >!66/7+ F OlO !elaCE,++ms 1.2 >!66/7+ F OlO !elaCE,++ms 1.2 >!66/7+ F OoO !elaCE,++ms 1.2 >!66/7+ F O O !elaCE,++ms 1.2 >!66/7+ F OPO !elaCE,++ms 1.2 >!66/7+ F OoO !elaCE,++ms 1.2 >!66/7+ F OrO !elaCE,++ms 1.2 >!66/7+ F OlO !elaCE,++ms 1.2 >!66/7+ F O!O !elaCE,++ms 1.2 >!66/7+ F OJO !elaCE,++ms 1.2 62 Completa%i co!ul astfel NncMt mesa:ul: QDello Porl!B< s5 circule pe prima linie a afiorului !e la !reapta spre stMn"a folosin! o NntMr-iere !e ,++ms intr&o #ucl5 infinit5. >!66/7+Eclear proce!ure >ello is >!66/7+Eposition, 1,02 >!66/7+ F ODO >!66/7+ F OeO >!66/7+ F OlO >!66/7+ F OlO >!66/7+ F OoO >!66/7+ F O O >!66/7+ F OPO >!66/7+ F OoO >!66/7+ F OrO >!66/7+ F OlO >!66/7+ F O!O >!66/7+ F OJO en! proce!ure fore er loop >ello s>iftEri">t !elaCE,++ms en! loop

LABORATORUL IV
11

INTERFAAREA AFIOARELOR INTELIGENTE (PARTEA A II-A)

3.1. Scopul lucrarii Afiarea unei aria#ile Nn #inar i -ecimal cu a:utorul #i#liotecii: Q:printB. 3.2. Aparatura necesara $ta%ia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcontroler: ;IC ,097//< pro"ramatorul: ;icLit* i soft@are&ul aferent pro"ramatorului .... $c>ema electrica
LCD1
L 016L

13 14 1 2 3 4 5 6 7 8 9 10

RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF" RA4/T0CKI RA5/AN4/SS RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RE0/AN5/RD RC2/CCP1 RE1/AN6/WR RC3/SCK/SCL RE2/AN7/CS RC4/SDI/SDA RC5/SDO RC6/T!/CK RC7/R!/DT RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 PIC16F877

15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30

3.4.Aplicatii $e !5 urm5torul co!: inclu!e ,0f7//E*+ inclu!e >!66/7+6 inclu!e :pic inclu!e :li# inclu!e :!elaC >!66/7+Eclear 12

7 8 9 10 11 12 13 14

OSC1/CLKIN OSC2/CLKOUT CLR/V##/T$V

RB0/INT RB1 RB2 RB3/PG RB4 RB5 RB6/PGC RB7/PGD

33 34 35 36 37 38 39 40

VSS VDD VEE

U1

RS RW E 4 5 6

1 2 3

D0 D1 D2 D3 D4 D5 D6 D7

>!66/7+Eline, >!66/7+ F OBO >!66/7+ F OSO >!66/7+ F ODO >!66/7+ F O O >!66/7+ F O!O >!66/7+ F Oi O >!66/7+ F OsO >!66/7+ F OpO >!66/7+ F OlO >!66/7+ F OaO >!66/7+ F OCO $e cere ,2 Defini%i o aria#il5: Qnum#erB< cu aloarea ini%ial5: Q+B i afia%i&o pe DD66/7+ pe linia *< la po-i%ia ,< %inMn! cont c5 microcontrolerul lucrea-5 pe 7 #i%i< !eci aloarea maAim5 pe care o poate lua o aria#il5 Nn co! -ecimal este: *GG. ar #Cte num#er F + >!66/7+Eposition* 1,2 printE!ecimalE.1>!66/7+< num#er2 *2 9iAa%i rata !e refres> a afiorului la .+ !e milisecun!e pentru o #ucl5 !e citire 1se eAecut5 o #ucl5 infinit5 la fiecare .+ !e milisecun!e2. fore er loop !elaCE,+ms 1.2 en! loop .2 Afia%i aloarea aceleiai aria#ile: Qnum#erB< !ar Nn co! #inar< NncepMn! !e pe linia *< !e la po-i%ia 0. >!66/7+Eposition* 102 printE#inarCE71>!66/7+< num#er2 62 Incrementa%i aloarea aria#ilei: Qnum#erB< o !at5 la aproAimati o secun!5< !ar p5strMn! aloarea refres>&ului la .+ !e milisecun!e. ar #Cte num#er F + ar #Cte time F + fore er loop >!66/7+Eposition* 1,2 printE!ecimalE.1>!66/7+< num#er2 !elaCE,+ms 1.2 time F time K , if time FF .6 t>en num#er F num#er K , time F + en! if if num#er FF *G0 t>en num#er F + en! if en! loop

13

LABORATORUL V
CONVERSIA ANALOGDIGITAL 4.1.Scopul lucrarii Con ersia analo"&!i"ital5 Nn microcontrolerul ;IC ,097//. M5surarea i cali#rarea unui semnal analo"ic in:ectat Nn intrarea A(+. Afiarea re-ultatului pe un !isplaC alfanumeric DD66/7+. 4.2. Aparatura necesara $ta%ia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microco& ntroler: ;IC ,097//< pro"ramatorul: ;icLit* i soft@are&ul aferent pro"ramatorului. 4..3. Consideratii teoretice ;arametrii cei mai important ce !efinesc un con ertor analo"&!i"ital sunt: !re"olu#ia 4 num5rul !e st5ri lo"ice !istincte maAime pentru o tensiune !e intrare. EAemplu: Con ertorul este pe ,+ #i%i !eci are ,+*6 !e st5ri !istincte i cap !e scal5 G ol%i. Atunci re-olu%ia a fi G'I,+*6 st5ri posi#ile F 6.7 m'. Deci semnalul cel mai mic m5surat nu poate fi mai mic !ecMt 6.7' Nn ca-ul con ertorului AID inte"rat Nn ;IC ,097//. !cap de scal$ 19ull $cale2 & cea mai mare aloare posi#il5 la ieirea con ertorului AID !ti pul de con%ersie 4 inter alul !e timp necesar "ener5rii co!ului #inar !in momentul Nnceperii con ersiei. $e mai numete i ti p de achi"i#ie. !eroarea de o&&set 4 aloarea !i"itala !e ieire corespun-5toare unei tensiuni !e intrare nule. Microcontrolerul ;IC ,097// are Nn structura intern5 un con ertor !e ,+ #i%i cu 7 canale multipleAate. Este un con ertor !e u- "eneral suficient !e precis pentru multe aplica%ii precum m5surarea tensiunii i curentului Nn in!ustrie pana la m5surarea semnalelor #ioelectrice 1foarte mici2. Bi#lioteca B:analo"B apelea-5 re"itrii interni ai microcontrolerului pentru con ersia analo"& !i"ital5 i con%ine i rutine !e con ersie a re-ultatului Nn !iferite formate< !eoarece aria#ila !e lucru pentru microcontrolerul ;IC ,097// este !e !oar 7 #i%i 1a!ic5 o aloare -ecimal5 !e *GG2. Re-ultatul con ersiei analo"&!i"itale poate lua alori intre + i ,+*.< !eci re-ultatul a fi RspartB Nn mai multe aria#ile. Bi#lioteca R#in*#c!.B con ertete re-ultatul m5sur5torii< care este format !in !oi octe%i 1#Ctes2 Nn . aria#ile !e tip octet 1#Cte2 pentru manipularea uoar5 a re-ultatului con ersiei analo"&!i"itale.

14

4.4. Sche a electrica

4.5 Aplicatii $e !5 urm5torul co!: inclu!e f7//E*+ inclu!e :pic inclu!e :analo" inclu!e :print inclu!e :!elaC inclu!e >!66/7+6 >!66/7+Eclear && ter"e afiorul a!,Enoref fore er loop c>+Eon && pornete con ersia pe canalul + c>E@riteE,+*. && con ertete re-ultatul con ersiei >!66/7+Eline, printE>eAa!ecimalE* 1 >!66/7+< is!< O+O 2 >!66/7+Eposition, 1*2 printE>eAa!ecimalE* 1 >!66/7+< ls!< O+O 2 !elaCE,++ms 1.2 en! loop. $e cere:

15

,2 Afia%i pe rMn!ul * al afiorului alorile parametrilor Ris!B 1interme!iate si"nificant !i"it2 i Rls!B 1less si"nificant !i"it2 Nn #a-a ,+. ;entru fiecare m5sur5toare trece%i Nn ta#elul , re-ulta& tul fiec5rui parametru. >!66/7+Eline* printE!ecimalE* 1 >!66/7+< is!< O+O 2 >!66/7+Eposition* 1.2 && pentru o mai #un5 i-uali-are a celor * parametrii printE!ecimalE* 1 >!66/7+< ls!< O+O 2 *2 TncepMn! !e la +< crete%i aloarea tensiunii analo"ice aplicat5 la intrarea con ertorului Nn pai !e G++m' pMn5 atin"e%i capul !e scal5. Intro!uce%i alorile !i"itale m5surate Nn ta#elul ,.

'aloare analo"ic5 1'2 + +<G , ,<G * *<G . .<G 6 6<G G

'aloare afiat5 ++++ +,+* +*+G +.+/ +6+3 +G,* +0,6 +/,0 +7,7 +3*, ,+*.

'aloare is! ++ +, +* +. +6 +G +0 +/ +7 +3 ,0

'aloare ls! ++ +* +G +/ +3 ,7 *+ ** *6 .. .G

.2 Completa%i co!ul astfel NncMt la fiecare aloare Nntrea"5 a tensiunii s5 se aprin!5 cMte un LED. EAemplu: ;entru tensiunea !e ,' s5 se aprin!5 LED, i aa mai !eparte. if is! FF ++ t>en if ls! FF ++ t>en pinE!+ F lo@ pinE!, F lo@ pinE!* F lo@ pinE!. F lo@ pinE!6 F lo@ en! if en! if if is! UF +* t>en if ls! UF +G t>en pinE!+ F >i"> pinE!, F lo@ pinE!* F lo@ pinE!. F lo@ pinE!6 F lo@ en! if en! if if is! UF +6 t>en if ls! UF +3 t>en pinE!+ F >i"> pinE!, F >i"> pinE!* F lo@ pinE!. F lo@ 16

pinE!6 F lo@ en! if en! if if is! UF +0 t>en if ls! UF *+ t>en pinE!+ F >i"> pinE!, F >i"> pinE!* F >i"> pinE!. F lo@ pinE!6 F lo@ en! if en! if if is! UF +7 t>en if ls! UF *6 t>en pinE!+ F >i"> pinE!, F >i"> pinE!* F >i"> pinE!. F >i"> pinE!6 F lo@ en! if en! if if is! UF ,0 t>en if ls! UF .G t>en pinE!+ F >i"> pinE!, F >i">

pinE!* F >i">t pinE!. F >i">t pinE!6 F >i">t en! if en! if.

17

LABORATORUL VI
INTERFAAREA MOTOARELOR PAS CU PAS UNIPOLARE LA MICROCONTROLER

5.1.Scopul lucrarii
Interfa%area motoarelor pas 4cu&pas folosin! !ri er&ele !e putere UL(*++.

5.2. Aparatura necesara


$ta%ia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcontroler: ;IC ,097//< mo!ulul cu !ri er&ul !e putere 1UL(*++.2< pro"ramatorul: ;icLit* i soft@are&ul aferent pro"ramatorului.

5.3. consideratii teoretice


Circuitul inte"rat UL(*++. con%ine / !ri ere !e putere 1fi"ura ,2< fiecare constMn! !in !ou5 tran-istoare Nn coneAiune Darlin"ton. Coman!a lor se face Nntr&o "am5 lar"5 a tensiunii !e !esc>i!ere< putMn! fi folosite semnale TTL 1+VG'2 cMt i CMO$ 1+V.+'2.

$ec ena !e coman!5 a motoarelor pas&cu&pas unipolare este pre-entat5 Nn fi"ura *.

18

5.4. Sche a electrica

5.5. Aplicatii
$e cere: $5 se scrie un pro"ram Nn =AL< care la ap5sarea #utonului B, s5 ac%ione-e motorul pas&cu&pas Nnainte i la ap5sarea #utonului B* s5 ac%ione-e motorul Nnapoi. Timin"&ul Nntre sec en%e tre#uie s5 fie !e G++ milisecun!e. (ot5: Wine%i cont !e faptul c5 la ieirea !ri erului< polaritatea semnalului este in ersat5X !ac5 la pinul microcontrolerului eAist5 ni el lo"ic ,< atunci ieirea !ri erului a lua aloarea +J inclu!e ,0f7//E*+ inclu!e :pic inclu!e :!elaC inclu!e :analo" pinE#+E!irection F input pinE#,E!irection F input portE!Elo@E!irection F allEoutput proce!ure for@ar! is portE!Elo@ F +#E+++, !elaCE,++ms 1G2 portE!Elo@ F +#E++,+ !elaCE,++ms 1G2 portE!Elo@ F +#E+,++ !elaCE,++ms 1G2 portE!Elo@ F +#E,+++ !elaCE,++ms 1G2 en! proce!ure proce!ure #ac?@ar!s is portE!Elo@ F +#E,+++ !elaCE,++ms1G2 !elaCE,++ms 1G2 en! proce!ure

19

portE!Elo@ F +#E+,++ !elaCE,++ms 1G2 portE!Elo@ F +#E++,+ !elaCE,++ms 1G2 portE!Elo@ F +#E+++,

fore er loop if pinE#+ t>en for@ar! en! if if pinE#, t>en #ac?@ar!s en! if en! loop.

20

La !"a#!"$% VII
COMUNICAII SERIALE I CONVERSIA TTL-RS&'& 7()(S*!+$% %$*","-Con ersia TTL&R$*.* cu circuitul inte"rat MAY*.*< transmisia i recep ia serial5 a !a& telor c5tre i !inspre ;C i m5surarea tensiunii cu prelucrarea !atelor Nn co! La#'ie@. 7(&( A+a"a#$"a ./*/0a",

$taia !e lucru care are instalat compilatorul =AL< platforma !e !e- oltare cu microcon& troler: ;IC ,097//< me!iul !e !e- oltare La#'ie@< pro"ramatorul: ;icLit* i soft@are&ul aferent pro"ramatorului. 7('( C!.0-1/"a-- #/!"/#-*/

Microcontrolerul ;IC,097// este !otat cu un mo!ul !e comunica ie serial5 care folose te semnale TTL pentru transmisia i recepia serial5 a !atelor. ;entru interfa area la stan!ar!ul R$*.* este ne oie !e un con ertor eAtern care transform5 semnalele TTL 1+VG'2 Nn semnale stan!ar!i-ate R$*.*. Tn acest scop este folosit circuitul inte"rat MAY*.* sau unul ec>i alent. EAist5 . mo!uri !e folosire al portului serial R$*.*< i anume: si ple' 4 atunci cMn! un ec>ipament transmite i cel5lalt recep ionea-5X hal& duple' 4 ec>ipamentele funcionea-5 pe rMn!X unul transmite i cel5lalt recep io& nea-5 i in ersX &ull duple' 4 am#ele ec>ipamente pot transmite i recepiona Nn acelai timp.

21

F-2$"a ) $emnificaia pinilor R$*.* este: T'( 4 ieire !e !ate R'( 4 intrare !e !ate )*( 4 masa semnalelor RTS 4 ReZuest to $en! 4 ieire !e intero"are a perifericelor (TR 4 Data Terminal Rea!C 4 semnali-are terminal li#er 1poate primi sau transmite !ate2 CTS 4 Clear to $en! 4 intrare !e acceptare a pac>etului !e !ate (SR 4 Data $et Rea!C 4 intrare !e ali!are a comunicaiei (C( 4 Data Carrier Detect 4 intrare !e semnali-are a pre-entei purt5toarei mo!e& mului RI 4 Rin" In!icator 4 intrare !e semnali-are a funcionarii soneriei la terminalul opus

Bi#lioteca serialso.:al conine rutinele !e accesare a transcei erului serial incorporat Nn ;IC,097//. ;entru setarea ite-ei !e comunicaie se mo!ific5 parametrul 97//E$;BR[ F Y< !in interiorul #i#liotecii. ;entru transmisia !atelor se folosete coman!a asCncEtA 1 aria#ile !efinite !e c5tre pro& "ramator2. ;entru recepia !atelor se folosete coman!a asCncErA 1 aria#ile !efinite !e c5tre pro"ramator2. 7(3( S*4/5a /%/*#"-*,

22

7(6( A+%-*a7-$e !5 urm5torul co!: inclu!e f7//E*+ inclu!e :pic inclu!e :analo" inclu!e :print inclu!e :!elaC inclu!e >!66/7+6 inclu!e serialso portE!E!irection F allEoutput portE! F + >!66/7+Eclear a!,Enoref fore er loop c>+Eon c>E@riteE,+*. >!66/7+Eline, printE>eAa!ecimalE* 1 >!66/7+< is!< O+O 2 >!66/7+Eposition, 1*2 printE>eAa!ecimalE* 1 >!66/7+< ls!< O+O 2 asCncEtA 1is!2

23

asCncEtA 1ls!2 !elaCE,+ms 1G2 en! loop

$e cere: ,2 Lansai co!ul La#'ie@ i crete%i tensiunea !e intrare pMn5 cMn! atin"e i capul !e scal5 urm5rin! num5rul afiat pe !isplaC&ul alfanumeric. (otai aloarea tensiunii !e intrare: *2 tiin! aloarea tensiunii la cap !e scal5< calculai cea mai mic5 !i i-iune a tensiunii m5surate inMn! cont !e faptul c5 re-oluia con ertorului AID este !e ,+ #i i: .2 Completai co!ul astfel NncMt s5 afiai teAtul RDA< DAJB pe !isplaC&ul alfanumeric i trimitei !atele pe interfaa R$*.*. 9olosii co!urile A$CII aferente caracterelor !in ta#ela A$CII ataat5. 62 Mo!ificai ite-a !e transmisie a !atelor seriale la 30++ #au! accesMn! parametrul $;BR[ !in #i#lioteca 0/"-a%0!.

24

25

S-ar putea să vă placă și