Documente Academic
Documente Profesional
Documente Cultură
MICROC - Curs 1 - 2022
MICROC - Curs 1 - 2022
Curs 1
Obiectivele cursului
Organizare
Referințe bibliografice
Prezentare generală microcontrolere
2
Obiectivele cursului
3
Organizare
Capitole principale
Prezentare generală
Caracteristici principale ATmega32
Porturi
Sistemul de întreruperi
Module timer
Convertor analog-digital
Module de comunicații
Mediul de dezvoltare Arduino
Arhitecturi AVR avansate
4
Organizare
5
Organizare
Notare
Curs – 60p
Laborator – 30p
Seminar – 10p
Puncte curs
Teste Moodle la finalul unor cursuri – 10p
Test intermediar (Moodle) – teorie – 20p
Examen – teorie + aplicație – 30p
6
Organizare
Puncte laborator
Teme Moodle – 10p
Colocviu – 20p
Slide-urile vor fi disponibile pe Moodle în fiecare
săptămână
Condiții obligatorii pentru promovare
Minim 15p laborator
Minim 50p din total
Prezenta la examen 7
Referințe bibliografice
Robotică și mecatronică
Industria auto
Sisteme Inteligente de Transport
9
Avem nevoie de microcontrolere ?
Electronică de consum
Aparatura electrocasnică
În controlul mediului şi climatizare
În mijloacele moderne de măsurare –
instrumentație
10
Scurt istoric
Microprocesoare pe 4 biți: Intel's 4004 (1971), Texas Instruments (TI) TMS 1000, și
Garrett AiResearch's Central Air Data Computer (CADC)
11
Scurt istoric
12
Scurt istoric
13
Freescale's KL03 (2013). 48MHz ARM Cortex-M0+, 20 Pins
Definiții
Ce este un microcontroler ?
un microcontroler (mC/uC/MC) este un
microcircuit care încorporează o unitate
centrală de procesare (CPU) și o memorie
împreună cu resurse care-i permit
interacțiunea cu mediul exterior
14
Definiții
Diferămicrocontrolerul de
microprocesor ?
un microprocesor este un microcircuit
care încorporează o unitate centrală de
procesare (CPU). Celelalte resurse
(memorie, periferice etc.) se regăsesc în
afara circuitului integrat
15
Microcontrolere
Resurse opționale:
sistem de conversie analog numerică;
un port serial de tip asincron și/sau sincron, programabil;
sistem de conversie numeric analogic și/sau ieșiri PWM (cu modulare în
durată);
comparator analogic;
memorie de date nevolatilă de tip EEPROM;
facilități suplimentare pentru sistemul de temporizare/numărare
(captare și comparare);
sisteme de monitorizare a funcționării în parametrii normali (watchdog);
facilități pentru optimizarea consumului propriu;
17
Regiștrii
18
Regiștrii cu funcții speciale
19
Setul de instrucțiuni
CISC: Complex Instruction Set Computer
Instrucțiuni a caror executie genereaza operatii de procesare complexe, multe
instructiuni sunt specializate: se pot folosi doar în anumite moduri de adresare sau cu
anumite registre
Număr redus de registre cu funcții determinate (acumulator, index etc.)
De obicei arhitectura interna a uC este mai complicata, dar codul poate realiza mai mult
cu mai putine instructiuni (comparat cu RISC)
20
Memoria
21
Memoria
23
Memoria
Memoria Flash
Nevolatilă și reprogramabilă
Poate fi ștearsă/scrisă de un număr mare de ori (tipic
10.000)
Majoritatea uC actuale utilizează această memorie pentru
stocarea programului
Memoria EEPROM (Electrically Erasable PROM)
Nevolatilă, reprogramabilă
Număr foarte mare de scrieri/ștergeri (tipic 100.000)
Viteză mică de scriere
24
Memoria
Modalități de programare
InCircuit/System Programming – ICP: re/programare
când uC se află pe placa de circuit imprimat
Programare în afara sistemului folosind echipamente
dedicate
25
Bootloader
26
Unitatea Centrală de Procesare - CPU
27
Unitatea Centrală de Procesare - CPU
Decodificatorul de instrucțiuni:
Recunoaște instrucțiunile program și generează comenzi în
concordanță cu acestea.
Setul de instrucțiuni este specific fiecărui uC
Registrul Acumulator:
Utilizat pentru stocarea datelor până când anumite operații vor fi
efectuate (deplasare, adunare, etc.) 28
Semnale ale CPU
Magistrala de adrese:
Liniile de pe această magistrală se folosesc pentru adresarea
locațiilor de memorie și a porturilor de intrare - ieșire.
Magistrala de date:
Lățimea magistralei de date este de obicei multiplu de octet (d =
8, 16, 32, 64...)
Liniile magistralei de date pot transmite bidirecțional informațiile
(intrare sau ieșire din CPU)
Magistrala de control:
conține o diversitate de linii de control și sincronizare
29
Arhitectura unui uC
Arhitectura VON-NEUMANN
O magistrală de date (de ex. de 8 biți)
O memorie comună pentru date și instrucțiuni
Dezavantaje ?
Sunt necesare două etape pentru execuția unei instrucțiuni:
1. Extragere instrucțiune și decodificare
2. Prelucrare dată din memorie
30
Arhitectura unui uC
Arhitectura Harvard
Spațiu de memorie separat pentru instrucțiuni și date
Magistrale de date proprii
Avantaje ?
Execuția unei instrucțiuni necesită un ciclu de clock
Posibilitatea execuției cvasiparalele a informațiilor pe cele
două magistrale (citire instrucțiune și accesare memorie)
31
Arhitectura unui uC
Arhitectura Harvard
Implementarea unui mecanism pipeline
Mai
multe instrucțiuni se execută simultan, dar
decalat
32
Alimentarea uC
34
Întrebări ?
35