Microprocesoare

Laborator
9/10 (1 vot)
Domeniu: Calculatoare
Conține 7 fișiere: docx
Pagini : 61 în total
Cuvinte : 9630
Mărime: 4.81MB (arhivat)
Publicat de: Mugurel Diaconu
Puncte necesare: 0

Extras din laborator

1)initiarea in programare ASM.

2)stodierea modului periferic GPIO.

Problema:

Sa se dezvolte o aplicatie care ar permite trecerea starii unui led din starea curenta in opusa la detectarea apasarii unui buton.

Notiuni teoretice:

Programarea in limbajul ASM reprezinta accesul la memorie si modificarea volorilor la aceste adrese utilizand setul de comenzi. Limbajul permite gruparea secventelor de comenzi in subrutine, executia conditionata a secventelor de program realizata in baza salturilor conditionate si neconditionate.

Un microcontroller in orice moment de timp trebuie sa execute o instructiune definita de programator. Atunci cand microcontrollerul executa o comanda definita de programator vom spune ca controllerul se afla sub controlul programului.Si invers, in cazul in care se executa o comanda care nu a fost definita de catre programator vom spune ca microcontrollerul a iesit de sub control.

Un program ce ruleaza pe microcontroller trebuie sa mentina microcontrollerul intotdeauna sub control ceia ce presupune existenta unei bucle infinite in program.

Vom defini doua parti componente principale a unui program:

Partea de initializare - o secventa de cod la inceputul programului ce serveste pentru initializarea microcontrollerului pentru lucru.

Partea de procesare - rezolvarea problemei si mentinerea sub control a Microcontrollerului cu o bucla infinita.

Pentru evidentierea zonelor de initializare si procesare a programului se recomanda utilizarea etichetelor (label).

Directive de preprocesare a compilatorului sunt comenzi catre compilator care sunt executate de catre compilator inaintea generarii codului binar. Rolul lor este de a configura compilatorul si a indica compilatorului modul in care trebuie sa fie tratate liniile de program care le urmeaza.

Orice Microcontroller are un set de pini, majoritatea dintre care care pot fi configurați ca pini generici de intrare sau ieșire (GPIO), astfel încât să i se poată atribui o valoare logică către terminalul pinului sau sa fie citită aceasta valoare logică de pe el, în cazul când pinul este configurat către intrare.

Fiecare modul GPIO a microcontrollerului cu arhitectura AVR va avea la dispoziție trei registri periferici PINx, DDRx si PORTx.

Fig.1Modulul GPIO

Mersul lucrarii:

1.Creem in proiect nou in Avr Studio:

2.Elaboram solutia problemei formind shema-bloc. Conform algoritmului obtinut scriem listingul in assembler.

3.Controlam de erori sintaxice codul obtinut:

4.Cream schema electrica a circuitului in Proteus verificind daca avem erori logice.

5.Facem concluzii.

Schema-bloc:

Init:

main_loop:

L3:

Listingul programului:

.include "m32def.inc" ;includem fisierul de descrierea a controlerului

.cseg ;alegem segmentul codului din program

.org 0 ;stabilim adresa curenta la pozitia 0

;initializarea porturilor

init:

ldi R16,0b00000100 ;itializan portul A ca port de iesire.

out DDRA,R16

ldi R16,0b11111011

out PORTA,R16

ldi R16,0b00000000 ;initializam portul D ca port de intrare si acrivam rezistenta de pull-up

out DDRD,R16

ldi R16,0b11111111

out PORTD,R16

main_loop:

L1:

sbic PIND,2 ;verificam daca butonul a fost apasat

rjmp L1 ;daca butonul nu e apasat are loc intoarcerea verificarea reperata

sbic PORTA,2 ;daca butonul e apasat verificam daca ledul e aprins

rjmp L2 ;daca ledul e aprins sarim la eticheta L2

rjmp L3 ;daca ledul e stins sare la eticheta L3

L2:

cbi PORTA,2 ;stingem ledul

rjmp L4

L3:

sbi PORTA,2 ;aprindem ledul

rjmp L4

L4:

sbis PIND,2 ;verificam daca butonul e apasat

rjmp L4 ;daca nu e apasat mai verifica o data

ldi R16,0b11111111 ;daca e apasat introducem un ciclu de intirziere

delay:

dec R16 ;operatia aleasa e decrementarea unui reg.in care e incarcata val.0xFF

cpi R16,0 ;verificam daca am ajuns la 0

brne delay ;daca nu e 0 continuam decrimentarea

rjmp main_loop ;daca e 0 ne intoarcem la inceput(bucla)

Preview document

