Sunteți pe pagina 1din 9

SISTEME CU MICROPROCESOARE.

MICROCONTROLERUL PIC18F4455
297


15. INDICAII I RSPUNSURI

15.1 INDICAII I RSPUNSURI LA NTREBRILE DE AUTOEVALUARE

Rspunsuri cap. 1 Arhitectura general
1. Vezi paragraful 1.4.1 i 1.4.2
2. Vezi paragraful 1.2 i Fig. 1.2
3. Vezi paragraful 1.3
4. Contribuie la simplificarea modului de reprezentare al instruciunilor. Astfel, crete viteza de execuie a
instruciunilor i se reduce cantitatea de memorie necesar pentru stocarea instruciunilor.
5. Conine indicaii referitoare la transportul, mprumutul, sau alte caracteristici privind rezultatul operaiilor
6. Von Neumann avantaj: componente puine
Von Neumann dezavantaj: execuia instructiunilor necesit 2 cicluri de acces la memorie
Harvard avantaj: datele i instruciunile pot fi accesate n acelai timp
Harvard dezavantaj: crete complexitatea arhitecturii interne
7. UCP, memoria, echipamentele de intrare-ieire i magistralele
8. Faza de extragere i faza de execuie
9. Conine adresa instruciunii care urmeaz a fi executat
10. Prin intermediul a doi regitri de instruciuni.

Rspunsuri cap. 2 - Setul de instruciuni
1. Rspunsul n paragraful 2.1.1
2. Rspunsul n paragraful 2.2.8
3. 0
4. RLNCF REG
BCF REG,0
5. Rspunsul n paragraful 2.1.1
6. MOVFF, CALL, GOTO, LFSR
7. IORWF f,d,a realizeaz operaia logic SAU ntre coninutul registrului de lucru i coninutul
registrului de la adresa specificat prin f. Rezultatul operaie se va regsi n WREG, dac d=0, sau n
memorie la adresa specificat prin f, dac d=1.
8. MOVLW d100
MOVWF 0x00, 0
Bucla:
RLCF WREG
DECFSZ 0x00, F,0
GOTO Bucla
BSF WREG, 3
BCF WREG, 2

Rspunsuri cap. 3 - Organizarea memoriei
1. Rspunsul n paragraful 3.2.2 i Fig. 3.11
2. Toi cei 21 de bii ai PC trebuie modificai simultan pentru a nu se efectua salturi neprevzute n memoria
program care ar rezulta n urma modificrii succesive a celor trei regitri.
3. GOTO nu utilizeaz stiva.
Rspunsul complet n paragraful 3.1.3
4. Rspunsul n paragraful 3.2.2
5. Prin intermediul regitrilor STKPTR i TOS
Rspunsul complet n paragraful 3.1.3
6. Bitul a din codul instruciunii indic modul de formare al adresei.
Dac bitul a=0 (a=ACCESS) registrul accesat se gsete n Access Bank.
INDICAII I RSPUNSURI
298
Dac bitul a=1 (a=BANKED) la formarea adresei complete se ia n considerare coninutul registrului
BSR.
7. Rspunsul n paragraful 3.2.1 i Fig. 3.10
8. Conine cei 4 bii superiori ai adresei de 12 bii.

Rspunsuri cap. 4 - Adresarea memoriei de date
1. Rspunsul n paragraful 4.1
2. Rspunsul n paragraful 4.1
3. Rspunsul n paragraful 4.3
4. Adresarea direct o adres fix de opt bii, menionat explicit n codul instruciunii.
Adresarea indirect utilizeaz regitrii de adresare i accesare coninut. Adresa specificat n codul
instruciunii nu mai este fix e variabil.
5. n locul adresei fizice din codul instruciunii se poate utiliza numele unei variabile.
6. Adresare direct:
MOVLB 2
MOVF 0x12, w, BANKED
MOVLB 3
ADDWF 0x15, w, BANKED
Adresare indirect:
LFSR FSR0, 0x212
LFSR FSR1, 0x315
MOVF INDF0,W
ADDWF INDF1,W
7. INCF FSR0L
MOVLW 0
ADDWFC FSR0H, F
8. LFSR FSR0, 0x300
CLRF TEMP
CLRF WREG
Bucla:
MOVFF TEMP, POSTINC0
INCF TEMP
CPFSEQ FSR0L
GOTO Bucla

