integrisani racunarski sistemi tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · integrisani...

36
Integrisani raˇ cunarski sistemi Tajmeri Odsek za elektroniku Univerzitet u Beogradu - Elektrotehniˇ cki fakultet poslednja izmena 21. mart 2019 Odsek za elektroniku 13E044IRS ETF Beograd 1 / 36

Upload: others

Post on 15-Jul-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Integrisani racunarski sistemiTajmeri

Odsek za elektroniku

Univerzitet u Beogradu - Elektrotehnicki fakultet

poslednja izmena 21. mart 2019

Odsek za elektroniku 13E044IRS ETF Beograd 1 / 36

Page 2: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 2 / 36

Page 3: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 3 / 36

Page 4: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Tajmer A

Tajmer A je 16-bitni tajmer sa nekoliko capture/compare blokova, cijibroj varira kod razlicitih predstavnika familije od 3 do 7

Odsek za elektroniku 13E044IRS ETF Beograd 4 / 36

Page 5: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Modovi rada brojaca TAxR

Odsek za elektroniku 13E044IRS ETF Beograd 5 / 36

Page 6: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Brojac na gore (UP mod)

Po dostizanju vrednosti TAxCCR0 setuje se CCIFG fleg a pri resetovanjubrojaca na 0x0000 setuje se TAxIFG fleg

Odsek za elektroniku 13E044IRS ETF Beograd 6 / 36

Page 7: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Kontinualni brojac (Continuous mod)

Tajmer uvek broji od 0x0000 do 0xffff.

Ovaj nacin brojanja u COMPARE modu tajmera je pogodan zagenerisanje signala razlicitih ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 7 / 36

Page 8: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

UP/DOWN brojac

Odsek za elektroniku 13E044IRS ETF Beograd 8 / 36

Page 9: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

CAPTURE/COMPARE blokovi

Svaki CC blok moze da radi u CAPTURE ili COMPARE modu. To jeodredeno bitom CAP u kontrolnom registru TAxCCTLn

CAPTURE mod se koristi za merenje ucestanosti, tj. intervala izmeduuzastopnih dogadaja na nekom pinu. Svaka promena na odredenompinu kopira trenutnu vrednost brojaca TAxR u odgovarajuci TAxCCRnregistar is setuje odgovarajuci CCIFG fleg.

COMPARE mod se koristi za generisanje PWM-a i signala razlicitihucestanosti. Svako izjednacavanje vrednosti brojaca TAxR sa vrednoscuu TAxCCRn registru setuje odgovarajuci TAxCCRn CCIFG fleg

Odsek za elektroniku 13E044IRS ETF Beograd 9 / 36

Page 10: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Izlazna jedinica

Svaki CC blok sadrzi izlaznu jedinicu koja se koristi za generisanjesignala kao sto je PWM

Izlazna jednica moze da radi u osam razlicitih modova

Odsek za elektroniku 13E044IRS ETF Beograd 10 / 36

Page 11: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Rad izlaznog bloka za brojac u modu brojanja na gore

Odsek za elektroniku 13E044IRS ETF Beograd 11 / 36

Page 12: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Rad izlaznog bloka za brojac u UP/DOWN modu brojanja

Odsek za elektroniku 13E044IRS ETF Beograd 12 / 36

Page 13: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Prekidi Tajmera A

Dva prekidna vektora su povezana sa tajmerom A:TAxCCR0 vektor za TAxCCR0 CCIFG flegTAxIV vektor za ostale CCIFG flegove i TAxIFG

U CAPTURE modu CCIFG fleg se setuje kada se na spoljni dogadajregistar TAxCCRn napuni vrednoscu brojaca TAxR

U COMPARE modu CCIFG fleg se setuje kada vrednost brojaca TAxRdostigne vrednost u TAxCCRn registru

TAIFG fleg se setuje kada vrednost brojaca TAxR dostigne 0x0000

Unutar TAxIV prekida se poliranjem odreduje koji je dogadaj izazvaoprekid

Odsek za elektroniku 13E044IRS ETF Beograd 13 / 36

Page 14: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Registar prekidnih vektora

Odsek za elektroniku 13E044IRS ETF Beograd 14 / 36

Page 15: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Primer prekidnih rutina tajmera A

Odsek za elektroniku 13E044IRS ETF Beograd 15 / 36

Page 16: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 16 / 36

Page 17: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Tajmer B

