PMP Flashcards
Intrebari teorie
Ce este o întrerupere mascabilă?
Intreruperi care pot fi dezactivate/ignorate temporar
Afectate de flag-ul IF
De câte ori se apelează funcția loop într-un program Arduino?
Se apeleaza continuu.
Care este rolul registrului TIMSK?
Activeaza/dezactiveaza intreruperile asociate cu temporizatoarele si counterele
Care sunt evenimentele care pot genera întreruperi la un temporizator (timmer) AVR?
Timer Overflow
Compare Match
Eveniment extern (16 bits timers)
Care este rolul apelului attachInterrupt(3, fun, RISING)?
Indică că o funcție numită fun va fi chemată atunci când nivelul semnalului pe linia de întrerupere 3 face o tranziție de la LOW la HIGH (RISING edge).
Ce rol are registrul PINA?
Memoreaza starea pinilor din portul A (I/O).
Ce înseamnă baud rate (la comunicare serială UART)?
Numarul de biti transmisi intr-o secunda
Ce inseamnă “daisy chaining”?
“Daisy chaining” se referă la conectarea în serie a dispozitivelor sau componentelor, astfel încât semnalul sau datele să treacă printr-unul și apoi să ajungă la următorul într-un lanț continuu. Este o configurație în care fiecare dispozitiv este conectat la următorul, similar cu modul în care margaretele sunt legate una de alta.
Cum se numesc semnalele unei conexiuni I2C?
SDA - data
SCL - clock
Ce este PWM?
Pulse Width Modulation - este o tehnică de control care ajustează lățimea pulsului într-un semnal.
Ce este un tri-state buffer?
Dispozitiv electronic cu 3 stari: activ, inactiv, inalta impedanta
Câte linii de date sunt la 8086?
16
Câte canale poate sa serveasca controllerul 8237?
4
Cum se generează adresele pe 20 biți pentru un transfer DMA?
Se face prin combinarea a două surse de adrese:
8 biți inferiori (A0 - A7) furnizați direct de la perifericul 8237A
12 biți superiori (A8 - A19), dintre care 4 biți (A16 - A19) provin de la un registru I/O Latch și 8 biți (A8 - A15) de la un registru Addr Latch.
Dați un exemplu de memorie non-volatilă.
Memoria flash
HDD/SSD
CD/DVD
Care este diferența dintre un micro-procesor și un micro-controller ?
Microprocesorul este componenta centrală a unui sistem de calcul, în timp ce microcontrollerul este un sistem înglobat care integrează într-un singur cip un microprocesor, memorie și periferice, fiind proiectat pentru sarcini specifice și controlul dispozitivelor externe.
Câte locații adresabile are o memorie cu 13 biți de adresă?
2^13
Ce rol are registrul DDRA?
Este folosit pentru a seta direcția pinilor din portul A al microcontrolerului.
Care este efectul instrucțiunii lpm r16, Z?
r16 = Memorie_Program[Z];
Care este rolul funcției millis()?
Returneaza timpul in ms care a trecut de la pornirea programului
Ce este o variabilă “volatile”?
Variabila care se poate modifica intr-o functie de tip ISR si salvata in memoria RAM.
Ce valoare trebuie scrisă în registrul OCRn pentru a genera un semnal de 100Hz in modul CTC?
OCR0 =16.000.000 / (2Nf)-1
fOCn = 100
N = 1024 (prescalar)
Fclk_io = 16MHz=16000000Hz
OCR0 = 16000000/(21024100)-1= 77
Cum se generează un semnal PWM folosind temporizatoare?
Folosind functia analogWrite()
Comunicarea SPI este sincronă sau asincronă?
Sincrona
Pe câți biți sunt codificare adresele la I2C?
7 biti
Care este rolul funcției serialEvent()?
Functie definita de utilizator, care este apelata automat cand exista date disponibile in zona buffer
Pe câți biți este codificat rezultatul unei conversii ADC?
10 biti
Cum se calculeaza rezoluția de masurare la ADC?
Rezolutia de masurare = RANGE volti / 1024 unitati
Care este diferența dintre un motor DC si unul pas cu pas?
Motorul DC rulează continuu cu viteză variabilă, în timp ce motorul pas cu pas se deplasează în pași specifici, oferind control precis al poziției și fără senzori de poziție.
Care este dimensiunea de memorie adresabila la 8086?
Arhitectura de 16 biti => 2^16 adrese de memorie
Se pot lega la aceeași adresă două dispozitive periferice la 8086?
Doua dispozitive pot avea aceeasi adresa daca sunt de tipuri diferite
Unde se găsește tabela cu vectorii de întrerupere?
Tabela de vectori se afla in RAM
Care este diferența dintre transferurile DMA “fly-by” și “flow-through”?
Fly-by:
- Datele nu trec prin controllerul DMA
- 1 ciclu de magistrală per transfer
Flow-through:
- Datele trec prin controller
- Transfer cu preluare şi stocare: 2 cicluri/transfer
Care este rolul semnalului EOP?
Semnalul EOP indică sfârșitul unui pachet de date într-un sistem de comunicații sau într-un protocol specific.
Care este efectul instrucțiunii lpm r17, Z-?
r17 = Memorie_Program[Z];
Z = Z - 1;
Câți biți de adresă are o memorie de 4 GB?
32
Pe câți bytes se face scrierea în urma apelului instrucțiunii spm?
2
Secvența de cod
clr r16; out DDRA, r16;
out PORTA, r16
activează rezistențele PULL-UP (Da/Nu)?
Nu
Care este instrucțiunea care activează întreruperile la un micro-controller AVR?
SEI
La AVR, întreruperea de tip “Pin Change” se activează doar pe frontul descrescător al
semnalului legat la un pin (Da/Nu).
Nu
Se poate genera un semnal PWM cu ajutorul unui temporizator? (Da/Nu)
Da
Ce valoare trebuie scrisă în registrul OCRn pentru a genera un semnal de 25Hz in modul CTC,N=64?
OCR0 =16.000.000 / (2Nf)-1
OCR0 = 16000000 / (2* 64* 25) – 1 = 3199
Cum se seteaza directia unui pin la Arduino?
Cu ajutorul functiei pinMode
(pinMode(pin, INPUT), pinMode(pin, OUTPUT));
Care este efectul instructiunii lpm R16, z-?
Incarca un byte de la adresa la care pointeaza z in r16, apoi il decrementeaza pe z.
Cum putem introduce valoarea imediata 95 in r0?
Nu putem.
Ce indica flagul z din SREG?
Z-indicator al unui rezultat nul
Cum poate convertorul A/D sa dea un rezultat pe 10 biti daca registrii AVR au doar 8 biti?
Se folosesc 2 registrii ADCL si ADCH
Care sunt variantele de declansare a unei intreruperi externe?
-nivel 0 (LOW)
-schimbarea nivelului pinului(CHANGE)
-front descrescator(FALLING)
-front crescator(RISING)
Ce efect are EIMSK | = (1«n)?
EIMSK = EIMSK | (1«n)
Activarea punctuala a intreruperilor externe ;
Setarea la 1 a bitului corespunzator activeaza intreruperea.
Pe cati biti sunt temporizatoarele AVR?
Pe 8 sau pe 16 biti
Ce face functia analogRead?
analogRead(pin) citeste o val de pe un pin analogic.
Ce face functia tone()?
Tone() cauzeaza producerea de pulsuri cu factor de umplere 50% si frecventa variabila
Tone(pin, frequency)/tone(pin, frequency,duration)
Cum se semnaleaza sfarsitul unei transmisii I2C?
Cand SDA trece din 0 in 1 si SCL e 1
Cine scrie bitul ACK la I2C ?
Slave-ul, pentru a transmite master-ului ca a primit datele.
Care e rolul circuitului integrat intel 8237?
8237 (DMA) decide prioritatea in cazul cererilor simultane si ofera adresele de memorie pt transferul datelor.
Ce este polaritatea la comunicatii SPI?
CPOL- clock polarity
Stabileste daca primul front e crescator sau descrescator
Ce este latch-ul de adrese?
Latch-ul este folosit pentru a separa liniile de adresă și date de la AD0 la AD15.