Rspunsuri cap. 5 - Structuri de program
1. Avnd n vedere c stiva hardware este tot un spaiu de stocare, prin utilizarea adecvat a instruciunilor de
manipulare a stivei PUSH i POP, precum i a regitrilor TOS i STKPTR, n aceasta se pot stoca i alte
date n afara adreselor de revenire din subrutine.
Pentru detalii de implementare vezi primul exemplu din paragraful 5.1
2. Se pot rezerva cteva locaii de memorie RAM n care s se salveze atunci cnd este nevoie coninutul
celor trei regitrii WREG, BSR, STATUS.
3. RETLW este o instruciune de revenire din subrutin, dar n plus adaug o valoare constant de 8 bii n
registrul de lucru WREG. Aceast valoare este argumentul instruciunii
Poate fi utilizat la implementarea tablourilor n memoria program.
4. Macrourile pot fi definite sub forma unor macroinstruciuni crora li se pot ataa o serie de operanzi. La
compilare apelul macrourilor este nlocuit cu corpul acestora, consumnd memorie program. Subrutinele
sunt de fapt salturi la anumite adrese n memoria program i nu au ali operanzi.
Pentru detalii suplimentare vezi paragraful 5.1 i 5.2
5. Se utlizeaz directiva db i apoi operanzii low, high i upper pentru extragerea adresei din eticheta
tabloului.
Vezi paragraful 5.3.2
6. Adunare macro adr1, adr2
MOVF adr1,W
ADDWF adr2,W
ENDM
7. Adunare
MOVF 0x00,W
ADDWF 0x01, W
RETURN
8. Vezi introducerea la paragraful 5.3
9. Vezi paragraful 5.3.2


SISTEME CU MICROPROCESOARE. MICROCONTROLERUL PIC18F4455
299
Rspunsuri cap. 6 - Porturi de intrare-ieire
1. PORT, LAT, TRIS. Pentru detalii vezi paragraful 6.1.1
2. Vezi paragraful 6.1.3
3. Permtie citirea bistabilului TRIS
4. Vezi paragraful 6.3.2
5. Se utilizeaz registrul TRIS. Fiecare bit al unui port are un echivalent n acest registru. Punerea pe 1 a
bitului respectiv face din pinul asociat pin de intrare. Punerea pe 0 a bitului respectiv face din pinul asociat
pin de ieire.

Rspunsuri cap. 7 - Temporizri software
1. Temporizare realizat pe baza timpului de execuie al instruciunilor
2. Vezi Tabelul 7.1
3. T
C
=4/48MHz=0.08333s
4. Delay1us
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
RETURN
[]
CALL Delay1us
5. Temporizarea de 1.2s afecteaz durata temporizrii de 1ms i apoi a celei de 100ms
Temporizarea obinut prin rutina Delay100ms va fi de 117.4212ms
6. Contactele unui buton nu se nchid perfect instantaneu la fiecare apsare, iar semnalul rezultat va prezenta
foarte multe zgomote / oscilaii imediat dup apsare.
7. Este o instruciune lung care nu poate fi extras din memorie ntr-un singur ciclu.

Rspunsuri cap. 8 - Temporizri hardware
1. Temporizrile software se realizeaz pe baza timpului de execuie al instruciunilor
Temporizrile hardware se realizeaz cu circuite specializate denumite timere
2. Vezi paragraful 8.1.1
3. Accesul simultan la coninutul regitrilor.
4. 1.39secunde. Se poate fixa o baz de timp de 1 secund i un contor care s se incrementeze la fiecare
ntrerupere. Cnd contorul ajunge la valoarea 60 a expirat 1 minut.
5. Permite incrementarea numrtorului la n impulsuri de intrare.
6. Indic expirarea temporizrii
7. Se utilizeaz relaa (8.1) i rezult Predivizor = 256, TMR0H:TMR0L=60848, timer pe 16 bii
8. movlw b01001101 ;prediv. 1:4, postdiv. 1:10
movwf T2CON ;timer 2 pornit
movlw d249
movwf PR2
9. Vezi paragraful 8.1.2
10. Se oprete oscilatorul principal al microcontrolerului pn la apariia unei ntreruperi