Odsek za elektroniku 13E044IRS ETF Beograd 17 / 36

Page 18: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Tajmer B

Vrlo slicnih karakteristika kao i tajmer A

Razlikeizbor sirine brojackog registramogucnost grupisanja vise CC jedinicasvi izlazi mogu da se stave u stanje visoke impedanse

Odsek za elektroniku 13E044IRS ETF Beograd 18 / 36

Page 19: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 19 / 36

Page 20: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Opis hardvera

Vdd

Vdd

Vdd

Vdd

Vdd

Vdd

Vdd

Vdd

a gfedbc

SEL1

ga fedbc

SEL2

ga fedbc

SEL3

ga fedbc

SEL4

SEL1

SEL2

SEL3

SEL4

g

f

e

d

c

b

a

LD1

LD2

LD3

LD4

MSP430F5438A

P7.6

P7.7

P5.0

P5.1

P11.1

P11.0

P10.7

P10.6

P4.3

P4.4

P4.5

P4.6

P6.0

P6.1

P6.2

P6.3

P6.4

P6.5

P6.6

ULN2003A

P1

P2

P3

P4

Odsek za elektroniku 13E044IRS ETF Beograd 20 / 36

Page 21: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 21 / 36

Page 22: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Debaunsiranje

Postoji vise nacina na koje tajmer moze da se iskoristi za debaunsiranjetastera

periodicno generisanje prekida, gde se u okviru prekidne rutineocitava stanje ulaznih pinova

moze samo da se poredi trenutno stanje sa prethodnimmoze i malo naprednije (Ganssle debaunsiranje)

po prijemu prekida sa ulaznog porta pokrece se rad tajmera, a poisteku perioda brojanja ocitaju se stanja tastera

Odsek za elektroniku 13E044IRS ETF Beograd 22 / 36

Page 23: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Detekcija pritiska tastera (samo tajmer)

ZadatakNapisati program za razvojni sistem koji na svaki pritisak jednogtastera menja stanje ukljucenosti LED diode

NapomeneIspitivanje da li je taster pritisnut vrsiti periodicnim poliranjempomocu tajmera

Potrebno je inicijalizovati tajmer da generise prekid sa periodomod 32msU okviru prekidne rutine tajmera treba ocitati stanje tastera iuporediti sa prethodnim stanjem

Resenjebutton-toggle-timer

Odsek za elektroniku 13E044IRS ETF Beograd 23 / 36

Page 24: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Detekcija pritiska tastera (prekid porta itajmer)

ZadatakNapisati program za razvojni sistem koji na svaki pritisak jednogtastera menja stanje ukljucenosti LED diode

NapomeneIspitivanje da li je taster pritisnut vrsiti pomocu prekidnih rutina portai tajmera

U prekidnoj rutini portapokrece se tajmer sa trajanjem 32mszabranjuje dalje generisanje prekida porta

U prekidnoj rutini tajmeraocitava se stanje tasteraiskljucuje se tajmerdozvoljava se prekid porta

Odsek za elektroniku 13E044IRS ETF Beograd 24 / 36

Page 25: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Detekcija pritiska tastera (prekid porta itajmer)

ZadatakNapisati program za razvojni sistem koji na svaki pritisak jednogtastera menja stanje ukljucenosti LED diode

NapomeneIspitivanje da li je taster pritisnut vrsiti pomocu prekidnih rutina portai tajmera

Resenjebutton-toggle-isr-timer

Odsek za elektroniku 13E044IRS ETF Beograd 25 / 36

Page 26: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 26 / 36

Page 27: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Multipleksiranje LED displeja

Sedmosegmentni LED displeji koji su postavljeni na ploci koristezajednicke linije a..g

za istovremeni prikaz razlicitih cifara potrebno je vrsitimultipleksiranje displejatreperenje se ne vidi ukoliko se prikaz na displejima menja saucestanoscu vecom od ∼ 100Hz

SEL1

SEL2

SEL3

SEL4

a..g D1 D2 D3 D4 D1

Odsek za elektroniku 13E044IRS ETF Beograd 27 / 36

Page 28: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Prikaz na multipleksiranom LED displeju

ZadatakNapisati program za razvojni sistem koji na multipleksiranom LEDdispleju prikazuje broj 1234

NapomeneMultipleksiranje LED displeja vrsiti pomocu tajmera