Microprocesoare - Pagina 1
Microprocesoare - Pagina 2
Microprocesoare - Pagina 3
Microprocesoare - Pagina 4
Microprocesoare - Pagina 5
Microprocesoare - Pagina 6
Microprocesoare - Pagina 7
Microprocesoare - Pagina 8
Microprocesoare - Pagina 9
Microprocesoare - Pagina 10
Microprocesoare - Pagina 11
Microprocesoare - Pagina 12
Microprocesoare - Pagina 13
Microprocesoare - Pagina 14
Microprocesoare - Pagina 15
Microprocesoare - Pagina 16
Microprocesoare - Pagina 17
Microprocesoare - Pagina 18
Microprocesoare - Pagina 19
Microprocesoare - Pagina 20
Microprocesoare - Pagina 21
Microprocesoare - Pagina 22
Microprocesoare - Pagina 23
Microprocesoare - Pagina 24
Microprocesoare - Pagina 25
Microprocesoare - Pagina 26
Microprocesoare - Pagina 27
Microprocesoare - Pagina 28
Microprocesoare - Pagina 29
Microprocesoare - Pagina 30
Microprocesoare - Pagina 31
Microprocesoare - Pagina 32
Microprocesoare - Pagina 33
Microprocesoare - Pagina 34
Microprocesoare - Pagina 35
Microprocesoare - Pagina 36
Microprocesoare - Pagina 37
Microprocesoare - Pagina 38
Microprocesoare - Pagina 39
Microprocesoare - Pagina 40
Microprocesoare - Pagina 41
Microprocesoare - Pagina 42
Microprocesoare - Pagina 43
Microprocesoare - Pagina 44
Microprocesoare - Pagina 45
Microprocesoare - Pagina 46
Microprocesoare - Pagina 47
Microprocesoare - Pagina 48
Microprocesoare - Pagina 49
Microprocesoare - Pagina 50
Microprocesoare - Pagina 51
Microprocesoare - Pagina 52
Microprocesoare - Pagina 53
Microprocesoare - Pagina 54
Microprocesoare - Pagina 55
Microprocesoare - Pagina 56
Microprocesoare - Pagina 57
Microprocesoare - Pagina 58
Microprocesoare - Pagina 59
Microprocesoare - Pagina 60
Microprocesoare - Pagina 61

Conținut arhivă zip

  • mc7.1.docx
  • mc6.docx
  • mc2.docx
  • mc5.docx
  • mc1.docx
  • mc4.docx
  • mc3.docx

Alții au mai descărcat și

Arhitectura calculatoarelor

Scopul lucrării a) Elemente de limbaj de asamblare. b) Instructiuni de transfer. c) Instructiuni aritmetice. Desfășurarea lucrării...

Ingineria programării

În “Ghidul cunoștințelor esențiale referitoare la Ingineria Programării” (Guide to the Software Engineering Body of Knowledge -...

Securitatea bazelor de date

Astăzi vom discuta despre sucuritatea bazelor de date. Ne vom uita în mod deosebit la diferite comenzi şi construcţii SQL care să ne ajute să...

Sisteme Multimedia

Scopul lucrării Familiarizarea cu produsul Director, studierea principalelor componente necesare dezvoltării unei aplicaţii multimedia. Sarcina...

Laboratoare programarea orientată pe obiecte

1. Obiective - Formarea unei imagini generale, preliminare, despre programarea orientată pe obiecte (POO) și deprinderea cu noile facilitați...

Inițiere în limbajul de programare VBA (Visual Basic for Applications)

Sarcina lucrării: Sarcina lucrării este de a face cunoștință cu limbajul de programare Visual Basic for Applications (VBA) și mediul de dezvoltare...

Bazele utilizării calculatoarelor

Un computer (calculator sau sistem de calcul) poate fi definit ca un echipament electronic de prelucrare automată a datelor, pe bază de program....

Diagnoză computerizată

Partea I Notiuni Generale despre Diagnoza Computerizata Scurt istoric. Odata cu sporirea complexitatii autovehiculelor si mai ales cu sporirea...

Te-ar putea interesa și

Proiectarea cu Microprocesoare

1. Tema generala de proiectare. Date de proiectare Sa se proiecteze un microsistem care sa efectueze operatiile aritmetice similare cu un...

Proiect achiziții - microprocesoare

Capitolul I : Microprocesoare 1.Descrierea produsului.Motivaţia alegerii produsului. Un microprocesor este creierul din interiorul unui...

Microprocesoare

Microprocesoare 1. PREZENTARE FUNCTIONALA Intrebarile la care vom incerca sa raspundem in urmatoarele paragrafe sunt: ce este un microprocesor?...

Microprocesoarele Intel

Creierul sau motorul unui sistem PC este procesorul (uneori numit microprocesor),sau unitatea centrală de procesare (CPU-Central Processing...

Sisteme cu Microprocesoare

ARGUMENT De la apariţie pînă în momentul actual, evoluţia calculatoarelor personale a cunoscut momente de cotitură, veritabile mutaţii. Primul...

Microprocesoare

Microcalculatoarele; o privire asupra tehnologiei Inventarea microprocesorului în 1971 de catre Ted Hoff în laboratoarele Fairchild a avut o...

Microprocesoare Motorola

1. INTRODUCERE De la apariţie pînă în momentul actual, evoluţia calculatoarelor personale a cunoscut momente de cotitură, veritabile mutaţii....

Sisteme cu Microprocesoare - Centru Meteorologic

I. Prezentare proiect In ziua de azi, conceptul unui centru meteorologic nu mai este folosit doar pentru prognoza meteo, ci exista numeroase...

Ai nevoie de altceva?