Rspunsuri cap. 9 - Sistemul de ntreruperi
1. Vezi Fig. 9.2 i 9.4 i explicaiile adiacente
2. Vezi paragraful 9.2.2
3. xxxIF, xxxIE, xxxIP. Pentru detalii suplimentare vezi paragraful 9.2.1 i 9.2.2
4. Vezi capitolul 5, paragraful 5.2 i paragraful 9.2.1
5. Interogare: testarea periodic prin program a tuturor indicatorilor de stare
Intrerupere: mecanismul de suspendare al firului de execuie la apariia unui eveniment ;i de execuie a
unei rutine de tratare a ntreruperii
6. Vezi paragraful 9.3.1
INDICAII I RSPUNSURI
300
Rspunsuri cap. 10 - Convertorul analog-digital
1. Vezi Fig. 10.9 i explicaiile adiacente
2. Vezi paragraful 10.1, Fig. 10.1 i Fig. 10.2
3. Timpul de achiziie reprezint timpul necesar stabilizrii tensiunii de intrare n vederea realizrii
conversiei. Acest timp poate fi asigurat manual prin implementarea unor ntrzieri n program, sau poate fi
asigurat automat de modulul de conversie A/D avnd o durat cuprins ntre 2T
AD
i 20T
AD
n funcie de
configurare.
4. Vezi ultimul exemplu
5. Dac se opteaz pentru referine externe, atunci V
REFH
ar trebui s fie cuprins ntre V
dd
/2 i V
dd
+0.6V, iar
V
REFL
ntre V
dd
-3V i Vss-0.3V. Indiferent de situaie, diferena ntre tensiunile de referin utilizate ar
trebui s fie nu mai puin de 3V pentru V
dd
3V i 1.8V pentru V
dd
<3V.

Rspunsuri cap. 11 - Modulul CCP
1. Vezi paragraful 11.2.1
2. Vezi paragraful 11.3.1
3. se utilizeaz biii T3CCP2:T3CCP1 din registrul T3CON[6,3]
4. Vezi paragraful 11.2.1 i Fig. 11.4-a,b
5. Se va utiliza un modul CCP n mod de lucru Comparare cu schimbarea strii pinului de ieire. Timerul va
trebui configurat n aa fel nct s permit realizarea unei temporizri cu o durat mai mare dect cea a
factorului de umplere. Regitrii de date ai modulului CCP vor trebui iniializai cu valoarea
corespunztoare realizrii factorului de umplere.
Pentru detalii suplimentare vezi exemplul din paragraful 11.3.2
6. Prin modificarea valorii de 10 bii stocate n CCPRxL:CCPxCON<5:4>

Rspunsuri cap. 12 - COMUNICAII SERIALE
1. #define SDO LATAbits.LATA0
#define SCK LATAbits.LATA1
#define SDI PORTAbits.RA2

unsigned char spi_rw(unsigned char out_data)
{
int i;
unsgined char in_data;
SCK = 0;

for(i=0; i<8; i++) //8 iteratii
{
if(out_data&0x80) //testeaza MSB
SDO = 1;
else
SDO=0;
SCK = 1; //impuls
SCK = 0;
out_data=out_data<<1; //deplasare

in_data = in_data<<1; //deplasare la stanga
if(SDI) //testeaza SDI
in_data = in_data | 0x01; //setare bit 0 daca SDI=1
else
in_data = in_data & 0xFE; //resetare bit 0 daca SDI=0
}

return in_data;
}
2. Se poate implementa verificarea paritii
Se poate implementa o comunicaie serial cu adresare (pentru detalii vezi Cap. 12.3.7)
3. Vezi Cap. 12.2
4. Vezi Cap. 12.3.4
5. Vezi Cap. 12.3.7
SISTEME CU MICROPROCESOARE. MICROCONTROLERUL PIC18F4455
301
6. //initializarea
TRISCbits.TRISC6 = 1;
TRISCbits.TRISC7 = 1;
TXSTAbits.BRGH = 1;
BAUDCONbits.BRG16=0;
SPBRG = 129;
TXSTAbits.SYNC = 0;
RCSTAbits.SPEN = 1;
BAUDCONbits.RXDTP=0;
BAUDCONbits.TXCKP=0;