posto su nam potrebne cifre za prikaz, potrebno je iz brojaizdvojiti pojedinacne cifre

div i modshift and add 3 (double-dabble)MSP430 DADD

Odsek za elektroniku 13E044IRS ETF Beograd 28 / 36

Page 29: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Shift and add 3 (double-dabble)

iterativan algoritam, ne zavisi od dostupnog hardverasastoji se iz serije pomeranja bita i sabiranja

Ako je binarni zapis BIN = bin7..bin0 a BCD zapisBCD = bcd11..bcd0 = D2D1D0 (posmatramo samo trocifrene brojevemanje od 256), algoritam je

bcd11..bcd0 = 000..00

onoliko puta koliko BIN ima bitaako je Di >= 5 dodaje se 3 na Di

siftuje se BCD za jedno mesto ulevobcd0 = bin15

siftuje se BIN za jedno mesto ulevo

Odsek za elektroniku 13E044IRS ETF Beograd 29 / 36

Page 30: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

MSP430 DADD

MSP430 ima DADD – Decimal add instrukcijusabiranje brojeva koji su dati u BCD koduprimenom Hornerovog algoritma mozemo iterativno od binarnogbroja pomocu DADD instrukcije doci do BCD zapisa

Ako je BIN = bin7..bin0 i BCD = bcd11..bcd0, algoritam je

1 BCD = 02 onoliko puta koliko BIN ima bita, pocev od MSB indeksa

1 BCD = (BCD << 1)|bini, odnosno

RLA BIN ; BIN MSB to carryDADD BCD,BCD ; BCD = BCD<<1 + C

Odsek za elektroniku 13E044IRS ETF Beograd 30 / 36

Page 31: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Prikaz na multipleksiranom LED displeju

ZadatakNapisati program za razvojni sistem koji na multipleksiranom LEDdispleju prikazuje broj 1234

NapomeneMultipleksiranje LED displeja vrsiti pomocu tajmera

Resenjetimer-multiplex

Odsek za elektroniku 13E044IRS ETF Beograd 31 / 36

Page 32: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 32 / 36

Page 33: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – PWM

Napisati program za razvojni sistem kojim se podesava intenzitetosvetljaja LED diode. LED dioda se pobuduje PWM signalom koji segenerise pomocu tajmera B, a intenzitet osvetljaja se podesava jednimtasterom u 16 koraka.

NapomeneIntenzitet osvetljaja diode je proporcionalan faktoru ispunjenostiimpulsa PWM signala

Resenjetimer-pwm-led

Odsek za elektroniku 13E044IRS ETF Beograd 33 / 36

Page 34: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Pregled

1 Tajmer A

2 Tajmer B

3 PrimeriDebaunsiranjeMultipleksiranje LED displejaPWMMerenje ucestanosti

Odsek za elektroniku 13E044IRS ETF Beograd 34 / 36

Page 35: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Merenje ucestanosti

Napisati program za razvojni sistem kojim se pomocu CAPTUREfunkcionalnosti tajmera A meri ucestanost spoljasnjeg signala.Ucestanost prikazati u hercima na multipleksiranom LED displeju.

Napomenesignal se generise pomocu tajmera B, CC izlaz 1 (pin P4.1)signal se ocitava na CC ulazu 2 (pin P1.3) tajmera A

potrebno je meriti broj tick-ova tajmera izmedu uzastopnih uzlaznihivicana osnovu ucestanosti tajmera moguce je izracunati ucestanostsignala

Odsek za elektroniku 13E044IRS ETF Beograd 35 / 36

Page 36: Integrisani racunarski sistemi Tajmeritnt.etf.bg.ac.rs/~oe4irs/pdf/vezbe/irs2.pdf · Integrisani racunarski sistemi Tajmeri Author: Odsek za elektroniku Created Date: 3/21/2019 12:54:30

Zadatak – Merenje ucestanosti

Napisati program za razvojni sistem kojim se pomocu CAPTUREfunkcionalnosti tajmera A meri ucestanost spoljasnjeg signala.Ucestanost prikazati u hercima na multipleksiranom LED displeju.

Napomenesignal se generise pomocu tajmera B, CC izlaz 1 (pin P4.1)signal se ocitava na CC ulazu 2 (pin P1.3) tajmera A

Resenjetimer-freq-meas

Odsek za elektroniku 13E044IRS ETF Beograd 36 / 36