TXSTAbits.TXEN = 1;
TXSTAbits.CREN = 1;
//transmisia
TXREG = A;
while(TXSTAbits.TRMT==0);
//receptia
while(PIR1bits.RCIF==0);
PIR1bits.RCIF==0
data = RCREG;

Rspunsuri cap. 13 Magistrala serial universal
1. Vezi paragraful 13.2
2. Vezi introducerea la paragraful 13.3
3. Vezi exemplul din paragraful 13.3.2
4. Vezi Fig. 13.2 i codul surs din paragraful 13.6.3
5. Vezi paragraful 13.5.2


15.2 INDICAII I RSPUNSURI LA TESTELE DE EVALUARE

Grila de evaluare: Cap. 1 Arhitectura general
1. Adevrat
2. decodificare instruciune /
citire date /
procesare date /
scriere date
3. Crete numrul de instruciuni care pot fi procesate simultan
4. un sistem de calcul /
unitatea central de prelucrare, memoria i echipamentele de intrare ieire
5. Arhitectura unui sistem de calcul care utilizeaz un set redus de instruciuni
6. Arhitectura Harvard utilizeaz spaii de memorie distincte pentru date i pentru program mpreun cu
magistralele asociate, iar arhitectura von Neuman dispune de un spaiu de stocare comun pentru date i
program.
7. Fals
8. Fals
9. Adevrat
10. 12

Grila de evaluare: Cap. 2 - Setul de instruciuni
1. fals
2. f, d
3. Specific locul unde va fi depus rezultatul produs de anumite instruciuni. Dac bitul d=0 rezultatul va fi
stocat n WREG. Dac bitul d=1 rezultatul va fi stocat n registrul f.
4. 60
INDICAII I RSPUNSURI
302
5. RETURN, BC
6. Instruciunile de salt condiionat realizeaz saltul la o instruciune destinaie dac rezultatul operaiilor
anterioare ndeplinete anumite criterii care pot fi verificate prin intermediul biilor indicatori din registrul
STATUS
Instruciunile de salt necondiionat vor realiza saltul relativ sau absolut prin modificarea direct a valorii
numrtorului program fr testarea vreunei condiii n prealabil.
7. adevrat
8. Fals
9. fals
10. MOVF, MOVWF, MOVLW
11. Instruciunea e incorect
12. Fals

Grila de evaluare: Cap. 3 - Organizarea memoriei
1. Adevrat
2. 21 bii
3. Specific modul de formare al adresei registrului accesat. Dac bitul a=0 (a=ACCESS) registrul accesat
se gsete n Access Bank. Dac bitul a=1 (a=BANKED) la formarea adresei complete se ia n
considerare coninutul registrului BSR.
4. 1 i 3
5. Adresa instruciunii care urmeaz instruciunii de apel de subrutin
6. Fals
7. Fals
8. 1, 3 i 4
9. 1, 2 i 3
10. Adevrat

Grila de evaluare: Cap. 4 - Adresarea memoriei de date
1. Constant
2. Adresare indirect
3. POSTINCn: acceseaz coninutul de la adresa stocat n FSRn, apoi incrementeaz automat cu 1 aceast
adres
4. 1 i 3
5. Fals
6. 2 i 3
7. Nu....
8. 1,2 i 4

Grila de evaluare: Cap. 5 - Structuri de program
1. Fals
2. Apelul unui macro
3. Deoarece subrutinele i macrourile pot modifica starea unor regitri utilizai n exteriorul acestora. Vezi
exemplul din curs.
4. Adevrat
5. Utilizarea stivei rapide.
6. Fals
7. Tablou:
MOVLW d100
MOVWF 0x00
MOVLW d101
MOVWF 0x01
[]
RETURN
8. Toate cele 4 cazuri
9. Fals
10. Da...


SISTEME CU MICROPROCESOARE. MICROCONTROLERUL PIC18F4455
303
Grila de evaluare: Cap. 6 - Porturi de intrare-ieire
1. Fals
2. Varianta 3 i 4
3. Se citete starea pinilor de ieire care este identic cu starea biilor de registrul de date
4. Adevrat
5. Nici o variant
6. BSF LATB,2
NOP
BCF LATB,2
7. b00111111
8. Fals
9. Realizarea unei baleeri a digiilor unui afiaj care const n selectarea pe rnd a cte unui digit al afiajului,
trimiterea valorii dorite ctre acesta, selectarea digitului urmtor etc.
10. Varianta 2 i 4
11. 0 logic

Grila de evaluare: Cap. 7 - Temporizri software
1. Adevrat
2. Nici o variant
3. Temporizri realizate pe baza timpului de execuie al instruciunilor
4. 25s
5. Delay macro
NOP
NOP
NOP
NOP
NOP
6. 0.08s
7. MOVFF, GOTO

Grila de evaluare: Cap. 8 - Temporizri hardware
1. Pentru a putea detecta expirarea unei noi temporizri
2. Adevrat
3. 1 i 4
4. La citirea registrului TMR0L se transfer octetul superior al numrtorului din TMR0HB n TMR0H.
La scrierea registrului TMR0L se transfer octetul coninutl din TMR0H n TMR0HB.
5. Este bitul indicator de ntrerupere al timerului 0
6. Vezi paragraful 8.3.1
7. Conine valoarea cu care se compar TMR2
8. 1 i 3
9. Adevrat
10. Fals
11. Timer3 poate utiliza trei surse de incrementare
12. Testeaz bitul indicator de ntrerupere

Grila de evaluare: Cap. 9 - Sistemul de ntreruperi
1. Rutina de tratare a ntreruperii se va executa la nesfrit
2. bit de activare/dezactivare care permite selectarea individual a surselor de ntrerupere utilizate
3. Fals
4. Nici o variant
5. Interogare: testarea periodic prin program a tuturor indicatorilor de stare
Intrerupere: mecanismul de suspendare a firului de execuie la apariia unui eveniment i de execuie a unei
rutine de tratare a ntreruperii
6. se termin execuia instruciunii curente; se salveaz adresa de revenire; se execut rutina de tratare a
ntreruperii pn la RETFIE; se reia execuia programului din locul unde a fost ntrerupt
7. 1,2,4
8. Ridicat
9. Activeaz sistemul de prioriti
INDICAII I RSPUNSURI
304
10. Dezactiveaz toate ntreruperile

Grila de evaluare: Cap. 10 - Convertorul analog-digital
1. Vezi paragraful 10.1, Fig. 10.1 i Fig. 10.2
2. Acest timp poate fi asigurat manual prin implementarea unor ntrzieri n program de minim 3s, sau poate
fi asigurat automat de modulul de conversie A/D avnd o durat cuprins ntre 2T
AD
i 20T
AD
n funcie de
configurare.
3. Variantele 1 i 4
4. 471
5. Adevrat
6. Fals
7. Variantele 2,3,4
8. Crete cu temperatura
9. 4T
OSC
, 8T
OSC,
16T
OSC

10. Testeaz sfritul conversiei A/D

Grila de evaluare: Cap. 11 - Modulul CCP
1. 4ms
2. Varianta 2
3. Rspunsul n paragraful 11.2.1
4. Variantele 1,2,3
5. Varianta 1
6. Rspunsul n paragraful 11.3.1
7. adevrat
8. Variantele 1 i 4
9. Variantele 1 i 4
10. fals
11. adevrat
12. adevrat

Grila de evaluare: Cap. 12 Comunicaii seriale
1. Adevrat
2. Fals
3. 1 i 3
4. 1 i 4
5. Fals
6. Vezi dicionar
7. 2
8. Fals
9. Asigur tactul de sincronizare
10. 3
11. Vezi cap. 2.3.7
12. fals
13. 2
14. adevrat
15. 1,2,3
16. RCIE, BRG16, SPEN, SYNC, TX9, ADDEN
17. Fals

Grila de evaluare: Cap. 13 Magistrala serial universal
1. Un transfer USB presupune realizarea mai multor tranzacii. n general fiecare tranzacie presupune
schimbul a trei pachete: antet, date i confirmare
2. Adevrat
3. Fals
4. Varianta 1,2,3
5. Varianta 1
SISTEME CU MICROPROCESOARE. MICROCONTROLERUL PIC18F4455
305
6. Ambele variante
7. Varianta 1
8. Varianta 1
9. Fals
10. Adevrat

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