AD konvertor sa integrisanim kolom ADC0804 i PIC16F877 mikrokontrolerom

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "AD konvertor sa integrisanim kolom ADC0804 i PIC16F877 mikrokontrolerom"

Transcript

1 Elektronski fakultet u Nišu Mikroprocesorski sistemi AD konvertor sa integrisanim kolom ADC0804 i PIC16F877 mikrokontrolerom Mentor: Studenti: Prof.Dr Mile Stojčev Branko Stojić Milan Stojiljković 10991

2 Sadržaj: UVOD 3 1.AD KONVERZIJA Uvod u a/d konvertore Integrirajući a/d konvertor Prateći a/d konvertor Adc sa sukcesivnom aproksimacijom (sar) Sigma-delta a/d konvertori Fleš a/d konvertori Prenosna funkcija a/d konvertora Greške a/d konvertora 27 2.MIKROKONTROLER Osnovne karakteristike mikrokontrolera Kratak opis mikrokontrolera PIC16F Raspored no`ica Generator takta (Oscilator) Takt/instrukciski ciklus Reset Watchdog timer Prekidi U/I Portovi A/D konverzija Strujna,naponska i temperaturna ograni~enja Organizacija memorije Tajmeri CCP moduli Ostale periferne jedinice 64 3.HARDVER Funkcionalna i blok šema Ispravljački stepen sa stabilizacijom napona AD konvertor ADC Ulazni stepen AD konvertora ADC Povezivanje kola za reset i oscilatora Kontrolna logika Povezivanje LCD-a Fizički izgled štampanih pločica Spisak korišćenih komponenata

3 4. SOFTVER Korišćeni softver; MPLAB, Hi - Tech, Ic Prog Listing programa; u C-u, asembleru, heksadecimalnog kôda TESTIRANJE AD KONVERTORA DODATK Specifikacije pojedinih komponenti 7. DODATK AllPic Programator 8. DODATK Izgled realizovanog uređaja 9. AUTORI PROJEKTA KORIŠĆENA LITERATURA

4 UVOD Kao prvo, autori ovog projekta želeli bi da se zahvale Elektronskom fakultetu u Nišu o posebno Prof.Dr Miletu Stojčevu koji su omogućili realizaciju ovog projekta, kao i na ukazanoj mogućnosti proširivanja i sticanja znanja iz oblasti koje su pokrivene ovim projektom. U ovom projektu autori su izveli praktičnu realizaciju A/D konvertora sa integrisanim kolom ADC0804, koje je kontrolisano mikrokontrlerom PIC16F877, gde se rezultat A/D konverzije prikazuje na LCD-u. Takođe u ovom radu koji je sastavni deo ovog projekta data je teorijska osnova kao i konkretna objašnjenja vezana za samu realizaciju. U prvom poglavlju obrađene su teorijske osnove A/D konverzije; bitni parametri tog procesa kao i principe rada najčešće korišćenih A/D konvertora: integrirajući ADC, prateći ADC, ADC sa sukcesivnom aproksimacijom, sigma-delata ADC, fleš ADC. Gde nam je od posebnog interesa A/D konvertor sa sukcesivnom aproksimacijom, s obzirom da integrisano kolo ADC0804 spada u kategoriju istih U drugom poglavlju opisan je mikrokontroler PIC16F877: arhitektura, mogućnosti i specifikacije. Treće poglavlje se bavi konkretnom realizacijom hardvera; prikazani su električna šema i izgled štampane ploče projekta sa objašnjenjima uloga i funkcija komponenata u kolu, kao način povezivanja i kontrolna logika između njih samih. U četvrtom poglavlju prikazan je softver koji je korišćen za pisanje programa i za programiranje mikrokontrolera, takođe je prikazan i listing programa u C-u, asembleru, kao i izgled heksadecimalnog kôda. Peto poglavlje je posvećeno testiranju realizovanog AD konvertora. U dodatku 1 priložene su fizičke karakteristike korišćenih komponenata. Dodatak 2 posvećen je programatoru. U dodatku 3 prikazan je fizički izgled realizovanog uređaja. Pri kraju rada je dat spisak literature koja je korišćena

5 1. ANALOGNO-DIGITALNA KONVERZIJA 1.1. UVOD U A/D KONVERTORE Analogno-digitalna konverzija predstavlja generisanje digitalnog kodovanog broja koji odgovara analognom ulaznom signalu. Elektronsko kolo koje vrši kon-verziju naziva se analogno-digitalni konvertor, ili skraćeno A/D konvertor (ADC). Kod savremenih tehnika merenja, dominantnu grupu instrumenata i merne opreme, čine digitalni merni instrumenti. Oni često ne samo da poseduju napred-nije performanse u odnosu na odgovarajuće analogne instrumente (brzina, propusni opseg, pouzdanost, otpornost na smetnje, minijaturizacija, itd.), već imaju i znatno nižu cenu, a omogućavaju i veoma jednostavnu automatizaciju procesa merenja. Nažalost, veličine koje je potrebno dovesti na ulaze u merni sistem, samo su u veoma malom broju slučajeva, po svojoj prirodi digitalne. Pa čak i tada, često je potrebno analizirati parametre ovih digitalnih veličina na najnižem, fizičkom nivou, naročito u postupcima overe i atestiranja sistema ili dijagnostike, kod neregularnog rada usled otkaza ili ispada. Sa stanovišta merenja, jedini način da se ovakvi signali ispravno okarakterišu i u tim situacijama, jeste da se tretiraju kao analogne veličine i opišu odgovarajućim analognim parametrima. Elementaran analogno-digitalni konvertor je naponski komparator. Ulazni analogni signal -V ul, komparator konvertuje u jednobitnu digitalnu informaciju D=d 0, tako da d 0 =0 označava da je V ul <V 1, a d 0 =1 da je V ul >V 1, gde je V 1 unapred određen naponski prag. Ako je potrebno da se veličina analognog napona odredi sa većom preciznošću i predstavi u digitalnom obliku, potrebno je porediti ulazni napon sa više naponskih pragova. Šema ovakvog jednog konvertora prikazana je na Slici 1.1. Sl.1.1. Principijelna šema A/D konvertora Na Slici 1.1. je prikazana principijelna šema A/D konvertora koja sadrži m komparatora i koder sa m ulaza i n izlaza. Ako se naponi V i rasporede ekvidistantno unutar naponskog opsega od 0 do V ps, na osnovu izlaza kom-paratora k i može da se odredi u kom se naponskom opsegu nalazi ulazni signal V ul. Digitalnu informaciju sa komparatora koder koduje u digitalni broj izabranog binarnog brojnog sistema. Na Slici 1.2. prikazana je idealna karakteristika prenosa A/D konvertora u slučaju da postoji 8 nivoa komparacije ulaznog napona

6 Sl.1.2. Karakteristika prenosa idealnog A/D konvertora Ako se ulazni napon linearno menja od 0 do napona pune skale V ps, izlazna digitalna informacija može da ima m + 1 = 9 diskretnih stanja: 0 za V ul <V 1, 1 za V 1 <V ul <V 2, 2 za V 2 <V ul <V 3,... 7 za V 7 <V ul <V 8 i ''PREKORAČENJE'' ako je ulazni napon V ul >V 8. Karakteristika prenosa na Slici 1.2. pretpostavlja ekvidistantno raspoređene napone V i, idealne komparatore bez histerezisa i nulto vreme propagacije signala kroz komparatore i koder. Realna karakteristika prenosa će odstupati od idealne i mogu se definisati statičke i dinamičke greške koje unosi realan A/D konvertor. Statičke karakteristike A/D konvertora se definišu tako što se definišu apsolutna linearnost, greška (ofset) nule, greška pune skale, greška pojačanja i diferencijalna linearnost. U slučaju velike diferencijalne nelinearnosti, kada je narušena monotonost karakteristike prenosa, za A/D konvertore se češće koristi termin "izgubljen kod" (missed code), umesto nemonotonost. Pošto je izlazna informacija A/D konvertora digitalni broj, dinamičke karakte-ristike A/D kovertora se svode na specificiranje potrebnog vremena da se od trenutka početka konverzije na izlazu A/D konvertora postavi digitalni ekvivalent ulaznog analognog signala. Ovo vreme se naziva vreme konverzije. Rezolucija, odnosno, broj nivoa kvantizacije ulaznog signala se najčešće definiše brojem bita izlazne digitalne informacije, ako je primenjen prirodni binarni kod, ili brojem decimalnih cifara, za A/D konvertore koji generišu izlaznu informaciju u BCD kodu. Povećanje rezolucije A/D konvertora sa Slike 1.1. se može postići jedino povećanjem broja naponskih nivoa, odnosno, brojem komparatora. Za povećanje rezolucije za samo jedan bit, potrebno je duplirati broj komparatora i srazmerno proširiti kombinacionu mrežu kodera. Tako je za 8-bitni konvertor potrebno 256 komparatora. Pošto je u praksi potrebno obavljati A/D konverziju i sa mnogo većom rezolucijom, direktna konverzija sa 2 n komparatora i kodne mreže postaje neekonomična zbog velikog broja kompo-nenti. U cilju smanjenja broja sastavnih elektronskih kola, primenjuju se različite metode za A/D konverziju. Uglavnom se A/D konvertori klasifikuju po načinu ili brzini konverzije. Najčešće se proizvode i koriste tri klase A/D konvertora: - 5 -

7 Vrlo brzi A/D konvertori, formirani korišćenjem paralelnih komparatora koji se jos nazivaju i direktni ili fleš A/D konvertori. Konvertori srednje brzine, koji napon na ulazu porede sa referentnim naponom generisanim D/A konvertorom. Konvertori male brzine, koji najčešće proces konverzije napona u digitalni broj obavljaju merenjem vremena za koje napon, koji raste linearno sa vremenom, dostigne vrednost ulaznog napona. Ovakvi konvertori se još nazivaju i serijski A/D konvertori, A/D konvertori sa vremenskim ekviva-lentom, ili integratorski A/D konvertori INTEGRIRAJUĆI A/D KONVERTOR Integrirajući A/D konvertori nazivaju se još i konvertori sa vremenskim ekvivalentom, jer se A/D konverzija odvija kroz proces kvantizacije vremenskog intervala koji predstavlja ekvivalent naponu na ulazu u konvertor. Kod startnog i pratećeg konvertora etaloni su iste prirode kao i merena veličina, tako da je njen digitalni ekvivalent iznalažen direktnim brojanjem kvantizacionih nivoa. Umesto stepenastog referentnog napona sa kojim se poredi analogni odmerak signala, može se upotrebiti i kontinualni monotono opadajući ili rastući napon. Pošto je i taj napon analogni, ne možemo pomoću njega ostvariti direktnu kvantizaciju ulaznog signala, ali ako poznajemo vremensku zavisnost monotono promenljivog napona kvantizacije može se izvesti pomoću pogodno odabranog etalona vremena. Kod ovog tipa A/D konvertora, konverzija se odvija u dva koraka: Transformacija ulaznog napona u vremenski interval Kvantizacija dobijenog vremenskog intervala. Vremenski interval se dobija sa inegratora koji je prikazan na Slici 1.3. Napon na kondenzatoru je jednak: Sl.1.3. Integrator - 6 -

8 Integrirajući A/D konvertori mogu se koristiti za konverziju podataka sa visokom tačnošću i malom brzinom. Ovi A/D konvertori su spori jer su signali sporopromenljivi. Greška ofseta kod ovih konvertora je mala i mogu imati visoku linearnost. Što se tiče upotrebe ovih konvertora, oni imaju široku upotrebu u mernim instrumentima za merenje napona i struje. Osetljivi su na promene temperature. Imamo dva tipa integrirajućih A/D konvertora: Konvertor sa jednostrukim nagibom Konvertor sa dvostrukim nagibom Konvertori sa jednostrukim nagibom Konvertor sa jednostrukim nagibom transformiše ulazni signal u vreme. Da bi se ostvarila linearna zavisnost između veličine ulaznog napona i trajanja vremenskog intervala, referentni napon V R treba da se menja linearno sa vremenom. Da bi se to postiglo ulazni napon se generiše pomoću integratora. Na Slici 1.4. prikazana je šema A/D konvertora sa jednostrukim nagibom sa strujnim izvorom. Integrator čine kondenzator C i tranzistor TR 1. Tranzistor TR 1 upo-trebljen je kao prekidač preko koga se vrši resetovanje, odnosno pražnjenje kondenzatora C. Pre svakog ciklusa konverzije potrebno je resetovati kondenzator kao i brojač, što se postiže resetovanjem D flipflopa i pri tome izlaz Q kontrolnog kola obezbeđuje nizak napon na bazi tranzistora TR 1, pa tranzistor odlazi u zasićenje i na taj način prazni kondenzator C. Sl.1.4. Šema A/D konvertora sa jednostrukim nagibom sa strujnim izvorom - 7 -

9 Sl.1.5. Vremenski dijagram signala A/D konvertora sa jednostrukim nagibom Ciklus konverzije započinje setovanjem kontrolnog flipflopa. Visoki napon na izlazu Q blokira tranzistor TR 2, pa kondenzator C počinje da se puni konstantnom strujom tranzistora TR 1. Zahvaljujući tome napon na kondenzatoru V R raste linearno sa vremenom. Ovaj napon se dovodi na komparator radi poređenja sa analognim podatkom V A. Sve dok je V A > V R na komparatorskom izlazu k postoji visok nivo napona. Brojanje taktnih impulsa traje sve dotle, dok napon V R ne dostigne vrednost V A. Kada se izjednače ta dva napona komparator se prebacuje u stanje ligičke 0, čime je završen konverzacioni ciklus, a krajnji rezultat brojanja predstavlja digitalni ekvivalent ulazne analogne vrednosti. Prema tome, efektivno vreme konverzije započinje setovanjem kontrolnog flipflopa, a završava se izjednačavanjem ulaznog i referentnog napona. Ciklusno vreme konverzije uklju-čuje i vreme pražnjenja kondenzatora C. Vremenski dijagrami signala konvertora prikazanog na Slici 1.4. prikazani su na Slici 1.5. Struja punjenja kondenzatora C je konstantna i ona iznosi:, gde je V Z radni napon Zenerove diode. Vremenska zavisnost referentnog napona data je izrazom: Porast referentnog napona ograničen je uslovom:, odakle se nalazi vremenski ekvivalent analogne vrednosti: - 8 -

10 Ako se ovaj vremenski interval kvantuje periodom taktnog generatora T P, nalazi se da on sadrži N perioda. Iz jednakosti:, nalazi se da je: Gornji izraz pokazuje da je analogni napon V A proporcionalan broju impulsa N koji je odbrojan na binarnom brojaču, što znači da je prenosna karakteristika konvertora linearna. Opisani uređaj ponekad se naziva A/D konvertor sa širinskom modulacijom. To upravo znači da veličina analognog signala određuje vreme trajanja, odnosno širinu impulsa u toku koga se odvija proces brojanja. Posmatrano sa ovog stanovišta opisana konverzija je naročito pogodna za prenos informacija, pri čemu je dovoljno da se prenose samo start i stop impulsi vremenskih ekviva-lenata T i. Konvertori sa dvostrukim nagibom Tačnost A/D konvertora sa vremenskom kvantizacijom može da se poveća korišćenjem principa konverzije pomoću dvostrukog nagiba. Takav konvertor prikazan je na Slici 1.6. Sl.1.6. Blok šema A/D konvertora sa dvostrukim nagibom Integrator je izveden pomoću operacionog pojačavača OP. Start-komandom preko analognog prekidača AP zatvara se prekidač P 1, a otvara P 2. Napon na izlazu operacionog - 9 -

11 pojačavača počinje linearno da raste i čim pređe potencijal nule komparator K otvara I kolo za prolaz taktnih impulsa P T. Ovi impulsi pobuđuju binarni brojač sve dotle, dok svi njegovi stepeni ne pređu iz resetovanog u setovano stanje. Na Slici 1.7. predstavljen je vremenski dijagram signala koji se pojavljuju u A/D konvertoru prikazanom na Slici 1.6. Sl.1.7. Vremenski dijagram signala A/D konvertora sa dvostrukim nagibom Vreme T A, za koje će brojač stići od 0 do svoje maksimalne vrednosti određeno je kapacitetom brojača i učestanošću taktnog generatora. U toku tog vremena vrši se integracioni proces pod dejstvom ulaznog analognog napona V A, usled čega se na izlazu operacionog pojačavača formira linearni napon: Po isteku vremena T A ništa se nije izmenilo u pogledu dovođenja taktnih impulsa na brojač. Prvi impuls koji nailazi posle pojavljivanja maksimalne vrednosti brojača, vraća brojač ponovo u početno stanje, a kao posledica toga prebacuje se i analogni prekidač AP u drugi položaj. Prema tome, na operacionom pojačavaču započinje integracija pod dejstvom referentnog napona V R tako da se sada na njegovom izlazu formira opadajući linearni napon:

12 U toku formiranja ovog napona brojač ponovo odbrojava impulse sve dotle dok napon v VR (t) ne dostigne nulti potencijal, kada komparator k sprečava dalje pobuđivanje brojača. Prema tome, iz uslova v VR (T R )=0 nalazi se vremenski ekvivalent analognog napona: Ako se ovo vreme kvantuje periodom generatora T P, nalazi se da je:, gde je N broj primljenih impulsa u brojaču. Vidi se da je digitalni ekvivalent ulazne analogne vrednosti izražen brojem impulsa koje brojač primi u toku druge integracije. Primećujemo da kod A/D konvertora sa dvostrukim nagibom, za razliku od A/D konvertora sa jednostrukim nagibom, vremenska konstanta RC nema uticaja na proces konverzije, pa je time eliminisana i greška koju ona unosi. Šta više, konverzija ne zavisi ni od stabilnosti etalona tj. periode taktnog generatora, s obzirom da se i vreme T A meri istim etalonom. Prema tome, A/D konvertor sa dvostrukim nagibom odlikuje se velikom tačnošću, ali i vrlo malom brzinom konverzije. To je sasvim razumljivo kad se ima u vidu da ciklus konverzije obuhvata i vremenski period T A, koji je utoliko veći što je rezolucioni napon konvertora manji PRATEĆI A/D KONVERTOR Prateći A/D konvertor koristi D/A konvertor kao referencu za formiranje digitalnog ekvivalenta analognog signala. Logička šema pratećeg A/D konvertora prikazana je na Slici 1.8. Ovaj tip A/D konvertora je veoma jednostavne konstrukcije. Sastoji se od obostranog brojača, D/A konvertora i komparatora. Brojač se taktuje signalom TAKT, koji se može zabraniti signalom GATE, ako postavimo signal u stanje logičke nule GATE=0. Komparator poredi ulazni napon V ul sa izlaznim naponom iz D/A konvertora V iz. Ako je V ul > V iz izlaz komparatora je k=1, brojač broji unapred, povećava se sadržaj obostranog brojača, pa prema tome i napon V iz raste. Kada postane V ul < V iz, menja se stanje izlaza komparatora i brojač počinje da broji unazad. Ako V ul ne menja vrednost i ako je histerezis komparatora manji od 1 LSB, već nakon prvog taktnog impulsa napon V iz će ponovo postati manji od V ul, komparator će da promeni stanje, brojač će da promeni smer brojanja i napon V iz ponovo raste. Sve dok V ul ne promeni vrednost, brojač broji po jedan impuls napred, po jedan nazad, a napon V iz osciluje oko napona V ul za 1 LSB

13 Sl.1.8. Prateći A/D konvertor Vremenski dijagram promene napona V iz u funkciji promene ulaznog napona V ul prikazan je na Slici 1.9. Sl.1.9. Vremenski dijagram napona pratećeg A/D konvertora Za vreme dok je signal GATE na nultom logičkom nivou na brojač ne stižu taktni impulsi, brojač ne menja sadržaj tako da i napon na izlazu D/A konvertora ne menja vrednost. Kada je GATE=1, brojač u zavisnosti od logičkog nivoa izlaza komparatora broji unapred ili unazad, a napon na izlazu D/A konvertora teži da dostigne V ul i da prati promene V ul. Brzina promene napona V iz zavisi od periode taktnih impulsa t c. Minimalna vrednost t c je ograničena vremenom postavljanja D/A konvertora i kašnjenjem komparatora. Ako je promena napona V ul brža od maksimalne brzine promene V iz, izlazni digitalni kod, a time i napon V iz će da kasni u odnosu na ulazni napon. Pošto promenom učestanosti signala TAKT može da se menja brzina promene napona V iz, prateći A/D konvertor može da se koristi kao specifičan digitalno upravljiv filtar. Sa vremenskog dijagrama na Slici 1.9. vidi se da je, nakon što je u trenutku t 2 logički nivo signala GATE postao GATE=0, izlazni napon je zadržao vrednost koju je imao u t=t 2. Ovim je ostvarena funkcija analogno-digitalnog prati/pamti kola. Informacija o veličini napona u trenutku prebacivanja u režim "pamti" (t 2 ) je raspoloživa kako u digitalnom, tako i u analognom obliku i može ostati zapamćena neograničeno dugo, za razliku od analognih prati/pamti kola

14 1.4. ADC SA SUKCESCIVNOM APROKSIMACIJOM (SAR) A/D konvertori sa sukcesivnim aproksimacijama (SAR ADC) imaju malu potrošnju i zauzimaju relativno malo mesta na silicijumskoj pločici. Ova kombinacija performansi ih čini idealnim za veliki broj aplikacija kao što su: instrumenti koji su baterijski napajani, industrijska kontrola, akvizicija podataka i mnoge druge. SAR ADC su čest izbor za aplikacije sa srednjom i visokom rezolucijom i sa srednjom brzinom konverzije (od nekoliko μs do nekoliko desetina μs). Najčešće se biraju gde brzina odabiranja ne prelazi 5 μs, a opseg rezolucije SAR A/D konvertora je od 8 do 16 bita. Principijelna šema A/D konvertora sa sukcesivnim aproksimacijama data je na Slici Sl A/D konvertor sa sukcesivnim aproksimacijama Maksimalni ulazni napon koji se može priključiti na konvertor je V ulmax i on je jednak naponu pune skale V ps tj. V ulmax = V ps. Maksimalni izlazni napon iz D/A konvertora V iz je za 1 LSB manji od napona V ps. Pod ovakvim uslovima D/A konvertor će, kad je MSB bit postavljen na jedinicu (Q n-1 =1), a svi ostali na nulu, generisati napon V iz = V ps / 2. Sledeći bit (Q n-2 =1) ima težinu V ps /, odnosno, pošto se radi o binarnom D/A konvertoru, svaki sledeći bit ima težinu upola manju od predhodnog. Konverzija počinje tako što, nakon priključenog V ul, kontrolno logičko kolo postavi logičku jedinicu u bit najveće težine registra sukcesivnih aproksimacija (Q n-1 ). D/A konvertor generiše napon V iz = V ps / 2 koji se poredi sa V ul. Ako je V ul > V ps / 2, MSB bit digitalnog ekvivalenta napona V ul je jedan, a ako je V ul < V ps / 2, tada taj bit treba da bude nula. Kontrolna logika, na osnovu izlaza komparatora resetuje (ako je k=0), ili ne resetuje (ako je k=1) MSB flipflop u registru sukcesivnih aproksimacija, čime je definisan bit najveće vrednosti Q n-1 izlazne informacije, a zatim postavlja drugi bit po težini Q n-2 na logičku jedinicu. Komparator poredi novu vrednost V iz (koja je V ps / ili 3V ps / u zavisnosti dobijenog u poređenju sa bitom najveće vrednosti) sa V ul, a zatim kontrolna logika, na osnovu izlaza komparatora resetuje ili ne flipflop za taj bit (Q n-2 ) i definisana je vrednost bita drugog po težini. Kontrolna logika postavlja sledeći bit koji ima težinu upola manju od predhodnog na logičku jedinicu. Proces poređenja i postavljanja narednih flipflopova se nastavlja sve do bita najmanje težine Q 0. U zavisnosti od logičkog nivoa komparatora flipflop bita najmanje težine se resetuje ili ostaje logička jedinica. Time je konverzija završena. Kao primer, na Slici pokazan je vremenski dijagram napona V iz idealnog četvorobitnog A/D konvertora sa sukcesivnim aproksimacijama

15 Sl Promena napona D/A konvertora prilikom A/D konverzije Na slici je pretpostavljen ulazni napon 11/16 > V ul /V ps >5/8. Konverzija počinje postavljanjem koda "1000" u SAR (registar sukcesivnih aproksimacija). Izlazni napon D/A konvertora se postavlja na V iz = V ps / 2. Pošto je V ul > V iz, na osnovu k=1, u trenutku t 1 kontrolna logika ne resetuje Q 3, čime je određen MSB bit izlazne informacije, postavlja Q 2 =1, tako da je kod upisan u registar sukcesivnih aproksimacija (SAR) "1100", a izlazni napon D/A konvertora se postavlja na V iz =3 / V ps. Sada je V ul < V iz, kontrolna logika u trenutku t 2, na osnovu k=0 resetuje Q 2 i bezuslovno postavlja Q 1 =1. Ovim je određena i druga cifra izlazne digitalne informacije. SAR je postavljen u stanje "1010", a V iz na V iz = 5V ps /8. Pošto je V ul > V iz, k=1 zabranjuje da kontrolna logika resetuje Q 1, u trenutku t 3 postavlja se Q 0 =1, tako da je u SAR registru stanje "1011". U trenutku t se na osnovu k=0 resetuje Q 0, tako da je konačan rezultat konverzije koji je ostao u registru sukcesivnih aproksimacija Q 3 Q 2 Q 1 Q 0 ="1010", Što je najbliži binarni broj koji odgovara ulaznom naponu. Na istom vremenskom dijagramu na slici je isprekidanom linijom prikazan tok konverzije napona V ul < V ps / 16. Nakon četiri koraka sukcesivnih aproksimacija, kao rezultat konverzije se dobija stanje Q 3 Q 2 Q 1 Q 0 ="0000". Na osnovu sprovedene analize funkcionisnja A/D konvertora sa sukcesivnim aproksimacijama (skraćeno SAR ADK) mogu se definisati uslovi za sintezu registra sukcesivnih aproksimacija (SAR) i kontrolne logike (KL): Konverzija analognog signala u digitalni binarni kodovan broj od n cifara se obavlja u n+1 taktnom intervalu, od kojih prvi (t 0 ) inicijalizuje sekvencu sukcesivnih aproksimacija, a poslednji (t n ) označava kraj konverzije. Start konverzije se zadaje asinhrono u odnosu na taktni impuls A/D kon-vertora. Vreme između dva susedna taktna impulsa treba da je dovoljno dugačko, kako bi isteklo vreme postavljanja D/A konvertora, kašnjenja kroz kom-parator i kašnjenja kroz kontrolnu logiku. Korišćeni n-bitni D/A konvertor mora imati monotono rastuću karakteristiku prenosa (diferencijalnu linearnost bolju od ±0.5 LSB). Flipflopovi registra sukcesivnih aproksimacija (SAR registra) treba da imaju mogućnost pojedinačnog postavljanja i resetovanja

16 Ulazni napon V ul ne sme da se menja u toku konverzije, s obzirom da se flipflopovi postavljaju bit po bit, a već postavljeni flipflopovi, u slučaju promene V ul, ne mogu da promene stanje. Vreme konverzije A/D konvertora sa sukcesivnim aproksimacijama ja dato izrazom: t SARADK =(n+1)*t c, gde je n- broj bita konvertora, a T c - perioda ponavljanja impulsa CLK. Mini-malna perioda ponavljanja CLK zavisi od vremena postavljanja D/A konvertora, od kašnjenja kroz komparator i kašnjenja kroz registar sukcesivnih aproksimacija sa pripadajućim logičkim kolima. Dominantan uticaj na vreme konverzije ima vreme postavljanja D/A konvertora, pošto je ovo vreme često i za red veličine duže od ostalih kašnjenja u mreži. Tipično vreme konverzije za, na primer, dvanaestobitne integrisane SAR ADK je od 1μs za najbrže, do nekoliko desetina μs za sporije ADK. Brzina SAR ADK je ograničena sa: Vremenom smirivanja D/A konvertora Komparatorom, koji za određeno vreme mora da detektuje male razlike između napona V ul i V iz Vremenom izvršavanja logičkih operacija. Maksimalno smirivanje D/A konvertora je najčešće određeno smirivanjem MSB-a. Linearnost celokupnog A/D konvertora je limitirana linearnošću D/A konvertora. Zbog toga, SAR ADK-i čija rezolucija prelazi 12 bita često zahtevaju neku vrstu kalibracije ili dodavanje novih komponenti da bi se postigla potrebna linearnost. Dodavanje novih komponenti donosi sa sobom i problem slaganja (uparenosti) komponenti. Zbog svega navedenog, u praksi najčešće srećemo realizacije čija rezolucija ne prelazi 12 bita. Najvažnije prednosti A/D konvertora sa sukcesivnim aproksimacijama su mala potrošnja, visoka rezolucija, tačnost i to što zauzimaju malo mesta na sili-cijumskoj pločici. Glavna ograničenja u strukturi su mala brzina odabiranja, kao i zahtevi da tačnost pojedinih delova (kao što su D/A konvertor i komparator) bude na nivou tačnosti celog sistema SIGMA-DELTA A/D KONVERTORI Sigma-delta konvertori se karakterišu visokom rezolucijom, tačnošću, vi-sokom integrabilnošću i niskom cenom. Zbog navedenih osobina oni su veoma zastupljeni u komercijalnim aplikacijama kao sto su mobilna telefonija, ADSL tehnologija i mnoge druge. U samoj realizaciji možemo uočiti dve strane ovog konvertora: analognu stranu (jednostavna, čini je 1-bitni A/D konvertor) digitalnu stranu (kompleksnija). Blok šema sigma delta A/D konvertora prikazana je na Slici

17 Sl Blok šema sigma delta A/D konvertora Radi lakšeg razumevanja principa rada i strukture sigma-delta konvertora tekst je podeljen na sledeće delove: oversampling delta modulaciju uobličavanje spektra šuma (noise shaping) digitalno filtriranje decimaciju. OVERSAMPLING ( prekomerno odmeravanje ) Po teoremi o odabiranju, brzina odabiranja F mora biti barem dva puta veća od širine opsega ulaznog signala. Kada je F s > 2F b, to se zove oversampling. Na primer, neka je na ulaz običnog višebitnog A/D konvertora doveden sinusni signal koji se odabira frekvencijom koja je dva puta veća od njegovog opsega. Kada signal prođe kroz konvertor, na izlazu će se za rezultat dobiti koristan signal i mnoštvo nasumičnog šuma. Ovo je šum kvantizacije, koji je rezultat sledećeg: ulazni signal A/D konvertora je kontinualni signal sa beskonačnim brojem mogućih stanja, a digitalni izlaz je diskretna f-ja čiji je broj različitih stanja određen rezolucijom konvertora. Prema tome, AD konverzija gubi određen deo informacija i uvodi smetnje u signal. Amplituda ove greške je nasumična, sa vrednostima do ±LSB. Na Slici prikazan je koristan signal i šum u frekvencijskom domenu. Sl Signal na izlazu konvertora u frekvencijskom domenu kada je F s =2F b

18 Ako se posmatra isti ulazni signal,ali se frekvencija odabiranja poveća k puta, na kf, što je prikazano na Slici 1.14, vidi se da se nivo šuma smanjio, a energija šuma se rasporedila na veći frekvencijski opseg (pri tom je odnos signal/šum ostao isti). Propuštanjem ovakvog signala kroz digitalni filtar dobijaju se mnogo bolji rezultati nego što bi se dobili kada ne bi koristili oversampling. Prikaz signala propuštenog kroz digitalni filtar dat je na Slici Sl Signal na izlazu konvertora kada je brzina odabiranja povećana k puta Sl Odziv digitalnog filtra nakon oversampling-a DELTA MODULACIJA U osnovi ideje delta modulacije je digitalni prenos razlike susednih odbiraka analognog ulaznog signala, čime se smanjuje količina prenesenih podataka. Za demodulaciju koristi se integrator i niskopropusni filtar koji odstranjuje šum kvantizacije. Na Slikama 1.16 i 1.17 prikazana je blok šema delta modulacije i demodulacije:

19 Sl Delta modulacija Sl Demodulacija UOBLIČAVANJE SPEKTRA ŠUMA (noise shaping) Ako zanemarimo nesavršenost realnih komponenti pri realizaciji sigma delta modulatora, ukupna greška je jednaka grešci kvantizacije. Blok šema jednog takvog sigma delta modulatora prikazana je na Slici Sl Blok šema sigma delta modulatora sa niskopropusnim filtrom Signal Y(s), kad imamo da je N(s)=0, jednak je:, odakle dobijamo da je prenosna funkcija modulatora jednaka:

20 , dobijamo da je to za niskopropusni filtar. Ako želimo da izrazimo prenosnu karakteristiku signala šuma, kada je X(s)=0, imamo:, odakle dobijamo da je prenosna karakteristika jednaka: ; premat tome, dobijamo da je to visokopropusni filtar. Dakle, zaključujemo kako se sigma delta modulator ponaša kao nisko-propusni filtar za signal, a kao visokopropusni filtar za šum. Na taj način je većina šuma "pomerena" na visoke frekvencije. To predstavlja uobličavanje spektra šuma. Karakteristika spektra korisnog signala i šuma prikazana je na Slici Sl Karakteristika korisnog signala i signala šuma Ako sada primenimo digitalni filtar, on će otkloniti više šuma nego što bi se otklonilo primenom samog oversamplinga. Na Slici prikazan je signal zajedno sa šumom i označen je deo koji izdvajamo uz pomoć digitalnog filtra. Izdvajamo samo koristan signal

21 Sl Izdvajanje korisnog signala uz pomoć digitalnog filtra Primer jednog sigma-delta modulatora prvog reda prikazan je na sledećoj Slici Sl Blok šema sigma-delta modulatora prvog reda Sigma-delta modulator se sastoji iz jednog diferencijalnog pojačavača, integratora i komparatora sa povratnom spregom koja sadrži 1-bitni D/A konvertor. Ovaj D/A konvertor služi za održavanje srednje vrednosti izlaza integratora blizu referentnog nivoa komparatora. Na izlazu modulatora formira se povorka "jedinica" i "nula". Gustina "jedinica" na izlazu proporcionalna je ulaznom signalu. Povećanjem amplitude ulaznog signala komparator generiše veći broj "jedinica" i obrnuto, smanjivanjem amplitude ulaznog napona komparator gene-riše manji broj "jedinica". Modulator prvog reda obezbeđuje poboljšanja odnosa signal/šum od 9dB za svako dupliranje frekvencije odabiranja. Može se postići uobličavanje spektra šuma koristeći više od jedne faze integracije i sumiranja u sigma-delta modulatoru. Na primer, sigma-delta modulator drugog reda obezbeđuje poboljšanja odnosa signal/šum od 15dB za svako udvostručavanje frekvencije odabiranja. Principijelna šema jednog sigma-delta modulatora trećeg reda prikazana je na Slici

22 Sl Principijelna šema sigma-delta modulatora trećeg reda DIGITALNO FILTRIRANJE Digitalni NF filtar je sastavni deo sigma-delta konvertora. Uloga digitalnog filtra je sledeća: usrednjava povorku 1-bitnih podataka poboljšava rezoluciju A/D konvertora uklanja šum kvantizacije koji je izvan opsega koji nas interesuje (određuje širinu opsega signala) određuje vreme smirivanja DECIMACIJA Decimacija, koja se još zove i downsampling, je proces odbacivanja viška odabiranih podataka bez gubitka informacije. Ona se karakteriše faktorom decimacije M koji može biti bilo koji ceo broj i predstavlja odnos ulaznog i izlaznog opsega. Svrha decimacije jeste smanjivanje frekvencije izlaznog signala na upotrebljivu vrednost. Smanjivanje opsega kao rezultat daje i jeftiniju imple-mentaciju. Primer decimacije dat je na Slici Sigma-delta konvertori svoj rad temelje na tri pojma: oversampling uobličavanje spektra šuma decimacija

23 Sl Primer decimacije Zbog toga sigma-delta konvertori imaju veoma visoku rezoluciju i tačnost, ali i malu brzinu. Neke od osnovnih karakteristika sigma-delta konvertora su: Visoka izlazna rezolucija (2 bita) (Kod sigma-delta konvertora je povećana rezolucija na račun smanjenja brzine). Prednost ovih konvertora je što ne zahtevaju dodatna kola ili kalibraciju, čak i kad imamo visoku rezoluciju. Visoka tačnost. Standardni sigma-delta A/D konvertori koji se uglavnom koriste u digitalnim audio aplikacijama, imaju ograničenu širinu propusnog opsega na 22kHz. U novije vreme neki konvertori su dostigli širinu propusnog opsega od 1MHz do 2 MHz sa 12 do 16 bita rezolucije. Od najbržih sigma-delta A/D kon-vertora se ne očekuje da imaju značajno širi propusni opseg od nekoliko MHz u bliskoj budućnosti. Zauzimaju mnogo mesta na čipu (najviše mesta zauzimaju digitalni filtar i decimator). Ograničenje ove strukture je i kašnjenje koje je znatno veće nego kod drugih tipova A/D konvertora. Zbog oversemplinga i kašnjenja sigma-delta A/D konvertori se retko sreću u aplikacijama u kojima se koristi multipleks FLEŠ A/D KONVERTORI Fleš A/D konvertori (Flash ADC) ili kako ih još zovu paralelni A/D konvertori spadaju u klasu najbržih A/D konvertora. Najbrži način da konvertujemo analogni oblik napona u digitalni oblik ostvaruje se pomoću ovog A/D konvertora. Ovi konvertori su idealni za aplikacije koje zahtevaju veliku širinu opsega. Fleš A/D konvertori troše puno energije, imaju relativno nisku rezoluciju i mogu biti veoma skupi, što ih ograničava na korišćenje u aplikacijama sa visokim frekvencijama. Koriste se za akviziciju podataka, satelitske komunikacije, radarsku obradu, digitalne osciloskope i visokonaponske disk drajvere. Fleš A/D konvertor je sačinjen od veoma brzih kaskadnih komparatora. Svaki komparator predstavlja 1LSB, a izlazni kod se može odrediti u jednom kompara-torskom kolu. Osnovna realizacija fleš A/D kovertora prikazana je na Slici

24 Sl Osnovna blok šema fleš A/D konvertora Realizacija fleš A/D konvertora sa termometarskim kodom prikazana je na Slici Za jedan N-bitni konvertor potrebno je da kolo sadrži 2 N -1 kom-paratora. Otpornički razdelnik sa 2 N otpornika obezbeđuje referentni napon. Referentni napon za svaki komparator je za jedan LSB veći od referentnog napona za komparator koji je odmah ispod. Svaki komparator daje "1" kada je njegov analogni ulazni napon veći od referentnog napona dovedenog na njega. U suprotnom, izlaz je "0". Prema tome, ako je analogni ulaz između V X i V X5, komparatori X 1 do X daju jedinice, a preostali komparatori daju nule. Ovo je poznato kao termometarsko enkodiranje, a tako je dobilo naziv jer je slično živinom termometru kod koga živin stub uvek raste do odgovarajuće temperature i iznad te vrednosti živa ne ide. Termometarski kod je zatim dekodiran u odgovarajući izlazni kod

25 Sl Fleš A/D kovertor sa termometarskim kodom Što se komparatora tiče oni su tipično kaskada širokopojasnih stepena niskih pojačanja. Ovo pojačanje je malo, jer je na visokim frekvencijama teško postići i širok opseg i veliko pojačanje. Dizajnirani su za nizak napon ofseta, takav da je ulazni ofset svakog komparatora manji od LSB-a A/D konvertora. U suprotnom, komparatorski ofset bi mogao lažno navesti komparator, pri čemu digitalni kod ne bi reprezentovao termometarski kod (greška na najniža 2 bita). Leč sa osve-žavanjem na svakom komparatorskom izlazu čuva rezultat. Leč ima pozitivnu povratnu spregu, tako da je krajnje stanje zasigurno ili "1" ili "0". Problemi kod realnih fleš A/D konvertora Kao i kod svih ostalih realnih komponenata i kod realnih fleš (flash) A/D konvertora se javljaju problemi. Najčešće probleme ćemo ukratko predstaviti. U normalnim uslovima komparatorski izlaz će biti termometarski kod kao što je na primer " ", a greške mogu izazvati izlazni kod kao što je na primer " ". Ovaj izlaz nulte sekvence se naziva ISKRA (sparkle). Ovo može biti izazvano nesavršenošću ulaznog nagomilavanja ili vremenskom neusaglašenošću komparatora. Moderni konvertori kao što je MAX10 uvrštavaju ulazno kolo za odmeravanje i zadršku, SH kolo (sample&hold) ispred A/D konvertora sa enko-dirajućom tehnikom koja sprečava iskra kodove

26 Kada je digitalni izlaz komparatora nejasan (ni nula ni jedinica), izlaz je definisan kao metastabilan. Metastabilnost može biti redukovana obezbeđivanjem više vremena za regeneraciju. Takođe, metastabilnost se može poboljšati Grejovim kodom enkodiranja. Grejov kod obezbeđuje da se u jednom trenutku samo jedan bit u izlazu promeni. Kod Grejovog koda svaki kod se razlikuje za tačno jednu cifru (jedan kod) od kodova susednih njemu tj. od kodova pre i posle njega. Komparatorski izlazi su prvo konvertovani u Grejev kod enkodiranja i onda kasnije dekodirani u binarni, ako je to poželjno. Drugi problem koji se javlja je taj kada se metastabilan izlaz kreće dvema različitim kružnim putanjama. Moguća situacija koja može da se dogodi je da jedna putanja proglasi ulaz kao "1" dok druga putanja smatra da je na ulazu "0". Ovo može da stvori glavne greške. Da bi se ovakve greške izbegle potrebno je da samo jedna kružna putanja oseti metastabilan izlaz. Još jedna stvar koja može da stvara probleme je frekventna zavisnost izlaznog signala. Kada se ulazni signal promeni pre nego što komparator izvrši svoje odlučivanje, performansa A/D konvertora je nepovoljno realizovana. Naj-ozbiljniji problem u realizaciji je smanjivanje odnosa signal/šum (plus distorzija) kako frekvencija analognog ulaza raste. Kada proanaliziramo zavisnost fleš A/D konvertora od rezolucije dolazimo do zaključka da se brzina konverzije fleš A/D konvertora ne menja značajno sa povećanjem rezolucije. Kod konvertora sa sukcesivnim aproksimacijama brzina konverzije se menja linearno sa povećanjem rezolucije, dok se kod integrirajućih vreme duplira sa svakim bitom povećanja rezolucije. Usaglašavanje fleš konvertora obično ograničava rezoluciju na oko 8 bita. Zahtevi kod usaglašavanja komponenti se dupliraju sa svakim bitom povećanja rezolucije. Kod fleš A/D konvertora svaki bit povećanja rezolucije gotovo da udvostručava veličinu kola. Snaga se takođe udvostručava. Kod A/D konvertora sa sukcesivnim aproksimacijama i kod sigma-delta konvertora promena je linearna dok kod integrirajućih neće doći do značajnih promena. Cena kola takođe raste sa povećanjem njegove složenosti. CMOS fleš A/D konvertori su dostupni na niskim brzinama i rezolucijama i obično su namenjeni za inegrisanje u velika CMOS kola. Za aplikacije koje zahtevaju skromnu rezoluciju, obično do 8 bita, na frekvencijama semplovanja od nekoliko stotina MHz, arhitektura fleš A/D konvertora bi mogla biti jedina povoljna alternativa. Za aplikacije sa visokom frekvencijom analognog ulaza, izabrani A/D konvertor bi trebao da ima jedno ulazno kolo za odmeravanje i zadršku PRENOSNA FUNKCIJA A/D KONVERTORA Prenosna funkcija je dijagram na kome je prikazan kod na izlazu iz A/D konvertora za vrednosti ulaznog signala A/D konvertora. Dijagram prenosne funkcije nije kontinualan već se sastoji od 2 N kodova, gde je N rezolucija A/D konvertora u bitima. Ako bi povezali ove kodove jednom linijom (obično kroz tačke na prelasku sa jednog koda na drugi), idealna prenosna funkcija bi bila prava linija. Linija povučena kroz tačke na svakoj granici između kodova, počinjala bi u koordinatnom početku a nagib prave bi bio isti (kao na Slici 1.26.) za svaki A/D konvertor

27 Sl Idealna prenosna funkcija 3-bitnog A/D konvertora Slika prikazuje idealnu prenosnu funkciju za 3-bitni A/D konvertor sa referentnim tačkama na ivici promene koda. Izlazni kod biće najmanji (000) za vrednosti ulaznog signala ispod 1/8 maksimalne vrednosti (to je i širina jednog koda tog A/D konvertora). Takođe, primetite da A/D konvertor dostiže najveći izlazni kod (111) već na 7/8 maksimalne vrednosti dinamičkog opsega, a ne na granici dinamičkog opsega. Znači, prelazak na maksimalni digitalni izlazni kod ne dešava se kada je vrednost ulaznog napona na granici dinamičkog opsega. Prelazak se dešava kada je napon za jedan kod ili najmanje značajan bit (LSB) manji od dinamičkog opsega (drugim rečima od referentnog napona). Sl Prenosna funkcija 3-bitnog A/D konvertora sa ofsetom od -1/2 LSB

28 Prenosna funkcija može biti implementirana sa ofsetom od -½ LSB, kao što je prikazano na Slici Ova translacija prenosne funkcije ulevo translira i opseg greške kvantizacije iz (-1 do 0 LSB) u opseg (-½ do +½ LSB). Iako je ovaj ofset nameran, on se često navodi u specifikacijama kao deo greške ofseta GREŠKE A/D KONVERTORA Ograničenja u materijalima koji se koriste za izradu znače da u praksi A/D konvertori neće imati idealnu prenosnu funkciju. Odstupanja od idealne prenosne funkcije definišu DC preciznost i okarakterisana su parametrima u tablicama tehničkih podataka. Rezultat AD konverzije odstupa od idealnog zbog varijacija u procesu izrade što je zajedničko za sva integrisana kola, kao i zbog raznih drugih izvora grešaka u samom procesu analogno-digitalne (A/D) konverzije. Preciznost A/D konvertora zavisi od nekoliko ključnih tehničkih osobina, koje obuhvataju diferencijalnu nelinearnu grešku (DNL), integralnu nelinearnu grešku (INL), ofset i grešku poja-čanja, preciznost referentnog napona, uticaj temperature i dinamičke perfor-manse. Dve popularne metode za utvrđivanje ukupne greške sistema su metoda kvadratnog korena sume kvadrata grešaka (root-sum-square - RSS) i metoda najgoreg slučaja. RSS metoda podrazumeva kvadriranje pojedinačnih grešaka, njihovo sabiranje i konačno kvadratni koren zbira daje ukupnu grešku: UKUPNA GREŠKA =, gde En predstavlja pojedinačnu grešku neke komponente ili parametra. Ovaj metod je najprecizniji kada pojedinačne greške nisu u međusobnoj korelaciji (što može a ne mora biti slučaj). Kod metode najgoreg slučaja, sve pojedinačne greške se sabiraju. Ova metoda garantuje da greška nikada neće preći određenu granicu. Kako se na ovaj način dobija gornja granica greške, stvarna greška je uvek manja od ove vrednosti (vrlo često MNOGO manja). Izmerena stvarna greška obično je negde između vrednosti dobijene na ova dva načina, ali je često bliža vrednosti dobijenoj RSS metodom. U zavisnosti od potreba i zahteva bira se između najgore i tipične vrednosti grešaka. Odluka o tome koja će vrednost biti korišćena zavisi od mnogo faktora, uključujući tu i standardnu devijaciju od merene vrednosti, važnosti pojedinih parametara, veličini greške u odnosu na druge greške, itd. Tako da u stvari i ne postoje neka tačno određena i stroga pravila koja moraju bit ispoštovana. Od aplikacije zavisi koje će specifikacije projektant da smatra najvažnijim. Na primer, DTMF dekoder uzorkuje telefonski signal kako bi utvrdio koji je taster pritisnut na aparatu sa tonskim biranjem. U ovom slučaju najbitnije je izmeriti snagu signala (iz određenog seta frekvencija) među ostalim tonovima i šumom koji nastaje prilikom A/D konverzije. U ovom projektu, projektant će najviše paž-nje da obrati na parametre dinamičkih performansi kao što su odnos signal/šum i harmonijska izobličenja. U drugom primeru, sistem može da očitava signal koji meri temperaturu neke tečnosti. U ovom slučaju, DC preciznost merenja je najbitnija tako da će ofset, pojačanje i nelinearnosti biti najpre proveravane. Ne mora da znači, da ako uzmemo A/D konvertor sa više bita od predviđenog za neku određenu preciznost, da ćemo i dobiti karakteristike konvertora u željenoj preciznosti. Ako na primer, pretpostavimo da ja potrebno postići pre-ciznost od 0,1% ili 10-bitnu preciznost (1/2 10 ), tako da ima smisla odabrati konvertor sa rezolucijom većom od ove. Ako odaberemo 12-bitni konvertor, možemo da pretpostavimo da će to biti dovoljno; ali bez analize

29 specifikacije, nema garancije da on postiže 12-bitne performanse (on može biti boljih ili lošijih karakterisitka). Na primer, 12-bitni A/D konvertor sa integralnom greškom nelinearnosti od LSB-a (Least Significant Bit - najmanje važan bit) može postići samo 10- bitnu preciznost u najboljem slučaju (ako se podrazumeva da su greške ofseta i pojačanja kalibrisane). Uređaj sa integralnom greškom nelinearnosti od 0.5 LSB-a može postići grešku manju od % odnosno 13-bitnu preciznost (ako su uklonjene greške ofseta i pojačanja). Da bi se izračunala najveća preciznost, potrebno je maksimalnu integralnu grešku nelinearnosti podeliti sa 2 N, gde je N broj bita. U našem slučaju, ako dopustimo grešku od 0.075% (tj. 11-bitnu grešku) za A/D konvertor, ostaje nam greška od 0.025% za ostatak elektronskog sklopa, što uključuje greške senzora, grešku od operacionih pojačavača, multipleksera, eventualnog D/A konvertora, ili drugih analognih izlaznih signala na putanji signala. Mnogi signali su relativno statični, kao npr. izlazni signali temperaturnih senzora ili senzora pritiska. U takvim aplikacijama mereni signal je povezan sa nekom fizičkom veličinom i apsolutna preciznost merenja tog napona je važna. Parametri A/D konvertora koji opisuju ovaj vid preciznosti su greška ofseta, greška pojačanja dinamičkog opsega, diferencijalna nelinearnost (DNL) i inte-gralna nelinearnost (INL). Ova četiri parametra u potpunosti opisuju apsolutnu preciznost A/D konvertora. Iako se ne navodi kao parametar jedna od osnovnih grešaka A/D konvertora, a nastaje kao rezultat pretvaranja signala i podataka je greška kvantizacije. Ova greška ne može biti izbegnuta u merenjima uz A/D konverziju. DC preciznost i rezultujuću apsolutnu grešku određuju četiri parametra ofset, pojačanje u celom dinamčkom opsegu, INL i DNL. Greška kvantizacije je nezaobilazni rezultat predstavljanja analognog signala u digitalnim brojevima (drugim rečima, plod analogno-digitalne konverzije). Maksimalna greška kvantizacije je određena rezo-lucijom merenja (ili rezolucijom A/D konvertora, ako je signal oversampleovan). Dalje, greška kvantizacije će se pojaviti kao šum, poznatiji kao šum kvantizacije u dinamičkoj analizi. Na primer, greška kvantizacije pojaviće se kao prag šuma u FFT dijagramu (frekvencijskom spektru) merenog signala na ulazu A/D kon-vertora. Sl Greška ofseta kod realnog A/D konvertora

30 Sl Greška pojačanja kod realnog A/D konvertora Sl Diferencijalna nelinearnost kod realnog A/D konvertora

31 2. MIKROKONTROLERI 2.1. Osnovne karakteristike mikrokontrolera Mikrokontroler je u su{tini pravi ''mali ra~unar'' na ~ipu, koji sadr`i sve gradivne blokove CPU-a (ALU, PC, SP, registre i dr.), ali tako e i RAM, ROM, paralelne i seriske U/I portove, generatore takta i dr. Mikrokontroler je ure aj op{te namene, koji pribavlja podatke, obavlja ograni~enu obradu nad tim podacima, i upravlja svojim okru`enjem na osnovu rezultata izra~unavanja. Mikrokontroler u toku svog rada koristi fiksni program koji je sme{ten u ROM-u i koji se ne menja u toku `ivotnog veka sistema. PIC16F877 je Microchip-ov 8-bitnom CMOS mikrokontroler baziran na flash tehnologiji.to znači da u samom ~ipu postoji programska memorija koja se upisuje i briše električnim putem, što je daleko naprednije od brisanja EPROM-a UV zracima. RISC arhitektura omogućuje odvojene magistrale 8-bitnih podataka i 14-bitne programske memorije, pa je mogu}e da se pribavlja naredna instrukcija dok se izvršava teku}a (eng. pipelining). Sve instrukcije traju jednako (osim u slu~aju grananja programa) i završe se za ~etiri ciklusa oscilatora. Dakle, ako je oscilator konfigurisan na 4 MHz, dobija se da ciklus instrukcije iznosi 1 μs. Jezgro mikrokontrolera PIC16F877 proizvodi se u 40-pinskom (DIP) ili u 44- pinskim kućištima (QFP i PLCC), Slika 2.1. Sl.2.1. Ku}išta u koja se «pakuje» PIC16F877 (a. DIP-40, b.plc-44, c.tqfp-44) Sa blok dijagrama kojeg daje Microchip (Slika 2.2.) može se ustanoviti da se koncepcija ovog mikrokontrolera ne razlikuje mnogo od koncepcije RISC mikrokontrolera drugih proizvođača prisutnih na tržištu. Uočavaju se standardne komponente: Flash programska memorija 8 kword

32 RAM (File Registers) 368 bajtova Aritmetičko-logička jedinica (ALU) Akumulator (Working Register) Hardverski magacin (Stack) sa 8 nivoa EEPROM memorija podataka 256 bajtova Razne periferne jedinice (portovi, tajmeri, A/D konvertor, USART,...) PIC16F877 podr`ava tehniku prekida (eng. interrupts). Postoji ukupno 14 izvora prekida, što spoljašnjih, što unutrašnjih. Svaki prekid nema sopstveni interapt-vektor, ve} postoji jedinstvena adresa (0x0004) od koje se nastavlja izvršavanje programa kada se dogodi bilo koji od njih. Tada je na programeru da prozivanjem zastavica/markera pojedinih prekida (eng. interrupt flags polling) ustanovi ko tra`i prekid i uputi program na izvršavanje odgo-varaju}e rutine za obradu. Adresa na koju se program treba vratiti po obradi prekida ~uva se automatski u hardverskom magacinu i u programski broja~ vra}a izvršavanjem instrukcije RETFIE. Sl.2.2. Arhitektura mikrokontrolera Ono što mikrokontrolere izdvaja od ostalih procesora jeste prisustvo raznih specijalnih kola koja se trebaju izboriti sa potrebama real-time aplikacija. Ovaj mikrokontroler poseduje niz osobina potrebnih da se maksimizuje pouzdanost sistema, minimizuje cena kroz eliminaciju eksternih komponenti, omoguće režimi niske potrošnje energije, pru`anje zaštite programskog kôda. Upotreba navedenih resursa definiše se u programatorskom

33 soſtveru upisom odgovaraju}e konfiguracione re~i u registar CONFIG. Taj registar je dostupan samo u toku upisa programa u mikrokontroler i drugačije se ne mo`e adresirati. Među ponu enim karakteristikama postoji mogućnost izbora četiri tipa oscilatora, mogućnost upotrebe Power-up (PWRT) i Oscilator Start-up (OST) tajmera, te eventualno korišćenje Power-on (POR) i/ili Brown-out (BOR) reseta. Pove}anju pouzdanosti kroz spre~avanje zalaska programa u mrtve petlje poma`e upotreba Watchdog tajmera (WDT). Zaštitu kôda od neželjenog čitanja pru`a opcija code protection. Za ure aje sa baterijskim napajanjem interesantna mogu}nost je Sleep Mode, re`im sa smanjenom potrošnjom energije, kada se program ne izvršava, ali rade neke periferne jedinice koje mogu probuditi mikrokontroler. Tada je potrošnja mikrokontrolera ispod 1 μa. Sl.2.3. Mapa programske memorije Napajanje se dovodi na pinove VDD, a masa na pinove VSS. No`ice OSC1 i OSC2 slu`e za priklju~enje oscilatorskih komponenti (RC-kolo ili rezonator), odnosno priključenje eksternog oscilatora kao bolje, ali skuplje varijante. Osim za reset-kolo pin 1 (MCLR/VPP) ima ulogu u toku procesa programiranja mikrokontrolera. Ostalih 33 pina predstavljaju I/O linije. Oni su grupisani u pet portova (PORT A, B, C, D i E) i svaki od njih je individualno konfigurabilan kao izlazni ili kao ulazni. Osim opšte namene, ve}ina pinova ima i specifičnu svrhu koja se programski dodeljuje u slu~aju korišćenja nekih specijalnih periferija mikrokontrolera (broja~a, serijske komunikacije, A/D konvertora i dr.)

34 Na kraju ovog uvoda treba napomenuti da su Microchip PIC mikrokontroleri dominantni u odnosu na konkurentne relativno visokom strujom koju moe propustiti I/O pin (25 ma). Tako e, ova familija mikrokontrolera poseduje veoma širok opseg napona napajanja koji se prote`e od 2,0 V do 5,5 V. BLOK DIJAGRAM MIKROKONTROLERA Osnovne karakteristike mikrokontrolera PIC16F877: Visoko performansni RISC CPU 35 instrukcija obima jedne reci Radna frekvencija,f ref = DC-20 MHz Trajanje taktnog intervala t cpu = 200 ns, kada je f ref = 20 MHz Op-kôd obima14bita Hardverski magacin sa osam nivoa Tri na~ina adresiranja: -direktno -indirektno -relativno

35 Programska memorija kapaciteta 8 kx14-bitnih reci realizovane u FLASH tehnologiji Memorije za podatke tipa RAM kapaciteta 368x8 bita Memorije za podatke EEPROM tipa kapaciteta 256x8 bita Prekidi ( do 14 izvora prekida) U/I portovi: A,B,C,D,E Tri tajmera: -Timer0: 8-bitni tajmer/brojac dogadjaja -Timer1: 16-bit tajmer/brojac dogadjaja -Timer2: 8-bit tajmer/brojac dogadjaja 10-to bitni 8-kanalni Analogno-Digitalni (A/D) konvertor Seriska komunikacija: MSSP,USART Paralelna komunikacija: PSP Power-on Reset- reset pri uklju~enju napajanja(por) Power-up timer-unosenje ka{njenja nakon uklju~enja napajanja (PWRT) Oscillator Start-up Timer-unosenje kasnjenja nakon stabilizovanja radne frekvencije oscilatora(ost) Sleep re`im rada za stednju energije Watchdog timer sa sopstvenim integrisanim RC oscilatorom za nezavisni rad Izbor tipa oscilatora Mala potro{nja,velika brzina rada Radni napon od 2V do 5.5V Mala potro{nja energije: 1. <0.6 ma pri naponu od 3V i radnoj frekvenciji od 4 MHz 2. 20μA pri naponu od 3V i radnom taktu od 32kHz 3. <1μA u standby nacinu rada 2.2. Kratak opis mikrokontrolera PIC16F877 Kao {to smo ve} naglasili mikrokontroler PIC16F877 poseduje tip~nu RISC arhitekturu. Arhitektura poseduje odvojene magistrale za podatke i programski kôd. Obim podataka je 8- bitni, dok je programski kôd 14-bitni. Mogu}e je proto~no izvr{enje (pipelining). Sve insrukcije su istog obima (osim instrukcija grananja) i izvsavaju se za ~etiri taktna intervala. Dakle, ako koristimo oscilator npr. od 20 MHz dobijamo da ciklus instrukcuije traje 200 ns. Sa blok dijagrama (slika 1.4) mogu se uo~iti slede}i gradivni blokovi: Flash programska memorija 8 kilore~i obima 14 bita RAM (File Registers) 368 bajtova Aritmetičko-logička jedinica (ALU) Akumulator (Working Register) Hardverski magacin (Stack) organizivan u 8 nivoa EEPROM memorija podataka obima 256 bajtova Razne periferne jedinice (portovi, tajmeri, A/D konvertor, USART,...)

36 Sl.2.4 Blok dijagram mikrokontrolera PIC16F Raspored no`ica Jezgro mikrokontrolera PIC16F887A pakuje se u 40-pinsko DIP pakovanje ili u 44- pinska ku}i{ta QFP i PLCC tipa. Na slici 2.5 prikazan je raspored no`ica kod 40-to pinskog DIP pakovanja:

37 Sl.2.5 Raspored nozica mikrokontrolera PIC16F877 Napajanje od +5V se dovodi na pinove VDD (11 i 32) a masa na pinove VSS (12 i 31). No`ice OSC1 i OSC2 (pinovi 13 i 14) slu`e za priklu~ivanje oscilatorskih komponeti (RC-kolo ili kvarc). Pin 1 (MCLR/VPP) ima dvostruku ulogu. Standardno se koristi kao Reset, a u procesu programiranja kao pin za dovo enje visokog napona (13V). Ostalih 33 pina prestavljaju U/I linije. One su grupisane u pet portova (PORTA- PORTE) i svaki od njih mozemo konfigurisati kao ulazni ili izlazni. Osim opste namene vecina pinova ima i specificnu namenu koju dobija u slucaju koriscenja nekih specijalnih periferija mikrokontrolera (brojaca, ADC, serijske komunikacije) Generator takta (Oscilator) Mogu}e su ~etri varijante u konfiguraciji oscilatora: LP Low Power Crystal XT Crystal / Resonator HS High Speed Crystal / Resonator RC Resistor/Capacitor Kontroler moze da radi i na 32 khz i tada ima jako malu potro{nju. Najednostavnija varijanta je RC oscilator(slika 2.6).Ova varijanta oscilatora mo`e se koristiti u aplikacijama gde se precizna procena vremenskih intervala ne zahteva

38 Sl.2.6 Na~in povezivanja RC oscilatora Frekfencja oscilovanja zavisi od napona napajanja, vrednosti R ext i C ext,kao i radne temperature. R ext treba da je u granicama od 5k do 100k. Van ovog opsega rad oscilatora postaje nestabilan i osetljiv na spoljne uticaje. C ext se moze i izostaviti, ali zbog stabilnosti se preporu~uje 20pF. Na OSC2/CLKOUT generise se taktni impuls cija je perioda ~etiri puta veca od periode oscilatora. Kod vremenski kriticnih aplikacija treba ugradjivati kvarcni oscilator ili keramicki rezonator. Vrednosti kondenzatora C1 i C2 (slika 2.7), treba da su jednaki. Sl.2.7 Na~in povezivanja XT oscilatora Preporuka proizvo a~a za vrednosti C1 i C2 kod nekih konfiguracija je: Tabela 2.1. LP 32 khz pF - Kristal 200 khz 15-33pF - Kristal Tabela 2.2. XT 100 khz pF - Kristal 455 khz pF Rezonator MHz 15-33pF Rezonator Kristal 4.0 MHz Rezonator Kristal Tabela 2.3. HS

39 4.0 MHz 15-33pF - Kristal 8.0 MHz 15-33pF Rezonator Kristal 10.0MHz 15-33pF Rezonator Kristal Moguce je i da se oscilacije dovode iz nekog spoljnjeg izvora kao sto je prikazano na slici 2.8.: Sl.2.8. Na~in poveziva nja spoljnjeg oscilator a Naj~e{}e se koristi spoljni kristalni oscilator (XT) radne frekvencije 4MHz. Bice prikazano kako se spaja kristalni oscilator sa mikrokontrolerom (slika 2.9) i kako izgleda oblik signala generisan iz oscilatora u trenutku ukljucenja (slika 2.10). Oscilatoru treba neko vreme ΔT da se stabilizira na potrebnu frekvenciju i amplitudu Spajanje kristalnog oscilatora oscilatora Sl Oblik signala pri uklju~enju Sl Takt/instrukciski ciklus Takt koji se dovodi na nozice oscilatora OSC1 u mikrokontroleru se deli na ~etiri vremenski nepreklapajuca taktna signala nazvana Q1,Q2,Q3 i Q4. Skup ovih signala ~ine

40 jedan instrukciski ciklus(slika 1.11a). U zavisnosti od trenutka generisanja u okviru ciklusa instrukcija taktni signali Q1-Q4 se koriste za slede}e namene: Q1-pribavljanje instrukcije iz programske memorije Q2-dekodiranje naredbe iz prethodnog instrukciskog ciklusa Q3-izvrsenje naredbe iz prethodna dva instrukciska ciklusa Q4-prenos op-kôda naredbe pozvane u Q1 u instrukcijski registar. Uzmimo za primer instrukciski ciklus TCY2 (slika 1.12a). U toku taktnog impulsa Q1 instrukcijskog ciklusa TYC2, stanje programskog brojaca (PC) se uve}ava za 1 i pribavlja naredna instrukciju iz programske memorije. U toku intervala Q2 dekodira se instrukcija pribavljena u TCY1, a u toku Q3 se izvr{ava instrukcija pribavljena u TCY0. U ~etvrtom taktu Q4 instrukciskog ciklusa TCY2 se, instrukcija pribavljena u toku Q1, prebacuje se u instrukciski registar. Sl Vremenski dijagram i proto~nost kod izvr{avanja instrukcije a).vremenski dijagram Sl b) Proto~nost kod izvr{enja sekvence instrukcije Na slici 1.11b prikazan je proto~ni nacin izvr{enja sekvence od 5 instrukcija. Kao sto se vidi sa slika 1.11b postoje dva stepena u proto~noj obradi. Prvi se odnosi na pribvljanje, a drugi na izvr{enje. Neka je proto~ni sistem inicijalno prazan. U toku TCY0 pribavlja se instrukcija sa labele 1 tipa MOVLW 55h. U toku TCY1 izvr{ava se instrukcija sa labele 1 i pribavlja instrukcija sa labele 2 tipa MOVWF PORTB. U toku TCY2 pribavlja se instrukcija sa labele 3 koja je tipa CALL SUB_1 i pretstavlja poziv potprograma 1, i izvr{ava se instrukcija sa labele 2. U toku TCY3 pribavlja se instrukcija sa labele 4 tipa BSF PORTA, BIT3 i izvr{ava insrukcija sa labele 3. Napomenimo da je instrukcija sa labele 3 tipa bezuslovno grananje tako da, u principu, efekat izvr{enja instrukcije sa labele 4 ne treba da bude vidljiv,tj. ona treba da pretstavlja neku operaciju tipa NOP (da ne menja statusne markere procesora kao i stanja procesora). Nakon izvrsenja instrukcije CALL SUB_1 vrednost programskog brojaca se postavlja na adresu insrukcije koja se nalazi na labeli 5. U toku TCY4 pribavlja se instrukcija sa labele 5 tipa address SUB_1 (prva naredba potprograma), a izvrsava instrukcija na labeli 4 koja je sa stanovista procesora i programa operacija tipa NOP. U TCY5 pribavlja se druga naredba potprograma i izvr{ava prava

41 2.6. Reset Reset slu`i da bi sve registre mikrokontrolera doveli u po~etni polo`aj. Ako se mikrokontroler zako~i,ili smo ga tek uklju~ili, treba ga resetovati. Da bi sprecili slucajno dovodjenje 0 na MCLR nozicu, porebno ju je preko otpornika povezati na pol napajanja Vdd (slika 1.12) Sl Povezivanje kola za reset Postoji vi{e vrste reseta kod PIC16F877 mikrokontrolera: Power-on reset (POR) MCLR Reset pri normalnom radu MCLR Reset prilikom SLEEP rezima rada WDT Reset pri normalnom radu WDT Wake-up (budjenje iz SLEEP rezima rada) Brown-out Reset (BOR) Power-on reset (POR) impuls se generise u samom kolu kada se detektuje porast napona napajanja (oko 1,2 1,7 V). Da bi se POR iskoristio dovoljno je MCLR nozicu prikljuciti na Vdd direktno ili preko otpornika (sl. 2.13). Ukoliko je porast napona napajnja spor neophodno je na MCLR postaviti spoljnje kolo za reset. Sema kola za POR reset je prikazana na slici

42 Sl.2.13 Spolja{nje kolo za reset Interno POR kolo ne}e generisati Reset signal kad napon napajanja padne ispod minimuma. Za situacije kada je mogu}a pojava BROWN-OUT-a (privremeni pad napona ispod Vmin) prebno je napraviti spoljnje Brown-out reset kolo,sto je prikazano na slici Sl Kolo za BROWN-OUT reset Varijanta 1 Kolo ce generisati Reset impuls kada napon bude ispod (Vz + 0.7) V Vz napon na Zener diodi. Uslov da tranzistor isklju~i je: Sl Kolo za BROWN-OUT reset Varijanta

43 Vdd R1 0.7V R2 + R1 < Power-up Timer (PWRT) generise impuls fiksne {irine (nominalno 72 msec) od pojave impulsa POR-a. Za to vreme ce kontroler biti je u Reset stanju. Za ovaj vremenski period se obezbedjuje da napon napajanja dostigne nominalnu vrednost. Tajmeru PWRT se dozvoljava rad setovanjem PWRTE bita koji pripada konfiguracionoj reci u fazi programiranja cipa. PWRT se taktuje internim RC oscilator. Oscilator Start-up Timer (OST) obezbedjuje kasnjenje od 1024 taktnih intervala nakon isteka kvazistabilne periode PWRT-a (vidi tabelu 2.4.). Ovo obezbe uje da kristalni oscilator ili rezonator startuju stabilnom frekvencijom. OST se aktivira samo kod XT, LP i HS rezima rada i to pri: POR, i bu enju iz SLEEP re`ima rada. Mikrokontroler PIC16F877 ima implementiran dvo-bitni statusni registar nazvan PCON (Power Control Register). Prvi bit nazvan POR setuje se kada se aktivira Power-on-Reset a resetuje se kada je se aktivira neki drugi Reset. Drugi bit (BOR)kada je setovan ukazuje da je aktivan Brown-out stanja (nepropisana naponska stajna u napajanju mikrokontrolera), zbog kojeg se takodje može aktivirati Reset. Tabela 2.4. Power-up Konfiguracija oscilatora PWRT omogucen PWRT onemogucen XT, HS, LP 72 ms Tosc 1024 Tosc 1024 Tosc RC 72 ms - - Budjenje iz SLEEP rezima rada Stanja na kojima se postavljaju interni registri CPU-a nakon Reseta zavisi od vrste Reseta i re`ima rada u kojima se nalazi procesor (Sleep i normalni). Stanje nekih registara ostaje nedifinisano, neki zadr`avaju svoje stanje, a ostali se postavljaju u unapred definisana stanja (vidi Tabele 2.5 i 2.6). Tabela 2.5.: Postavljanje registara nakon reseta Program Counter STATUS reg. Power-on reset (POR) 000h xxx MCLR reset pri normalnom radu 000h 000u uuuu MCLR reset prilikom SLEEP re`ima rada 000h uuu WDT Reset pri normalnom radu 000h uuu WDT Wake-up (bu enje iz SLEEP re`ima rada) PC+1 uuu0 0uuu Interapt 004h uuu1 0uuu Tabela 2.6. Registar Power-on reset MCLR reset pri: -normalnom radu Bu enje iz SLEEP -interapt

44 -SLEEP mod -WDT time out WDT reset pri normalnom radu 00h INDF h TMR0 xxxx xxxx uuuu uuuu uuuu uuuu 02h PCL PC+1 03h STATUS xxx 000q quuu uuuq quuu 04h FSR xxxx xxxx uuuu uuuu uuuu uuuu 05h PORTA ---x xxxx ---u uuuu ---u uuuu 06h PORTB xxxx xxxx uuuu uuuu uuuu uuuu 08h EEDATA xxxx xxxx uuuu uuuu uuuu uuuu 09h EEADR xxxx xxxx uuuu uuuu uuuu uuuu 0Ah PCLATH u uuuu 0Bh INTCON x u uuuu uuuu 80h INDF h OPTION uuuu uuuu 82h PCL PC+1 83h STATUS xxx 000q quuu uuuq uuuu 84h FSR xxxx xxxx uuuu uuuu uuuu uuuu 85h TRISA u uuuu 86h TRISB uuuu uuuu 88h EECON x q uuuu 89h EECON Ah PCLATH u uuuu 8Bh INTCON x u uuuu uuuu Legenda: x Nepoznato stanje u Nepromenjeno stanje q Stanje zavisi od uslova - - Ne postoji fizi~ki ~ita se kao 0 Struktura Reset logike za PIC16F877 data je na slici 2.16.:

45 Sl Blok dijagram Reseta 2.7. Watchdog timer Watchdog timer (WDT) taktuje se nezavisanim RC oscilatorom koji radi ~ak i kad je zaustavljen rad glavnog oscilatora, u SLEEP re`imu rada, povezan na OSC1/CLKIN i OSC2/CLKOUT pinove. Prekora~enje intervala brojanja WDT-a, prilikom normalnog rada, izaziva RESET kontrolera. Ako je kontroler bio u SLEEP rezimu rada prekora~enje tajmera ce probuditi kontroler i program ce nastaviti sa normalnim radom. Isklju~ivanje WDT-a se vrsi resetovanjem WDTE bita u konfiguracionoj re~i. Nominalno vreme WDT-a je 18 ms bez uptrebe preskalera. Ovo vreme mo`e da varira od kola do kola zbog temperature i sli~no. Ukoliko je potrebno duze vreme moze se WDT-u pridruziti preskaler sa faktorom deljenja do 1:128, tako se vreme moze produziti do 2,3 s. Instrukcije CLRWDT i SLEEP resetuju WDT. TO bit u STATUS registru }e biti 0 nakon isteka WDT Prekidi Mikrokontroler PIC16F877 podr`ava tehniku rada sa prekidima (interrupts). Postoji ukupno 14 izvora pekida, neki su interni, a drugi su eksterni. Svaki prekid nema sopstveni vektor-broj.kada se prihvati zahtev za prekid izvrsenje prekidnog programa po~inje od adrese 0x0004. Tada se programskim putem testira stanje markera koji se postavljaju kada se aktivira odgovaraju}i prekid (interrupt flags polling).kada se ustanovi koji je od uredjaja generisao zahtev za prekid prelazi se na izvr{enje odgovarajuce rutine za obradu tog prekida. Povratna adresa prekinutog programana ~uva se automatski u hardverski magacin. Povratak iz prekidnog programa se vr{i instrukcijom RETFIE. Upravlja~ki registar INTCON se koristi za maskiranje prekida. Pregled sadr`aja marker bitova kojim se generise zahtev za prekid je definisan na slici Zna~enje pojedinih markera je sledece: T0IF (INTCON:2) setuje se na prekora~enje Timer0 INTF (INTCON:1) setuje se u slu~aju da nastupi spoljni prekid na pinu RBO/INT

46 RBIF (INTCON:0) setuje se kada se dogodi promena stanja na nekom od pinova RB4, RB5, RB6, RB7 PSPIF (PIR1:7) PSP marker bit koji se koristi u opreciji ~itanja i upisa na PORTD kada je on konfigurisan kao PSP ADIF (PIR1:6) marker koji se koristi za vreme analogno-digitalne konverzije RCIF (PIR1:5) marker koji ozna~ava da je prijemni bafer koji koji koristi USART blok, pun TXIF (PIR1:4) marker koji pokazuje da je bafer za slanje podataka koji koristi USART prazan SSPIF (PIR1:3) marker koji se koristi za rad sinhronog serijskog porta CCP1IF (PIR1:2) marker koji koristi CCP1 blok TMR2IF (PIR1:1) marker koji setije Timer2 kada dodje do prkora~enja TMR1IF (PIR1:0) marker koji setije Timer2 kada dodje do prkora~enja EEIF (PIR2:4) marker koji se setuje kada se zavrsi upis u interni EEPROM BCLIF (PIR2:3) marker koji koji korist SSP blok kada je konfigurisan da radi u I2C master re`imu rada CCP2IF (PIR2:0) marker koji koristi CCP2 blok. Pored bita za dozvolu rada svih prekida General Interrupt Enable (GIE) i bita za dozvolu rada prekida generisanih od strane periferija (PEIE), ovom registru pripadaju i markeri prekida (interrupt-flags) i bitovi koji dozvoljavaju prekid koji izaziva tajmer0, spoljasnji prekid na pinu RB0/INT i prekida porta B na promenu stanja. Osim ova tri osnovna prekida postoji jos 11 periferijskih prekida. Bitovi za njihovo omogucenje nalaze se u registrima PIE1 i PIE2, a korespodentni flegovi,u registrima PIR1 i PIR2. Ovi se flegovi setuju ~im se ispuni uslov interapta bez obzira na stanje njihovog bita omogucenja, a po izvrsenju servis rutine potrebno ih je soſtverski resetovati. Na sledecoj slici (sl ) prikazana je logi~ka sema svih interrupt-a sa tabelom u kojoj su oni pobrojani: Sl Sema logike za prihvatanje zahteva za prekid i sadrzaj

47 2.9. U/I Portovi Za vezu mikrokontrolera sa spoljnim svetom zadu`eni su ulazno/izlazni portovi. Ima ih pet i oznaceni kao PORTA, PORTB, PORTC, PORTD i PORTE. Razli~itog su obima. PORTE cine tri pina, PORTA {est, a ostala tri porta su osmopinski. Odredjeni pinovi U/I portova u zavisnosti od rezima rada mogu da imaju fiksne ili promenljive funkcije. Konfiguracija smera prenosa na odgovaraju}oj bit poziciji porta vrsi se upisom konfiguracione re~i u pripadaju}i TRIS registar pri cemu nula konfigurise pin kao izlazni, a jedinica kao ulazni. Svaki port poseduje odgovaraju}i registar podataka (PORTX) preko kojeg se programski pristupa U/I pinovima. Upis u neki od tih registara inicirace upis u lec tog porta, a njegovo ~itanje rezultira}e ~itanjem logickih stanja direktno sa pinova. Sve instrukcije upisivanja su tzv. read-modify-write instrukcije. To znaci da se pri upisu u port prvo ocitaju stanja pinova, izvrsi modifikacija, a potom ispravljena vrednost upi{e u lec porta. Nema velike razlike u elektri~noj konstrukciji navedenih pet portova. Port B se od ostalih razlikuje posebnom opcijom koju nude cetiri MSB. Ukoliko se setuje bit RBIE u registru INTCON, svaka promena stanja na ovim pinovima generisa}e prekid mikrokontrolera. Port A Port A je 6-to bitni bidirekcioni port i sadr`i pinove od RA0 do RA5. TRISA je direkcioni registar koji odre uje smer pinova na portu. Ako postavimo TRIS na 1 pin je ulazni, u suprotnom pin je izlazni. Npr. ako je TRISA=0b ceo port A je ulazni, a ako je TRISA=0b000000, ceo port A je izlazni. Moguce je podeliti port A, tako da, na primer, prva 2 bita budu ulazna,a ostala 4 izlazna (TRISA=0b110000). Na slikama 2.18 i 2.19 bice prikazan blok dijagram porta A: Sl.2.18 Port A od RA0 do RA3 i RA5 Sl.2.19 Pin RA4 na portu A Pin RA4 je izlaz sa otvorenim drejnom pa se zahteva od projektanta da ve`e otpornik odgovarajuce vrednosti za pozitivan napon. Pri tome mora se voditi racuna o strujnom ograni~enju pina o cemu ce biti kasnije re}i. Ceo port A ima mogu}nost analogno-digitalne konverzije i prvenstveno se korisi u te svrhe. A/D konvertor je 10-to bitni sa 8 ulaznih

48 kanala, jer se u ove svrhe korite i svi pinovi na portu E (i pinovi porta A od RA0 do RA3 i pin RA5). Pin RA4 moze da se izkoristi za ulaznu frekvenciju timer0. Timer0 mo`e da se okida preko ovog pina na rastu}u ili opadajucu ivicu ulaznog signala, sto se odradjuje selekcijom bita T0SE u registru OPTION. Na slici 2.20 dat je tabelarni prikaz funkcija pojedinih pinova porta A i registri koji se koriste za konfigurisanje porta: Port B Sl tabelarni prikaz registara za konfigurisanje porta A Port B je 8-mo bitni bidirekcioni port. Svi pinovi imaju odgovaraju}e bitove u TRISB registru kojim mo~e da se pinovi konfigurisu kao izlazni ili kao ulazni. 1 u nekom bitu u TRISB registru stavlja odgovarajuci pin u stanje visoke impedanse i on radi kao ulazni pin. 0 u TRISB registru prosle uje sadr`aj bita iz izlaznog (latch) registra na pin i on radi kao izlazni. Svi pinovi u PORTB imaju pull-up otpornike. Ovi otpornici se mogu ukljuciti jednim kontrolnim bitom. To se radi stavljanjem RBPU' bita na 0. Pull-up otpornici se automatski iskljucuju kad se pin konfigurise kao izlazni. Otpornici su iskljuceni kod Power-on-reset-a. ^etri pina na PORTB (RB7-RB4) imaju mogu}nost generisanja interapta. Samo pinovi definisani kao ulazni mogu prouzrokovati interapt. Vrednost na pinovima se poredi sa starom vrednoscu uhvacenoj kod zadnjeg citanja porta B. Nad ovim vrednostima se vrsi OR operacija da bi se generisao interapt na promenu stanaja na PORTB. Ovaj interapt moze probuditi kontroler iz SLEEP re`im rada. Korisnik moze u rutini za obradu prekida poni{titi prekid slede}im postupcima: ^itanjem ili pisanjem u PORTB. Ovo ce ukloniti neslaganje na portu i uslov za interapt. Resetovanjem flag bita RBIF. Neslaganje na portu B ce nastaviti da setuje RBIF. ^itanje PORTB-a ce prekinuti neslaganje i uslov za interapt i omoguciti resetovanje bita RBIF Kombinacija interapta na promennu stanja PORTB i pull up otpornika se mo`e iskoristiti za jednostavan interfejs za tastaturu. Da bi promena na U/I pinu bila prepoznata {irina impusa mora da bude najmanje koliko i jedan masinski ciklus (4 * Fosc). Na slikama i prikazana je struktura PORTB

49 Sl Struktura pinova od RB0 do RB3 Sl Struktura pinova od RB4 do RB7 Na slici su prikazane tabele sa funkcijama pojedinih pinova i registara koji se koriste za konfigurisanje porta B. Sl Tabela registara koji slu`e za konfigurisanje PORTB

50 Pin RB0 ima mogu}nost da izazove prekid mikrokontrolera. Ako je ovaj interapt omogu}en (setovan bit 4 (INTE) u INTCON registru) i na RB0/INT pinu se pojavi odgovaraju}a ivica (definisana INTEDG bitom OPTION registra) nastupi}e interapt. Na kraju interapt rutine potrebno je u programu resetovati INTF bit u INTCON registru, kako bi naredni interapt bio mogu}. Port C Port C je 8-mo bitni bidirekcioni port. Ovaj port je poseban sto na pinovima RC6 i RC7 ima ugra en USART modul koji slu`i za serisku komunikaciju (npr. Sa ra~unarom). Prilikom kori{}enja modula za serisku komunikaciju potrebno je softverski konfigurisati pinove RC6 i RC7 tako da budu u funkciji USART modula. Na slikama 2.24 i 2.25 su prikazane blok {eme PORTC, a funkcionalna tabela registara koji se koriste za konfigurisanje samog porta data je na slici Sl Struktura pinova od RC0 do RC2 i od RC5 do RC7 Sl.2.25.Struktura pinova od RC3 i RC4-49 -

51 Sl.2.26 Tabela registara koji sluze za konfigurisanje PORTC Port D Port D je 8-mo bitni bidirekcioni port. Ovaj port se mo`e konfigurisati kao 8-mo bitni paralelni mikroprocesorski port (parallel slave port-psp), podesavanjem konfigurisuceg bita PSPMOTE (TRISC<4>). U tom rezimu rada ulazni bafer je TTL tipa. Na slikama 2.27 i 2.28 je prikazana blok sema PORTD i funkcionalna tabela registara koji se koriste za konfigurisanje samog porta. Sl Struktura porta D

52 Sl.2.28 Tabela registara koji slu`e za konfigurisanje PORTD Port E Port E je {irine 3 bita.ima mogu}nost A/D konverzije. Svaki pin porta E mo`e da se konfiguri{e softverski kao ulazni ili izlazni. Ulazni bafer je Schmitt Trigger tipa. Pinovi se mogu konfigurisati kao digitalni ili analogni,kao i u slu~aju porta A, sto je vec pomenuto. Na slikama 2.29 i 2.30 prikazana je strukturna blok sema PORTE i tabelarni prikaz registara koji slu`e za konfigurisanje

53 Sl.2.29 Struktura porta E Sl.2.30 Tabela registara koji slu`e za konfigurisanje porta A/D konverzija S obzirom na kontinualnost pojava u spolja{njem svetu, te{ko je upravljati bilo kojim procesom bez digitalizacije analognih veli~ina. Kao sto smo vec napomenuli PORTA i PORTE imaju mogucnost A/D konverzije sto podrazumeva da se mogu konfigurisati kao analogni ili digitalni. Ako zelimo da koristimo A/D konverziju moramo uklju~iti modul za tu svrhu i podesiti ga na nacin koji nam najvise odgovara. Da bi to uradili potrbno je da pravilno podesimo registre ADCON0 i ADCON1. Zato u nastavku dajemo prikaz tih registara i prikaz tabele

54 koji su potrebni za konfigurisanje. Na slici 1.31 je prikazan je registar ADCON0. Registar ADCON0 sluzi za podesavanje A/D konverzije: frekvencije semplovanja A/D konvertora, kanal koji se koristi za A/D konverziju, po~etak A/D konverzije i uklju~uje se modul za A/D konverziju. Registrom ADCON1 (na slici 2.31) odre ujemo ulogu pojedinih pinova (analogni ili digitalni). Modul za A/D konverziju se bazira na A/D konvertor sa sukcesivni aproksimacijama. Sl Registar za pode{avanje A/D konverzije

55 Sl Pode{avanje tipa kanala (analogni/digitalni) Strujna, naponska i temperaturna ograni~enja U tabeli 2.7 dat je pregled strujnih, naponskih i temperaturnih ograni~enja mikrokontrolera i pojedinih portova. Tabela 2.7: Strujna,naponska i temperaturna ograni~enja mikrokontrolera Radna temperatura ambijenta -55 do +125ºC Napon na pojedinim pinovima u odnosu na Vss (bez Vdd, -0.3V do(vdd+0.3) MCLR i RA4) Temperatura cuvanja mikrokontrolera -65 do +150ºC Napon Vdd u odnosu na Vss -0.3V do +7.5V Napon na MCLR u odnosu na Vss 0 do +14V Napon na RA4 u odnosu na Vss 0 do +8.5 V Ukupna disipacija 1W Maksimalna izlazna struja na pinu Vss 300mA Maksimalna ulazna struja na pinu Vdd 250mA

56 Ulazna struja kroz klamp diode IIK (VI < 0 ili VI > VDD) Izlazna struja kroz klamp diode IOK (VO < 0 or VO > VDD) Maksimalna struja koju mo`e da primi jedan pin Maksimalna struja koju mo`e da da svaki pin Maksimalna struja koju mo`e port da primi(port A,B,C,D ie) Maksimalna struja koju mo`e port da da (port A,B,C,D i E) +/- 20mA +/- 20mA 25mA 25mA 200mA 200mA Organizacija memorije Strukturu memorije ovog mikrokontrolera ~ine tri odvojena bloka: 1. Programska memorija 2. Memorija podataka 3. EEPROM memorija podataka Odvojeno od nabrojanoh memorijskih blokova egzistira zasebna struktura magacina (Stack), koji se satoji od osam 13-bitnih registara. Stack pointer se ne moze ~itati, niti se u njega moze upisivati. Prilikom izvrsenja instrukcije CALL ili prilikom poziva prekida mikrokontrolera, adresa slede}e instrukcije se stavlja na magacin. Magacin radi na principu ciklicnog bafera, sto znaci da se u njega mogu staviti osam razli~itih adresa, a da se upisom devete bri{e prva i tako redom. Programski se ne mo`e utvrditi da li je do{lo do prepunjeja steka. Organizcija programske memorije PIC16F877 imaju 13-bitni programski brojac (PC) koji je u mogu}nosti da adresira memorijski prostor od 8k programskih re~i od 14 bita. Reset vektor je 0x0000 i od njega po~inje izvr{avanje programa. Interapt vektor je 0x0004. Mapa programske memorije i magacin prikazani su na slici

57 Organizacija memorije podataka Sl.2.33 Mapa programske memorije i stack Memorija za podatke je izdeljena u vi{e celina banki (banks), a sastoji se od registara op{te namene (General Purpose Registers) i registara specijalne funkcije (Special Function Registers). U jednom od specijalnih registara, tzv. STATUS registru postoje dva bita RP1 i RP0 koji slu`e za odabir `eljene banke podataka po principu prikazanom na slici Sl.2.34.Nacin kodovanja Bank

58 Svaka banka mo`e da sadr`i do 128 registara (0x7F). Ni`e lokacije u banci zauzimaju specijalni regisri, a ostatak prostora popunjavaju registri op{te namene implementirani kao stati~ki RAM. Neki specijalni registri koji se cesto koriste mapirani su u sve banke da bi se omogućio brzi pristup i redukcija kôda. Mapa registara mikrokontrolera PIC16F877 prikazana je na slici Nekoliko specijalnih registara su registri jezgra, usko povezani sa funkcionisanjem CPU. Ostali registri su vezani za periferne module i sluze njihovom upravljanju i kontroli statusa. Programski brojač (PC) odredjuje adresu instrukcije u programskom flesu koja ce sledeca biti pribavljena. Rec je o 13-bitnom registru. Simboli~ko ime ni`eg bajta je PCL. To je registar koji se moze i upisivati i iscitavati. Težih pet bita programskog brojaca smesteni su u izolovani registar PCH kojem se pristupa samo preko leca PCLATH mapiranom u internom RAM-u na adresi 0x0A. STATUS registar je veoma bitan i zato je predvidjeno da se moze adresirati iz bilo koje banke. On pokazuje status aritmeticko-logicke jedinice, reset status mikrokontrolera i sadrzi bite za selekciju banki internog RAM-a. Od navedenih flegova posebno treba izdvojiti Zero bit (Z) koji se postavlja kad je rezultat aritmeticke operacije jednak nuli i bit prenosa/pozajmice Carry (C). Registar OPTION_REG se koristi za konfiguraciju preskalera za tajmer 0 ili Watchdog, za upravljanje tajmerom0, selekciju ivice okidanja eksternog interapta, i za omogu}avanje Pull-up otpornika na portu B. Kada je re~ o registrima jezgra ne treba zaboraviti par FSR (File Select Register) i INDF (Indirect File), koji slu`e za indirektno adresiranje memorije podataka. Bilo koja instrukcija koja se obra}a INDF registru ustvari indirektno pristupa onoj lokaciji internog RAM-a cija je adresa trenutno u registru FSR

59 Sl Mapa registra PIC16F

60 Interni EEPROM za podatke Ako je potrebno neke podatke sa~uvati i po ukidanju napajanja mikrokontrolera, treba ih prethodno zapisati u interni EEPROM. Ova memorija sadrzi 256 bajtova Tajmeri Ove se periferije koriste za merenje vremena i brojanje eksternih doga aja. Ugra ena su tri tajmerska modula (TMR 0,1,2) i svaki ima svoje specificnosti. Tajmer0 je jednostavni 8-bitni brojač koji generi{e interapt pri prelasku sa 0xFF na 0x00 (overflow). Poseduju ga svi nizi PICmicro procesori i ovde je zadrzana kompatibilnost s njima. Izvor takta za tajmer0 moze biti bilo interni sistemski sat (Fosc/4), bilo spoljni generator takta spojen na pin RA4/T0CKI. Moguce je podesiti da se brojac inkrementira na rastucu ili opadaju}u ivicu spoljnjeg signala. U kombinaciji sa modulom tajmera 0 moze se koristiti programabilni preskaler (delilac frekvencije) sa odnosima deljenja od 1:2 do 1:256. Ukoliko deljenje nije potrebno preskaler se dodeli watchdog tajmeru. Kada je preskaler u upotrebi maksimalna frekvencija eksternog izvora iznosi 50 MHz sto je vece od maksimalne frekvencije samog mikrokontrolera. Tajmer1 je 16-bitni i tako e je osposobljen da radi kao brojac ili mera~ vremena. Ima tri izvora takta: sistemski sat (Fosc/4), spoljasnji takt ili spoljasnji kristal. Brojac eksternih dogadjaja moze se sinhronizovati sa internim oscilatorom, a postoji i asinhroni na~in rada koji omogu}uje da se brojac inkrementira i u sleep re`imu. Preskaliranje je upotrebljivo sa vrednostima deljenja 1:1, 1:2, 1:4 i 1:8. Tajmer2 je 8-bitni tajmer sa programabilnim preskalerom i postskalerom. Mo`e biti tajmer/brojac opste namene. Me utim, potreban je CCP modulu prilikom generisanja PWM signala i modulu za sinhronu serijsku komunikaciju (SSP) kao Baud Rate generator. U kooperaciji sa tajmerom 2 koristi se registar PR2 (Period Register). Kada se vrednost broja~a izjedna~i sa vredno{}u upisanom u registar PR2, generi{e se odgovaraju}i interapt CCP moduli CCP je skra}enica za Compare/Capture/PWM. PIC16F877 poseduje dva ovakva modula koji mu poma`u da se lak{e nosi sa raznim zahtevima real-time aplikacija. U re`imu rada Capture kada se desi doga aj na pinu RC2/CCP1 16- bitna vrednost tajmera 1 preslikava se u registre CCPR1H:CCPR1L. Istovremeno se setuje korespondentni interapt fleg u registru PIR1. Da bi ova operacija bila uspe{na tajmer1 mora raditi u tajmerskom re`imu ili re`imu sinhronizovanog brojanja. U re`umu rada Compare 16-bitna vrednost registra CCPR1 se stalno poredi sa vrijednoscu para registara tajmera1. Kada dodje do izjednacenja mogu}e je da se pin RC2/CCP1 setuje, resetuje ili ostane nepromenjen, sto se ranije podesi odgovarajućim konfiguracionim bajtom upisanim u registar CCP1CON. I u ovom slucaju se setuje interapt fleg CCP1IF. U re`imu rada PWM (Pulse Width Modulation) pin RC2/CCP1 proizvodi {irinsko-impulsni modulisani signal rezolucije do 10 bita. Pojednostavljeni blokdijagram PWM modula dat je na slici

61 Sl.2.36 Pojednostavljeni blok-dijagram PWM modula Period PWM signala odre uje se upisom u PR2 registar po formuli: PWM_perid = [(PR2)+1]*4*Tosc*TMR2_preskajler Vreme ispune (Duty Cycle Time) menja se upisom u registar CCPR1L i dva bita registra CCP1CON (biti 5 i 4). Time je omogu}ena maksimalno 10-bitna rezolucija PWM izlaza. Formula za prora~un je: PWM_ Duty_Cycle = (CCPR1L:CCP1CON<5:4>)*Tosc*TMR2_preskajler Ostale periferne jedinice Mikrokontroler PIC16F877 poseduje jo{ nekoliko korisnih periferijskih modula koji ce u ovom odjeljku biti samo kratko spomenuti. Mikrokontroler obi~no nije usamljen, nego je deo mre`e ure aja koji trebaju medjusobno komunicirati i razmenjivati podatke. U tu svrhu, on je opremljen sa tri hardverska komunikaciona modula. Prvi od njih je SSP modul (Synchronous Serial Port), koji sluzi za komunikaciju sa serijskim EEPROM-ima, pomerackim registrima, displej-drajverima, itd. Ovaj modul mo`e raditi u jednom od dva re`ima: 1. Serial Peripheral Interface (SPI) 2. Inter-Integrated Circuit (I2C) Drugi serijski komunikacioni modul je USART (Universal Synchronous Asynchronous Receiver Transmiter).On uglavnom slu`i za povezivanje sa personalnim ra~unarom, ali to nije njegova jedina mogu}nost primene. USART se moze konfigurisati u neki od slede}ih modova rada:

62 1. Asinhroni rad (full duplex) 2. Sinhroni master rad (half duplex) 3. Sinhroni slave rad (half duplex) Osim serijskih, postoji i jedan paralelni komunikacioni modul. Re~ je o modulu PSP (Parallel Slave Port). On sluzi da se PIC16F877 direktno pove`e na 8-bitnu magistralu podataka drugog mikroprocesora. Eksterni procesor tada koristeci linije Read (RD) i Write (WR) mo`e ~itati i upisivati PORTD registar kao svaki drugi 8-bitni le~

63 3. Hardver 3.1. Funkcionalna i blok šema Kao što se može videti sa funkcionalne i blok šeme ceo sistem možemo podeliti u više manjih sekcija koje zaokružuju neku logičku celinu. Lako uočavamo ispravljački stepen, LCD, mikrokontroler sa propratnim elementima i AD konvertor sa ulaznim stepenom. Sl.3.1. Funkcionalna šema sistema

64 Ulazna veličina / Analogni DC napon ADC 0804 Q2 Izlazna reč In wr cs rd Port C Port D Izlazni intrerfejs / LCD Ispravljački stepen PIC 16F877 Q1 P o r t B Q Sl.3.2. Blok šema sistema 3.2. Ispravljački stepen sa stabilizacijom napona Struktura bloka za napajanje prikazana je na slici 2.3. Pomoću transformatora T1 mrežni napon od 220 V se transformiše u AC napon amplitude 6 V. Nakon toga vrši dvostruko ispravljanje pomoću grecovog ispravljača. Nestabilizovani napon od 6 V se dovodi na ulaz dva linearna stabilizatora Na izlazu stabilizatora dobija se stabilisani napon od 5 V. Gde se izlaz jednog stabilizatora koristi za napajanje mikrokontrolera, a izlaz drugog za napajanje AD konvertora. Sl.3.3. Ispravljački stepen sa stabilizacijom napona

65 3.3.ADC0804 Osobine: c48 Bus kompatibilan 2. vreme konverzije,100us 3. lako se povezuje na ve}inu mikroprocesora 4. radi u Stand alone modu 5. ttl kompatibilni ulazi i izlazi 6. clock generator na samom ~ipu 7. raspon analognog ulaznog napona 0-5v OPIS Familija ADC 0802 je c-mos osmobitna, sukcesivni aproksimativni AD konvretor koji je dizajniran da radi sa 8080a sa kontrol bus izlazima sa 3 stanja. Ovi konvertori se prijavljuju prorcesoru kao memorijske lokacije ili I/O portovi

66 - 69 -

67 - 70 -

68 - 71 -

69 Kola sa tri stanja i talasni oblici :

70 - 73 -

71 - 74 -

72 Razumevanje specifikacija A/D gre{ke Perfektn A/D transfer karakterisktika je prikazana na 11a. Horizontalna skala prikazuje analognu ulaznu voltazu sa nivoima od 1 LSB. Digitalni izlazni kodovi koji odgovaraju ovim ulazima su prikazani kao D-1, D, D+1. Za perfektni A/D svaki stub treba da bude lociran -1/2 do +1/2 LSB od centralne vrednosti. Kao sto je prikazano, stubovi su idealni i nemaju {irinu. Ta~ni digitalni izlazni kodovi }e biti izabrani iz oblasti analogno ulazne volta`e koji se {iri +/-1/2LSB od idealnih centralnih vrednosti. Pa je tako svaka nit(tread) {iroka 1LSB. Na slici 11b je prikazana transfer funkcija ADC 0802 u najgorem slu~aju. Pored svake funkcije transfera je prikazan grafik gre{ke. Prime}uje se da gre{ka sadrzi kvantizacionu nesigurnost A/D-a. Detaljan opis: Funkc. dijagram ADC 0802 serije A/D konvertora radi na principu sukcesive aproksimacije. Analogni prekida~i se zatvaraju sekvencijalno koristeci sukcesivno-aproksimativnu logiku dok se razlika analogne ulazne volta`e ne poklopi sa referentnom volta`om. Normalna operacija se vr{i na slede}i na~in: Sa prelaskom sa visoke na nisku tranzociju WR ulaza, resetuju se SAR unutra{nja kola i nivoi shift registra i INTR izlaz ce biti postavljen na visoko (high). Dokle god su CS i WR nisko AD }e ostati u stanju reseta. Konverzacija ce

73 po~eti od 1 do 8 clock perioda kada bar jedan ulaz izvr{i tranziciju sa niskog na visoko. Posle zavr{etka tra`enog broja clock pulseva INTR pin }e napraviti tranziciju sa visokog na nisko. Ovo se moze iskoristiti da se blokira procesor. RD operacija }e prebaciti INTR liniju na visoko opet. Da bi se osiguralo paljenje pod svim mogucim uslovima, potreban eksterni WR puls prilikom prvog paljenja kola Digitalne operacije: Konverzija po~inje postavljanjem CSR i WR na nisko. To pokre}e filp flop i rezultuju}i nivo 1 resetuje 8bitni shift registar i vr{i input 1 u D flip flop. Unutrasnji clock onda signalizira transfer ove 1 na Q izlaz DFF1a. Ako set signal nije vi{e prisutan start F/F je resetovan i 8bitni shift registar tada mo`e da u- clock-uje 1 {to startuje konverziju.. Da nema ovog signala jo{ uvek bi trajao reset mod. Kad bi podaci hteli da se pro~itaju, kombinacije CS i RD u niskom nivou }e prouzrokovati da se INTR F/F resetuje i izlazno kolo sa 3 stanja }e biti u mogu}nosti da da 8bitne digit. izlaze. Analogna Operacija Analogna komapracija se vr{i uz pomo} kola za sabiranje kapacitivnog napajanja. Tri kondenzatora dele zajedni~ki ~vor sa ulazom na auto nivelisanim komparaotorom. Ulazni kondenzator se ukljucuje izmedju Vin+Vin-. Punjenje mre`e korespodira izmerenoj razlici izmedju ulaza i trenutne totalne vrednosti postavljene od strane sukcesivnog aproksimativnog registra. Ulazni bypass kondenzatori Bypass kondenzatori na ulazu u usrednjavaju ova punjenja i prouzrokuju da jednosmerna struja te~e kroz izlazne otpornike analognog izvora signala. Na 640kHz clock frekvencije sa Vin+ inputom od 5V ova jednosmerna struja je na max od oko 5 mikroampera. Zbog toga se bypass kondenzatori ne smeju koristiti na analognim ulazima ili pri Vref/2 pinu za izvore sa velikom otporn{cu tj. ve}om od 1000oma. Ako su bas potrebni vr{i se minimizacija veli~ine kondenzatora. Otpornost ulaznog izvora Visok nivo otpronosti izvora, gde ne postoje bypass kondenzatori, ne prouzrokuje gre{ke jer se ulazne struje primire pre nego {to po~ne komparacija. Za izvore sa niskom otporno{}u dovoljan je kondenzator od 0.1F na ulazu pri ~emu se smanjuje EMI. 100omski otpornici se mogu koristiti za izolaciju ovih kondenzatora od Izlaznog operacionog poja~ava~a

74 Pode{avanje referentnog naponskog opsega Za max fleksibilnoost ovi AD su dizajnirani da se prilagode volta`i od 5v, 2.5v ili po referenci. Ovo je omogu}eno dizajniranjem ICA kao sto je prikazno na slici 12. Mora se primetiti da je referentna volta`a za IC ili ½ 1/2½ volta`e koja je dovedena na V+ pinu ili je jednaka volta`i koja je dovedena sa spoljne stranena na pin Vref/2. To omogu}ava kori{}enje ref volta`e od 5V ili kao alternativa mo`e se koristiti volta`a manja od 2.5V dovedena Vref/2 ulazu. Unutra{nji gain Vref/2 ulaza je 2. Ovakva prilago avaju}a referentna volta`a moze koristiti reducirani opseg ili dinami~ki volta`ni opseg analognog ulaza. Tako se koristi puna 8bitna rezolucija na ovako reducirani analogno ulazni volta`ni raspon, kako je prikazano na slici 13. Za uve}ane ulazne skale koristi se slika 14 i

75 7. Potrebna

76 Ta~nost reference Konvertor se mo`e koristiti u pseudo-ratiometrik modu ili apsolutnom modu. U ratiometriskom veli~ina volta`ne reference je zna~ajan faktor i u izlazu pretvara~a izvora i u izlazu AD konvertora te se zbog toga poniš{tavaju u finalnom izlaznom kodu. U apsolutnoj konverziji i po~etna vrednost i temperaturna stabilnost referentne volta`e su van`i faktori pri odre ivanju ta~nosti. Za Vref/2 volta`e 2,5V nominalne vrednosti po~etne gre{ške su +-10mV i one mogu da izazovu konverzione gre{ške od +-1LSB kao posledica vrednosti gejna 2 na ulazu Vref/2. Kod aplikacije pri reduciranoj {širini opsega inicijalna vednost i stabilnost ulazne volta`e na Vref/2 postaje još{ va`nije. [Širine opsega manje od 2,5V potra`uju ~ak i stro`e kriterijume pri inicijalnoj ta~nosti i stabinosti referentnog izvora. Generalno referentna volta`a potra`uje inicijalna pode{šavanja. Gre{ške koje se javljaju prilikom unosa pogreš{ne referentne volta`e se javlja u vidu gre{ške na celoj skali A/D transfer funkcije. Nulta gre{ka Nula kod A/D-a ne tra`i nikakva podeš{avanja. Ako minimalna vrednost analognog ulaznog napona nije uzemljenje onda postoji mogunost nultog offset-a. Konvertor se mo`e povezati na izlaz digitalnog koda zarad minimalne ulazne volta`e pomeranjem A/D Vin(-) ulaza na vrednost Vin (min). Ovo koristi operaciju diferencijalnog moda A/D konvertora. Nulta gre{ška kod A/D konvertora pokazuje lokaciju prvog stuba transfer funkcije i mo`e se meriti uzemljenjem ulaza Vin (-) i primenom male ja~ine pozitivne volta`e na Vin(+) ulazu. Nulta gre{ška je razlika izme u stvarnog ulaza jednosmerne volta`e koja je potrebna da bi doš{lo do prelaza digitalnog koda na izlazu na i idealne vrednosti od ½ LSB-a. Podešavanje za celu skalu Podeš{avanja na celoj skali se mogu raditi uz pom}u diferencijalne ulazne volta`e koja je za 3/2 LSB-a manja od `eljenog opsega analogne volta`e na celoj skali i onda pode{šavanjem ja~ine ulaza Vref/2 za kod na digitalnonm izlazu koji se upravo promenio sa na

77 Opcije za klokovanje Klok za A/D mo`e pote}i od strane spoljnjeg izvora kao što su CPU klok ili se spoljna RC mre`a mo`e dodati da bi se omogu}ilo samo-klokovanje. CLK IN omogu}ava koriš{}enje [Šmit trigera kao što je prikazano na slici 16. Jako kapacitivno ili jednosmerno napajanje CLK-a R pina se treba izbe}i po{što bi ovo poremetilo rad konvertora. Ja~ina manja od 50pF je dozvoljen. Restartovanje tokom konverzije Ako se A/D restartuje tokom konverzije konvertor se resetuje i nova konverzija po~inje. Izlazni podaci kola za pam}enje se ne apdejtuju ako konverzija koja je u toku nije dovrš{ena. Podaci sa predhodne konverzije ostaju na kolu za pam}enje. Driving the data BUS CMOS A/D kao MOS mikroprocesori i memorije imaju potebu za BUS driver-om kada totalni kapacitet DATA BUS-a postane veliki. Ostala kola, koja su povezana na data BUS, pridodaju totalnoj kapacitivnosti ~ak i u modu sa tri stanja. Postoje odre ene alternative koje dizajneri mogu da koriste za reš{avanje ovog problema. U osnovi, punjenje kapaciteta data BUS-a usporava vreme odziva i ako su ispunjene sve specifikacije DC-a za sisteme koji rade pod relativno sporom CPU klok frekfencijom postoji vi{še vremena da se uspostave pravilni logi~ki nivoi na BUS-u te je time omogu}en prenos podataka ve}e kapacitivnosti. Za vi{še frekfencije CPU kloka vreme se mo`e produ`iti za I/O o~itavnja insertovanjem ~ekaju}ih stanja (8080) ili kori{}šenjem kola za produ`avanjem kloka. Najzad ako je vreme kratko a kapacitet prenosa veliki mora se koristiti spoljni BUS driver. Ovo mogu biti buffer-i sa tri stanja ili specijalni produkti za ostvarivanje ve}eg protoka. Napajanje Vrhovi š{umova na V+ liniji snabdevanja mogu izazvati konverzione gre{ške jer komparator reaguje na ovaj {šum. Zbog toga se koristi specijalni filter

78 koji se stavlja blizu V+ konvertorskog pina i preporu~uje se vrednosti od 1uF. Ako se u sistemu nalazi ikakva neregulisana volta`a odvojeni 5V-ni regulator volta`e za konvertor }e dosta smanjiti digitalni {šum na V+ liniji za snabdevanje. Mere predostronosti prilikom povezivanja i priklju~ivanja Standardni digitalni priklju~ci nisu zadovoljavaju}i za {širokopojasno povezivanje sa A/D konvertorom. Mogu se koristit priklju~ci na plo~i PC-a. Sve `ice i prenosnici logi~kih signala bi se trebalo grupisati i maksimalno odvojiti od prenosnika analognog signala. U suprotnom bi se mogao pojaviti ne`eljeni {šum. Bypass kondezator za napajanje i kondezator za samo-klokovanje bi trebalo da budu vezani za digitalno uzemljenje. Bilo koji Vref/2 Bypass kondezator, filter kondezator analognog ulaza bi trebalo da budu povezani za analogno uzemljenje. Test za dobro uzemljenje predstavlja merenje nulte gre{ške A/D konvertora. Testiranje A/D konvertora Postoje mnogi nivoi kompleksnosti vezani za testiranje A/D konvertora. Jedan od najprostijih testova jeste kori{}šenje poznate analogne ulazne volta`e na konvertoru i koriš{}enje LED-a da bi se prikazao rezultuju}i izlazni kod kao na sl. 18. Vref/2 pin treba povezati na 2,56V i treba se koristiti V+ volta`a za napajanje od 5,12V. To daje LSB vrednost od 2mV. Ako se koristi podeš{avanje cele skale analogna ulazna volta`a od 5,09V se dovodi Vin + pinu pri ~emu je Vin pin uzemljen. Vrednost Vref/2 ulazne volta`e se treba pode{šavati dok se kod na digitalnom izlazu ne prebaci sa na Ova vrednost se onda koristi za sve testove. LED displej za digitalni izlaz se mo`e dekodirati deljenjem 8bit na 2 hex karaktera, jedan sa 4 najva`nijih bit-ova i jedan sa 4 najmanje va`nijih bit-ova. Izlazne volta`a se onda tra`i po formuli: Vout = (MS/16+LS/256)*5,12V

79 Tipi~na primena Povezivanje 8080/85 ili ZED-80 mikroprocesor Ovaj konvertor je dizajniran da se direktno povezuje sa 8080/85 ili ZED- 80 mikroprocesor. Mogu}nost izlaza sa tri stanja A/D konvertora elemini{še potrebu za spoljnim interfejs ure ajem i ako je dekodiranje adresa jo{š uvek potrebno da bi se generisao prikladan CS za konvertor. A/D se mo`e mapirati u memorijskom prostoru ili se mo`e kontrolisati kao ure aj za I/O koriste}i i I/OW strobere i dekodovanjem adresnih bitova A0 u A7 da bi se pribavio CS ulaz. Kori{}šenjem I/O prostora dobijamo 256 dodatnih adresa i mogu}nost prostijeg 8bit-nog dekodera adresa, ali se podaci mogu ubacivati samo preko akumulatora. Da bi se iskoristile referentne instrukcije dodatne memorije A/D se mora mapirati u memorijskom prostoru. Slika 21. Standardni kontrol BUS signali 8080-ice se mogu direktno povezati na digitalne kontrolne ulaze A/D-a, zbog potrebe za BUS tajmingom, da bi se omogu}ilo startovanje konvertora i ubacivanje podataka na data BUS. BUS driver se treba koistiti za ja~e mikroprocesorske sisteme gde se prevazilazi kapacitivna ja~ina ve}a od 100pF. Veoma je po`eljno primetiti da u sistemu gde je A/D konvertor 1 od 8 ili manje I/O mapiranih ure aja nema potrebe za adresnim dekodiranjem. Svaki od 8 adresnih bit-ova se mo`e koristiti direktno kao ulazcsa. Povezivanje derivata 6800 mikroprocesora Kontrolni BUS za derivate 6800 mikroprocesora ne koristi RD i WR strobe signale. Umesto toga koristi jedinstvenu R/W liniju i dodatno vreme ako je potrebno. Svi I/O ure aji su memorijski mapirani u 6800 sistem, i specijalan signal VMA indicira da je trenutna adresa va`e}a. Slika 23 pokazuje š{emu za interfejs gde je A/D emorijski mapiran u 6800 sistem. Prostije, CS dekodiranje je prikazano koriste}i ½ DM8092. Zapamtiti da u mnogim 6800 sistemima v}e dekodirana 4/5 linija se dovodi na zajedn~iki BUS na pinu 21. Ona se mo`e direktno vezati na CS pin A/D-a ako nijedan drugi ure aj nije adresiran na HEX ADDR:4XXX ili 5XXX. Na slici 24 ADC 0802 serija je povezana na MC 6800 mikroprocesor pomo}u porta B na MC 6820 ili MC 6821 perifernog interferencijskog adaptera. Ovde je CS pin A/D konvertora uzemljen po{što je PIA ve} memorijski mapiran u MC 6800 sistemu i nije potrebno CS dekodiranje. Tako e primetiti da su linije podataka A/D izlaza povezane na BUS mikroprocesora pod programskom kontrolom kroz PIA te je mogu}e A/D RD pin uzemiti

80 - 83 -

81 - 84 -

82 - 85 -

83 3.4. Ulazni stepen AD konvertora ADC0804 AD konvertor ADC0804 ima samo jedan ulazni pin, zato postoje parovi ugradnih buksni čijim spajanjem na njega možemo dovesti različite ulazne signale. Što se tiče jednosmernih signala postoje dva fiksna ulaza; jedan od 2.5 V (od razdelnika napona R10, R11) i drugi od 3.36 V (od razdelnika napona R 2, R14), takođe postoji jedan promenljivi ulaz od 0 5 V (od potenciometra R12). Ukoliko je potrebno dovesti naizmenični signal ostavljena je mogućnost preko para ulaznih ugradnih buksni J3. Tada razdelnik napona R10, R11 podiže nivo naizmeničnog signala za 2.5 V, diode D4 i D5 imaju zaštitnu ulogu. Stabilizator (LM336) koristimo radi dobijanja referentnog napona od 2.5 V za AD knovertor, čiju je vrednost moguće podešavati preko potenciometra R6. Frekvencija AD konvertora ADC0804 definisana je RC članom (R9,C7) preko formule: 1 f = 1.1 R9 C7 Sl.3.7. Ulazni stepen AD konvertora ADC Povezivanje kola za reset i oscilatora Strukturu kola za reset čine pasivni elementi R3 i C4 čija je vremenska konstanta tako izabrana da obezbedi korektni start programa nakon uključenja sistema na napajanje. Uloga tastera S1 je da obezbedi manuelni reset za slučaj da mikrokontroler iz određenih razloga blokira rad u toku izvršenja programa. Način povezivanja kola oscilatora je prikazan na slici 3.8. U konkretnom rešenju, koje se odnosi na povezivanje kristalnog oscilatora, poštovane su preporuke firme Microchip. Frekvencija oscilatora je 4 MHz

84 Kondenzator C4 ima ulogu da filtrira napon na pinu MCLR za vreme rada kontrolera, tj. da ne dođe do neželjenog resetovanja mikokontrolera usled postojanja VF smetnji na vodovima za napajanje. Sl.3.8. Način povezivanja mikrokontrolera Dioda D3 ima zaštitnu ulogu pri programiranju mikrokontrolera programatorom koji se povezuje na konektor S Kontrolna logika Kao što se može videti sa slike i blok šeme sprega mikrokontrolera PIC16F877 i AD konvertora ADC0804 ostvarena je preko porta C i porta D mikrokontrolera, dok je preko porta B izvršena sprege mikrokontrolera i LCD-a. Port C je definisan kao ulazni port mikrokontrolera i njegova uloga je da prihvati izlaznu osmobitnu digitalnu reč AD konvertora. Pinovi porta D služe za kontrolu AD konvertora. Pin RD0 porta D mikrokontrolera vezan je za pin CS AD konvertora. CS služi za selektovanje AD konvertora, ukoliko ih ima više. U konkretnom slučaju postji samo jedan AD konvertor pa je CS postavljen na logičku 0. RD1 je vezan za pin RD AD konvertora. RD definiše stanje izlaznog trostatičkog bafera AD kovertora. Kada se RD postavi na logičku 1 izlaz trostatičkog bafera je u stanju visoke impedanse, a kada dovedemo logičku nulu na izlazu AD konvertora imamo neku osmobitnu digitalnu reč. RD2 je vezan za pin WR AD konvertora. WR omogućava početak AD konverzije, silaznom ivicom signala koji dovodimo na WR startujemo proces AD konverzije, dok uzlazna ivica startuje interni brojač po čijem odbrojavanju se završava proces AD konverzije

85 RD3 je vezan za pin INTR AD konvertora. Signalom koji generiše na pinu INTR AD konvertor obaveštava mikrokontroler o stanju procesa AD konverzije. Pre početka AD konverzije signal INTR ima vrednost logičke 0, u trenutku startovanja AD konverzije skače na vrednost logičke 1, dok se po završetku procesa konverzije vraća na logičku 0. Sl.3.9. Sprega mikrokontrolera i AD konvertora Sl Talasni oblici kontrolnih signala Takođe, trebamo napomenuti da je na pin RD7 mikrokontrolera povezan mikroprekidač S3, čijim aktiviranjem startujemo proces AD konverzije

86 3.7. Povezivanje LCD-a Široku primenu u savremenim mikrokontrolerskim sistemima postigli su LCD displeji koji pored prikaza numeričkih karaktera imaju u sebi implementiran ceo ASCII alfabet, kao i razne specijalne znake. Postoje različiti tipovi alfanumeričkih LCD displeja, ali najveći procenat se bazira na istom čip-setu tipa Hitachi HD Iz tog razloga displeji koji su kompatibilni sa HD44780 mogu koristiti iste softverske rutine, bez obzira na tip ili proizvođača. U konkretnom rešenju za povezivanje LCD-a korišćena su sledeća tri konektora: 1. konektor za prenos podataka, LCD_DATA; 2. konektor kojim se predaju komande LCD-u, LCD_DATA1; 3. konektor za napajanje, LCD_NAP. LCD displej je instaliran na gornjem delu osnovne ploče. Regulacija kontrasta LCD displeja ostvarena je preko potenciometra R5 nominalne vrednosti 10k. Način povezivanja LCD displeja na napajanje i interfejsa za regulaciju kontrasta prikazan je na slici na slici sl.3.11.: Sl Povezivanje LCD displeja na napajanje i interfejsa za regulaciju kontrasta LCD displej je formata 2x16 karaktera. Svaki karakter moze da prikaže maksimalno 7x9 osnovnih elemenata. Format prikaza karaktera je programabilan i definiše se na početku prikaza informacije u redu. Pristup displeju radi upisa karaktera ostvaruje se preko 14-to pinskog konektora, paralelnim pristupom 8-mo bitnog podatka na nozicama od D0 do D7 (slika i 3.13.)

87 Sl Fizički izgled organizacije prikaza LCD-a i adresne organizacije memorije za prikaz Funkcija i namena svakog od pina na konektoru LCD displeja je definisana na slici Sl Raspored i funkcije pinova konektora LCD-a Ukazaćemo sada na princip rada LCD displeja. Sa mikrokontrolerom LCD displej komunicira preko sledeće dve magistrale: dvosmerne magistrala za podatke, D0 do D7, preko ovih linija mikrokontroler moze da upisuje u ili čita podatke iz LCD displeja

88 jednosmerne upravljačke magistrale čine je linije RS, R\W i E. Signal E kada je aktivan (E=1) dozvoljava rad displeja. Signal R\W definise operaciju čitanja ili upisa (R\W=1 obavlja se operacija čitanja, u suprotnom je upis). Signalom RS definiše se kom se registru vrši pristup, kada je RS =1 registrima za podatke nazvanih DDRAM-a (Display Data Ram) i CGRAM-a (Character Generator Ram), a kada je RS=0 pristupa se komandnom registru. Upisom u DDRAM podaci se prikazuju na ekranu LCD-a. CGRAM prikazuje karaktere na displeju u matrično tačkastoj formi. Sadržaj CGRAM-a je moguće softverski menjati, tako da se mogu prikazati forme karaktera kreiranih po želji korisnika. Internu memoriju LCD displeja koja se koristi za prikaz karaktera čine dva reda od po 40 lokacija (vidi sliku 3.14.). U svakoj lokaciji se memoriše po jedan karakter, a ukupno je vidljivo 16 karaktera, a nevidljivo 24. To znaci da je moguće ostvariti horizontalno pomeranje informacija u toku prikaza. Na slici prikazane su adrese vidljivih lokacija na LCD displeju, pri čemu se početna adresa prikaza definiše komandom za prikaz u fazi inicijalizacije. Sl Dvoredni smart LCD U cilju uštede broja pinova kojim se LCD displej povezuje na mikrokontroler projektanti cesto koriste četvorobitni rezim rada komuniciranja. Naime, umesto da se vrši istovremeni prenos svih osam bitova karaktera prenos se ostvaruje na nivou niblova, i to tako što se prvo prenosi MS a nakon toga LS nibl. Treba pri ovome naglasiti da se četvorobitni rezim komuniciranja definiše odgovarajućom komandom u fazi inicijalizacije. Na ovaj način umesto da se povezivanje ostvari sa 11, realizuje se sa 7 linija. Ako se LCD koristi samo za prikaz poruka, pin RW se može povezati na masu i broj potrebnih pinova je tako smanjen na 6. Na slici je pikazno povezivanje LCD-a sa PIC16F877 u 4-bitnom režimu komuniciranja. U konkretnoj realizaciji korišćen je PORT D i to tako da su za prenos podataka iskorišćeni pinovi od RD4 do RD7, a za upravljanje radom displeja pinovi RD2 i RD

89 Sl Način povezivanja LCD-a i mikrokontrolera LCD displej je programibilna periferija, pa kao takva podržava određeni skup komandi. Spisak komandi i funkcije koje obavljaju te komande prikazan je na slici Sl Tabela instrukcija LCD-a

90 3.8. Fizički izgled štampanih pločica Na slikama do prikazan je oblik štampanih pločica sistema projektovanih u programskom paketu Protel 99SE. Sl Izgled štampane pločice - pogled odozgo

91 Sl Izgled štampane pločice - pogled odozdo Sl Raspored komponenata

92 3.9. Spisak korišćenih komponenata Spisak ugrađenih elemenata korišćenih u projektu dat je u tabeli 3.1. Oznaka komponente Naziv komponente Vrednost komponente R1 Otpornik 1/4W 1k R2 Otpornik 1/4W 1k R3 Otpornik 1/4W 4k7 R4 Otpornik 1/4W 4k7 R5 Potenciometar 10k R6 Potenciometar 10k R7 Potenciometar 10k R8 Otpornik 1/4W 10k R9 Otpornik 1/4W 2k2 R10 Otpornik 1/4W 100k R11 Otpornik 1/4W 100k R12 Otpornik 1/4W 100Ω R13 Otpornik 1/4W 100Ω R14 Otpornik 1/4W 2k C1 Elektrolitski kondenzator 470μF C2 Blok kondenzator 100nF C3 Blok kondenzator 100nF C4 Blok kondenzator 100nF C5 Keramički kondenzator 22pF C6 Keramički kondenzator 22pF C7 Keramički kondenzator 150pF C8 Blok kondenzator 100nF C9 Blok kondenzator 100nF BP1 Blok kondenzator 100nF BP2 Blok kondenzator 100nF BP3 Blok kondenzator 100nF D1 Grec 1A D2 LED 3mm Crvena D3 Dioda BAT42 D4 Dioda 1N4007 D5 Dioda 1N4007 Q LCD Displej HD44780 Kompatibilan Q1 Mikrokontroler PIC16F877 Q2 AD Konvertor ADC0804 Q3 Stabilizator 2.5V LM336 U1 Stabilizator 5V 7805 U2 Stabilizator 5V

93 J1 Konektor 220V J3 Par ugradnih buksni Ženski J4 Par ugradnih buksni Ženski J5 Par ugradnih buksni Ženski J6 Par ugradnih buksni Ženski T1 Transformator 2.5VA 220/6V 400mA Y1 Oscilator 4MHz S1 Mikroprekidac - S2 Konektor Petopinski S3 Mikroprekidac - Tabela 3.1. Spisak komponenata

94 4.1. Instalacija korišćenog softvera 4. Softver Za kreiranje programa na HLL-u C koristićemo programski paket Hi-Tech. Koraci koje treba preuzeti da bi se instalirao paket Hi- Tech i kreirala aplikacija na programskom jeziku C, su sledeći: 1. Pre instalacije ovog programskog paketa potrebno je instalirati MPLAB, jer se kasnije Hi-Tech integriše u MPLAB programski paket. Instalacija MPLAB-a počinje pokretanjem aplikacije MPLAB v6.41.exe. Po pokretanju aplikacije na monitoru se pojavljuje prozor: 2. Za nastavak instalacije potreban je kliknuti NEXT. Nakon ovoga se pojavljuje sledeći prozor:

95 3. Čekira se polje I ACCEPT i klikom na NEXT sledi nastavak instalacije i pojavljuje se prikaz sledećeg oblika 4. Klikom na Browse bira se direktorijum gde se instalira MPLAB, a zatim klikom na NEXT nastavlja se instalacija

96 5. Aplikacija nas pita da li želimo da napravimo prečicu u start meniju. Odabiramo jednu od ponuđenih opcija, a zatim sledi klik na NEXT. 6. Bira se da li želi prečica na radnoj površini, a zatim treba kliknuti na NEXT

97 7. Ako je korisnik spreman za instalaciju to potvrđuje tasterom NEXT pa se dobija sledeći prozor: 8. Potrebno je sačekati određeni vremenski period da se završi instalacija, a zatim se pojavljuje prozor prikazan na sledećoj slici:

98 9. Za nastavak instalacije kliknuti na NEXT. 10. Nakon čitanja poruke koja se odnosi na USB Driver Installition Please read treba kliknuti na NEXT

99 11. Nakon čitanja poruke koja se odnosi na Driver Installition You MUST read treba kliknuti na NEXT. 12. Nakon čitanja poruke koja se odnosi na USB Driver Installition Please read treba kliknuti na CONTINUE

100 13. Nakon čitanja poruke koja se odnosi na USB Driver Installition Please read treba kliknuti na CONTINUE. 14. Za kraj instalacije kliknuti na FINISH. 15. Poželjno je u ovom trenutku restartovati računar

101 Nakon instalacije paketa MPLAB potrebno je instalirati programski paket Hi-Tech i integrisati ga u MPLAB. Da bi se obavila ova aktivnost potrebno je preuzeti sledeće korake: 1. Instalacija počinje pokretanjem aplikacije picclite.exe. Po pokretanju aplikacije na monitoru dobijamo sledeći prozor: 2. Klikom na NEXT nastavlja se instalacija. 3. Da bi se nastavilo sa instalacijom treba kliknuti na NEXT

102 4. U generisanom prozoru nude se uslovi korišćenja licenciranog softvera. Klikom na YES nastavlja se proces instalacije. 5. Klikom na taster (polje) Browse bira se direktorijum gde se instalira Hi- Tech, a zatim klikom na polje NEXT nastavlja se instalacija

103 6. Za nastavak instalacije potrebno je kliknuti na polje NEXT 7. U ovom trenutku potrebno je sačekati izvesni vremenski period da se završi instalacija Hi-Tech

104 8. Odgovorom na YES na generisanom prozoru izvršiće se integracija Hi- Tech u MPLAB razvojnom okruženju. 9. Za nastavak kliknuti na OK

105 10. Kliknuti na NEXT za nastavak. 11. Klikom na YES završavamo instalaciju Hi-Tech i po automatizmu se restartuje računar

106 Sada je potrebno podesiti MPLAB tako da koristi Hi-Tech kompajler u procesu kompajliranja. 1. Klikom na ikonu MPLAB koja se nalazi na radnoj površini pokreće se kompajler i generiše se prozor: 2. Sada je potrebno podesiti MPLAB tako da koristi Hi-Tech kompajler u procesu kompajliranja. Klikom na Project Project Wizard pojavice se novi prozor na monitoru

107 3. Za nastavak kliknuti na NEXT. 4. U polju Device potrebo je odabrati PIC16F

108 5. U polju Actiive Toolsuite potrebno je odabrati opciju HI-TECH Toolsuite,a zatim kliknuti na polje NEXT

109 6. U polju Poject Name potrebno je upisati ime projekta, a zatim u polju Project Directory odabrati direktorijum gde ćemo smestiti prethodno napisani kôd. 7. Na ovom prozoru treba odabrati folder u kojoj se nalazi napisan nas program koji želimo da kompajliramo. Klikom na potrebni fajl, pa zatim na ADD, štikliranjem polja ispred imena odabranog fajla i klikom na NEXT generiše se prozor:

110 8. Klikom na FINISH završavaju se potrebna podešavanja Na dalje sledi editovanje i proces kompajliranja napisanog programa (Project Build All) koji kao rezultat daje HEX fajl koji se kasnije da učitava u Ic-Prog. Kada ovo završimo potrebo je instalirati programski paket Ic-Prog. 1. Instalacija počinje pokretanjem aplikacije icprog.exe. Zatim je potrebno je izvršiti podešavanja kao na priloženoj slici, a zatim kliknuti na polje OK

111 2. Zatim se pojavljuje sledeći prozor: 3. Ukoliko je potrebno treba podesiti odgovarajući drajver, a zatim sledi učitavanje HEX fajla koji se dobija kompajliranjem programa. To možemo uraditi klikom na: File Open File

112 Nakon toga pojavljuje se prozora na kom se može videti heksadecimalni sadržaj iskompajliranog programa. Potrebno je na njemu podesiti tip oscilatora i fuses podešavanja, ako već nisu programski podešena

113 4. Loadovanje se pokrece klikom na: Command Program All (kao na prilozenoj slici): 5. Nakon potvrde počinje proces loadovanja, a zatim automatski i proces verifikacije Listing programa Listing programa u c-u //************************************************************** // Projekat: ADC sa ADC0804 // Sourse: adc0804.c // procesor:pic16f877 //************************************************************** #include <pic.h> #include "delay.c" #include "lcd.c" CONFIG(LVPDIS&XT&PWRTEN&WDTDIS&DEBUGDIS); EEPROM_DATA('A','D','C','_','0','8','0','4'); EEPROM_DATA('J','U','N','_','2','0','0','8'); EEPROM_DATA('V','E','R','_','1','.','0','0'); EEPROM_DATA('B','R','A','N','K','O','_','S'); EEPROM_DATA('T','O','J','I','C','_','M','I'); EEPROM_DATA('L','A','N','_','S','T','O','I'); EEPROM_DATA('L','K','O','V','I','C','.','.'); #define adc_data PORTC #define naponska_ref

114 #define PORTBIT(adr, bit) ((unsigned)(&adr)*8+(bit)) //dajemo simbolocka imena pinovima static bit PORTBIT(PORTD,0); static bit PORTBIT(PORTD,1); static bit PORTBIT(PORTD,2); static bit PORTBIT(PORTD,3); static bit PORTBIT(PORTD,7); void broj(unsigned char b) { unsigned char pom=0,k=8; unsigned char maska=0b ; lcd_gotoxy(5,1); //pozicioniraj kursor while(k>0) { pom=b&maska; maska=maska>>1; pom=pom>>k-1; lcd_dec_str(pom); //stampaj binarno k=k--; } } void meri(void) { unsigned long napon=0; unsigned long napon1=0; napon1=(naponska_ref/256); lcd_gotoxy(0,0); cs=0; //omoguci konvreziju rd=0; //omoguci izlaz wr=1; // cekaj konverziju DelayUs(1); wr=0; //pocni konverziju DelayUs(10); wr=1; while(intr); DelayUs(1); napon=(napon1*adc_data); napon=(napon/1000); lcd_puts("napon: "); lcd_dec2str3(napon); lcd_puts(" V"); lcd_gotoxy(0,1); lcd_puts("bin: "); broj(adc_data); } //racunanje napona // odredjivanje formata //prepravi potprogram za decimalnu tacku //stampaj binarni oblik void main(void) { GIE=0; //onenomoguci sve prekide TRISC=0xFF; TRISA=0x00;

115 TRISE=0b000; TRISD=0x88; TRISB=0x00; PORTA=0x00; PORTE=0b000; PORTB=0x00; PORTD=0x00; lcd_init(); lcd_clear(); lcd_gotoxy(0,0); lcd_puts("projekat IZ"); lcd_gotoxy(0,1); lcd_puts("mips-a"); DelaySec(2); lcd_clear(); while(1) { if(!start) { while(1) { meri(); DelayUs(200); } } } } Napomena: Ovde je prikazan samo glavni program, u kome su korišćene gotove biblioteke; pic.h, delay.c, lcd.c koje su priložene uz kompletnu dokumentaciju projekta. Listing programa u asembleru HI-TECH Software PICC Macro Assembler V processor 16F877 2 opt pw 79 3 psect text0,local,class=code,delta=2 4 psect text1,local,class=code,delta=2 5 psect text2,local,class=code,delta=2 6 psect text3,local,class=code,delta=2 7 psect text4,local,class=code,delta=2 8 psect text5,local,class=code,delta=2 9 psect text6,local,class=code,delta=2 10 psect text7,local,class=code,delta=2 11 psect text8,local,class=code,delta=2 12 psect config,global,class=config,delta=2 13 psect eeprom_data,global,class=eedata, + space=2,delta=2 14 psect text9,local,class=code,delta=2 15 psect text10,local,class=code,delta=2 16 psect strings,global,class=string,delta=2 17 psect temp,global,ovrld,class=bank0,space=1,de

116 + lta= psect text _DelayMs 31 ; _cnt assigned to?a_delayms _DelayMs$cnt set?a_delayms 33 ; _i assigned to?a_delayms _DelayMs$i set?a_delayms+1 35 ; dcnt assigned to?a_delayms _DelayMs$_dcnt set?a_delayms+2 37 ;_cnt stored from w clrf 3 ;select bank A7 movwf?a_delayms l4 41 ;delay.c: 11: void 42 ;delay.c: 23: i = 4; movlw A8 movwf?a_delayms l7 46 ;delay.c: 24: do { 47 ;delay.c: 25: { unsigned char _dcnt; _dcnt = (2 + 50)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= + 0) continue; }; movlw A9 movwf?a_delayms l BA9 decfsz?a_delayms D28 goto l9 53 ;delay.c: 26: } while(--i); A 0BA8 decfsz?a_delayms B 2D26 goto l7 56 ;delay.c: 27: } while(--cnt); C 0BA7 decfsz?a_delayms D 2D24 goto l E 0008 return psect text C _DelaySec 63 ; _sec assigned to?a_delaysec _DelaySec$sec set?a_delaysec 65 ; _loop assigned to?a_delaysec _DelaySec$loop set?a_delaysec+1 67 ;_sec stored from w C 0183 clrf 3 ;select bank

117 69 059D 00A1 movwf?a_delaysec 70 ;delay.c: 31: void E 01A2 clrf?a_delaysec F 2DA3 goto l A0 l12 74 ;delay.c: 36: { 75 05A0 30FA movlw A call _DelayMs 77 05A2 0AA2 incf?a_delaysec A3 l A movf?a_delaysec+1,w 80 05A4 00A3 movwf?a_delaysec A5 01A4 clrf?a_delaysec A movf?a_delaysec,w 83 05A7 00A5 movwf?a_delaysec A8 01A6 clrf?a_delaysec A bcf 3, AA 0DA5 rlf?a_delaysec AB 0DA6 rlf?a_delaysec AC 1003 bcf 3, AD 0DA5 rlf?a_delaysec AE 0DA6 rlf?a_delaysec AF 0826 movf?a_delaysec+5,w 92 05B0 3A80 xorlw B1 00F4 movwf btemp 94 05B movf?a_delaysec+3,w 95 05B3 3A80 xorlw B subwf btemp,w 97 05B5 1D03 btfss 3, B6 2DB9 goto u B movf?a_delaysec+2,w B subwf?a_delaysec+4,w B9 u B9 1C03 btfss 3, BA 0008 return BB 2DA0 goto l psect text _lcd_cmd 108 ; _ins assigned to?a_lcd_cmd _lcd_cmd$ins set?a_lcd_cmd 110 ; dcnt assigned to?a_lcd_cmd _lcd_cmd$_dcnt set?a_lcd_cmd ;_ins stored from w clrf 3 ;select bank B0 movwf?a_lcd_cmd 115 ;lcd.c: 35: void lcd_cmd(unsigned char ins) bcf 6,2 117 ;lcd.c: 38: PORTB = (PORTB & 0x0f) (ins & 0xf + 0); A 39F0 andlw B 00B2 movwf?a_lcd_cmd C 0806 movf 6,w ;volatile D 390F andlw E 0432 iorwf?a_lcd_cmd+2,w F 0086 movwf 6 ;volatile

118 124 ;lcd.c: 39: LCD_E = 1; LCD_E = 0; bsf 6, bcf 6,3 127 ;lcd.c: 40: PORTB = (PORTB & 0x0f) ((ins << 4 + ) & 0xf0); E30 swapf?a_lcd_cmd,w F0 andlw F0 andlw B2 movwf?a_lcd_cmd movf 6,w ;volatile F andlw iorwf?a_lcd_cmd+2,w movwf 6 ;volatile 136 ;lcd.c: 41: LCD_E = 1; LCD_E = 0; A 1586 bsf 6, B 1186 bcf 6,3 139 ;lcd.c: 42: { unsigned char _dcnt; _dcnt = (40) + /((12*1000L)/(4*1000L)) 1; while(--_dcnt!= 0) + continue; }; C 300D movlw D 00B1 movwf?a_lcd_cmd E l E 0BB1 decfsz?a_lcd_cmd F 2D7E goto l return psect text _lcd_data 149 ; _ins assigned to?a_lcd_data _lcd_data$ins set?a_lcd_data 151 ; dcnt assigned to?a_lcd_data _lcd_data$_dcnt set?a_lcd_data ;_ins stored from w clrf 3 ;select bank B4 movwf?a_lcd_data 156 ;lcd.c: 46: void lcd_data(unsigned char ins) bsf 6,2 158 ;lcd.c: 49: PORTB = (PORTB & 0x0f) (ins & 0xf + 0); F0 andlw B6 movwf?a_lcd_data movf 6,w ;volatile F andlw iorwf?a_lcd_data+2,w movwf 6 ;volatile 165 ;lcd.c: 50: LCD_E = 1; LCD_E = 0; A 1586 bsf 6, B 1186 bcf 6,3 168 ;lcd.c: 51: PORTB = (PORTB & 0x0f) ((ins << 4 + ) & 0xf0); C 0E34 swapf?a_lcd_data,w

119 D 39F0 andlw E 39F0 andlw F 00B6 movwf?a_lcd_data movf 6,w ;volatile F andlw iorwf?a_lcd_data+2,w movwf 6 ;volatile 177 ;lcd.c: 52: LCD_E = 1; LCD_E = 0; bsf 6, bcf 6,3 180 ;lcd.c: 53: LCD_RS = 0; bcf 6,2 182 ;lcd.c: 54: { unsigned char _dcnt; _dcnt = (40) + /((12*1000L)/(4*1000L)) 1; while(--_dcnt!= 0) + continue; }; D movlw B5 movwf?a_lcd_data l BB5 decfsz?a_lcd_data A 2D99 goto l B 0008 return psect text F _lcd_puts 192 ;lcd.c: 58: void lcd_puts(const char * s) F 2D48 goto l l ;lcd.c: 61: lcd_data(*s++); movf?_lcd_puts+1,w B8 movwf code_ptr movf?_lcd_puts,w AB2 incf?_lcd_puts btfsc 3, AB3 incf?_lcd_puts D call string_table call _lcd_data l bcf 3, bcf 3,6 ;carry unused A 0833 movf?_lcd_puts+1,w B 00B8 movwf code_ptr C 0832 movf?_lcd_puts,w D 200D call string_table E 3800 iorlw F 1903 btfsc 3, return D40 goto l psect text _lcd_dec2str3 218 ; _y assigned to?a_lcd_dec2str _lcd_dec2str3$y set?a_lcd_dec2str3 220 ;lcd.c: 69: void lcd_dec2str3(unsigned int x) movlw

120 clrf 3 ;select bank B subwf?_lcd_dec2str3+1,w E8 movlw btfsc 3, A subwf?_lcd_dec2str3,w btfsc 3, E97 goto l ;lcd.c: 73: { movlw F6 movwf btemp A 01F7 clrf btemp B 082B movf?_lcd_dec2str3+1,w C 00F5 movwf btemp D 082A movf?_lcd_dec2str3,w E 00F4 movwf btemp F 2702 call lwdiv movf btemp+4,w AC movwf?a_lcd_dec2str movf btemp+5,w AD movwf?a_lcd_dec2str ;lcd.c: 75: lcd_data(y+0x30); C movf?a_lcd_dec2str3,w E30 addlw call _lcd_data 246 ;lcd.c: 76: lcd_data(0x2e); E movlw call _lcd_data 249 ;lcd.c: 77: x-=(y*100); movlw A 00F6 movwf btemp B 01F7 clrf btemp C 082D movf?a_lcd_dec2str3+1,w D 00F5 movwf btemp E 082C movf?a_lcd_dec2str3,w F 00F4 movwf btemp call lwmul movf btemp+4,w AA subwf?_lcd_dec2str C03 btfss 3, AB decf?_lcd_dec2str movf btemp+5,w AB subwf?_lcd_dec2str ;lcd.c: 78: y=x/10; A movlw F6 movwf btemp F7 clrf btemp A 082B movf?_lcd_dec2str3+1,w B 00F5 movwf btemp C 082A movf?_lcd_dec2str3,w D 00F4 movwf btemp E 2702 call lwdiv F 0878 movf btemp+4,w AC movwf?a_lcd_dec2str movf btemp+5,w AD movwf?a_lcd_dec2str ;lcd.c: 79: lcd_data(y+0x30); C movf?a_lcd_dec2str3,w E30 addlw call _lcd_data 281 ;lcd.c: 80: x-=(y*10);

121 A movlw F6 movwf btemp F7 clrf btemp D movf?a_lcd_dec2str3+1,w A 00F5 movwf btemp B 082C movf?a_lcd_dec2str3,w C 00F4 movwf btemp D 2552 call lwmul E 0878 movf btemp+4,w F 02AA subwf?_lcd_dec2str C03 btfss 3, AB decf?_lcd_dec2str movf btemp+5,w AB subwf?_lcd_dec2str ;lcd.c: 81: lcd_data(x+0x30); A movf?_lcd_dec2str3,w E30 addlw D81 goto _lcd_data 300 ;lcd.c: 82: } l ;lcd.c: 83: else lcd_puts("error"); movlw low u B2 movwf?_lcd_puts movlw high u A 00B3 movwf?_lcd_puts B 2D48 goto l psect text F _lcd_dec_str 311 ;lcd.c: 86: void lcd_dec_str(unsigned int x) F 3000 movlw clrf 3 ;select bank subwf?_lcd_dec_str+1,w movlw btfsc 3, subwf?_lcd_dec_str,w btfsc 3, D3A goto l ;lcd.c: 89: { movf?_lcd_dec_str,w E30 addlw D81 goto _lcd_data 324 ;lcd.c: 91: } A l ;lcd.c: 92: else lcd_puts("error"); A 3023 movlw low u B 00B2 movwf?_lcd_puts C 3000 movlw high u D 00B3 movwf?_lcd_puts E 2D48 goto l psect text E3 _lcd_init 335 ; dcnt assigned to?a_lcd_init _lcd_init$_dcnt set?a_lcd_init

122 337 ; dcnt assigned to?a_lcd_init _lcd_init$_dcnt set?a_lcd_init 339 ; dcnt assigned to?a_lcd_init _lcd_init$_dcnt set?a_lcd_init 341 ;lcd.c: 96: void lcd_init(void) E clrf 3 ;select bank E movf 6,w ;volatile E5 390F andlw E iorlw E movwf 6 ;volatile 347 ;lcd.c: 100: LCD_E = 1; LCD_E = 0; E bsf 6, E bcf 6,3 350 ;lcd.c: 101: DelayMs(5); EA 3005 movlw EB 2522 call _DelayMs 353 ;lcd.c: 103: PORTB = (PORTB & 0b ) 0x3 + 0; EC 0806 movf 6,w ;volatile ED 390F andlw EE 3830 iorlw EF 0086 movwf 6 ;volatile 358 ;lcd.c: 104: LCD_E = 1; LCD_E = 0; F bsf 6, F bcf 6,3 361 ;lcd.c: 105: { unsigned char _dcnt; _dcnt = (16 + 0)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= 0 + ) continue; }; F movlw F3 00A1 movwf?a_lcd_init F4 l F4 0BA1 decfsz?a_lcd_init F5 2DF4 goto l ;lcd.c: 107: PORTB = (PORTB & 0b ) 0x3 + 0; F movf 6,w ;volatile F7 390F andlw F iorlw F movwf 6 ;volatile 372 ;lcd.c: 108: LCD_E = 1; LCD_E = 0; FA 1586 bsf 6, FB 1186 bcf 6,3 375 ;lcd.c: 109: { unsigned char _dcnt; _dcnt = (16 + 0)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= 0 + ) continue; }; FC 3035 movlw FD 00A1 movwf?a_lcd_init

123 378 05FE l FE 0BA1 decfsz?a_lcd_init FF 2DFE goto l ;lcd.c: 111: PORTB = (PORTB & 0b ) 0x2 + 0; movf 6,w ;volatile F andlw iorlw movwf 6 ;volatile 386 ;lcd.c: 112: LCD_E = 1; LCD_E = 0; bsf 6, bcf 6,3 389 ;lcd.c: 113: { unsigned char _dcnt; _dcnt = (16 + 0)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= 0 + ) continue; }; movlw A1 movwf?a_lcd_init l BA1 decfsz?a_lcd_init E08 goto l ;lcd.c: 115: lcd_cmd(0x20+0x08); A 3028 movlw B 2567 call _lcd_cmd 398 ;lcd.c: 116: lcd_cmd(0x06); C 3006 movlw D 2567 call _lcd_cmd 401 ;lcd.c: 117: lcd_cmd(0x0c); E 300C movlw F 2567 call _lcd_cmd 404 ;lcd.c: 119: lcd_cmd(0x01); DelayMs(2);; movlw call _lcd_cmd movlw call _DelayMs 409 ;lcd.c: 120: lcd_cmd(0x02); DelayMs(2);; movlw call _lcd_cmd movlw D22 goto _DelayMs psect text BC _broj 417 ; _b assigned to?a_broj _broj$b set?a_broj 419 ; _maska assigned to?a_broj _broj$maska set?a_broj ; _pom assigned to?a_broj _broj$pom set?a_broj ; _k assigned to?a_broj _broj$k set?a_broj ; dcnt assigned to?a_broj _broj$_dcnt set?a_broj ;_b stored from w BC 0183 clrf 3 ;select bank

124 429 05BD 00AA movwf?a_broj 430 ;adc0804.c: 34: void broj(unsigned char b) BE 01AC clrf?a_broj BF 3008 movlw C0 00AD movwf?a_broj ;adc0804.c: 37: unsigned char maska=0b ; C movlw C2 00AB movwf?a_broj ;adc0804.c: 38: lcd_cmd(0x80+5+(0x40*1)); { uns + igned char _dcnt; _dcnt = (40)/((12*1000L)/(4* L)) 1; while(--_dcnt!= 0) continue; };; C3 30C5 movlw C call _lcd_cmd C5 300D movlw C6 00AE movwf?a_broj C7 l C7 0BAE decfsz?a_broj C8 2DC7 goto l C9 l C9 08AD movf?a_broj CA 1903 btfsc 3, CB 0008 return 449 ;adc0804.c: 39: while(k>0) 450 ;adc0804.c: 40: { CC 082A movf?a_broj,w CD 052B andwf?a_broj+1,w CE 00AC movwf?a_broj ;adc0804.c: 42: maska=maska>>1; CF 1003 bcf 3, D0 0CAB rrf?a_broj ;adc0804.c: 43: pom=pom>>k-1; D1 032D decf?a_broj+3,w D2 00AF movwf?a_broj D3 0A2F incf?a_broj+5,w D4 00F4 movwf btemp D5 2DD8 goto u D6 u D bcf 3, D7 0CAC rrf?a_broj D8 u D8 0BF4 decfsz btemp D9 2DD6 goto u ;adc0804.c: 44: lcd_dec_str(pom); DA 1283 bcf 3, DB 1303 bcf 3,6 ;carry unused DC 082C movf?a_broj+2,w DD 00B0 movwf?_lcd_dec_str DE 01B1 clrf?_lcd_dec_str DF 252F call _lcd_dec_str 476 ;adc0804.c: 45: k=k--; E0 082D movf?a_broj+3,w E1 03AD decf?a_broj E2 2DC9 goto l psect config

125 F71 dw ;# psect eeprom_data db 65,68,67,95,48,56,48,52 ;# + 005F A E db 74,85,78,95,50,48,48,56 ;# + 005F db 86,69,82,95,49,46,48,48 ;# + 005F E db 66,82,65,78,75,79,95,83 ;# + 004E 004B 004F + 005F F 004A db 84,79,74,73,67,95,77,73 ;# F + 004D C E db 76,65,78,95,83,84,79,73 ;# + 005F F C 004B 004F db 76,75,79,86,73,67,46,46 ;# E 002E psect text C _meri 495 ; _napon1 assigned to?a_meri _meri$napon1 set?a_meri 497 ; _napon assigned to?a_meri _meri$napon set?a_meri ; dcnt assigned to?a_meri _meri$_dcnt set?a_meri ; dcnt assigned to?a_meri _meri$_dcnt set?a_meri ; dcnt assigned to?a_meri _meri$_dcnt set?a_meri ; dcnt assigned to?a_meri _meri$_dcnt set?a_meri ; dcnt assigned to?a_meri _meri$_dcnt set?a_meri ;adc0804.c: 49: void meri(void) C 0183 clrf 3 ;select bank D 01A5 clrf?a_meri E 01A6 clrf?a_meri F 01A7 clrf?a_meri A0 01A8 clrf?a_meri ;adc0804.c: 52: unsigned long napon1=0; A1 01A1 clrf?a_meri A2 01A2 clrf?a_meri A3 01A3 clrf?a_meri A4 01A4 clrf?a_meri ;adc0804.c: 53: napon1=(500000/256); A5 30A1 movlw A6 00A1 movwf?a_meri A movlw A8 00A2 movwf?a_meri

126 525 06A9 01A3 clrf?a_meri AA 01A4 clrf?a_meri ;adc0804.c: 54: lcd_cmd(0x80+0+(0x40*0)); { uns + igned char _dcnt; _dcnt = (40)/((12*1000L)/(4* L)) 1; while(--_dcnt!= 0) continue; };; AB 3080 movlw AC 2567 call _lcd_cmd AD 300D movlw AE 00A9 movwf?a_meri AF l AF 0BA9 decfsz?a_meri B0 2EAF goto l ;adc0804.c: 56: cs=0; B bcf 8,0 537 ;adc0804.c: 57: rd=0; B bcf 8,1 539 ;adc0804.c: 58: wr=1; B bsf 8,2 541 ;adc0804.c: 59: { unsigned char _dcnt; _dcnt = + (1)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= + 0) continue; }; B4 01A9 clrf?a_meri B5 0AA9 incf?a_meri B6 l B6 0BA9 decfsz?a_meri B7 2EB6 goto l ;adc0804.c: 60: wr=0; B bcf 8,2 549 ;adc0804.c: 61: { unsigned char _dcnt; _dcnt = + (10)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= + 0) continue; }; B movlw BA 00A9 movwf?a_meri BB l BB 0BA9 decfsz?a_meri BC 2EBB goto l ;adc0804.c: 62: wr=1; BD 1508 bsf 8,2 557 ;adc0804.c: 63: while(intr); BE l BE 1988 btfsc 8, BF 2EBE goto l ;adc0804.c: 64: { unsigned char _dcnt; _dcnt = + (1)/((12*1000L)/(4*1000L)) 1; while(--_dcnt!= + 0) continue; }; C0 01A9 clrf?a_meri C1 0AA9 incf?a_meri C2 l C2 0BA9 decfsz?a_meri C3 2EC2 goto l

127 567 ;adc0804.c: 65: napon=(napon1*portc); C movf?a_meri,w C5 00F8 movwf btemp C movf?a_meri+1,w C7 00F9 movwf btemp C movf?a_meri+2,w C9 00FA movwf btemp CA 0824 movf?a_meri+3,w CB 00FB movwf btemp CC 0807 movf 7,w ;volatile CD 00F4 movwf btemp CE 01F5 clrf btemp CF 01F6 clrf btemp D0 01F7 clrf btemp D1 27C3 call llmul D movf btemp,w D3 00A5 movwf?a_meri D movf btemp+1,w D5 00A6 movwf?a_meri D movf btemp+2,w D7 00A7 movwf?a_meri D movf btemp+3,w D9 00A8 movwf?a_meri ;adc0804.c: 66: napon=(napon/1000); DA 30E8 movlw DB 00F8 movwf btemp DC 3003 movlw DD 00F9 movwf btemp DE 01FA clrf btemp DF 01FB clrf btemp E movlw?a_meri E movwf E bcf 3, E3 27B7 call lldiv_f 601 ;adc0804.c: 67: lcd_puts("napon: "); E4 303F movlw low u E bcf 3, E bcf 3,6 ;carry unused E7 00B2 movwf?_lcd_puts E movlw high u E9 00B3 movwf?_lcd_puts EA 253F call _lcd_puts 609 ;adc0804.c: 68: lcd_dec2str3(napon); EB 0825 movf?a_meri+4,w EC 00AA movwf?_lcd_dec2str ED 0826 movf?a_meri+5,w EE 00AB movwf?_lcd_dec2str EF 2650 call _lcd_dec2str3 615 ;adc0804.c: 69: lcd_puts(" V"); F movlw low u F1 00B2 movwf?_lcd_puts F movlw high u F3 00B3 movwf?_lcd_puts F4 253F call _lcd_puts 621 ;adc0804.c: 70: lcd_cmd(0x80+0+(0x40*1)); { uns

128 + igned char _dcnt; _dcnt = (40)/((12*1000L)/(4* L)) 1; while(--_dcnt!= 0) continue; };; F5 30C0 movlw F call _lcd_cmd F7 300D movlw F8 00A9 movwf?a_meri F9 l F9 0BA9 decfsz?a_meri FA 2EF9 goto l ;adc0804.c: 71: lcd_puts("bin: "); FB 3047 movlw low u FC 00B2 movwf?_lcd_puts FD 3000 movlw high u FE 00B3 movwf?_lcd_puts FF 253F call _lcd_puts 635 ;adc0804.c: 72: broj(portc); movf 7,w ;volatile DBC goto _broj psect text _main 641 ; dcnt assigned to?a_main _main$_dcnt set?a_main 643 ; dcnt assigned to?a_main _main$_dcnt set?a_main 645 ; dcnt assigned to?a_main _main$_dcnt set?a_main 647 ;adc0804.c: 78: void main(void) B bcf 11,7 649 ;adc0804.c: 81: TRISC=0xFF; FF movlw A 1683 bsf 3, B 1303 bcf 3,6 ;carry unused C 0087 movwf 7 ;volatile 654 ;adc0804.c: 82: TRISA=0x00; D 0185 clrf 5 ;volatile 656 ;adc0804.c: 83: TRISE=0b000; E 0189 clrf 9 ;volatile 658 ;adc0804.c: 84: TRISD=0x88; F 3088 movlw movwf 8 ;volatile 661 ;adc0804.c: 85: TRISB=0x00; clrf 6 ;volatile 663 ;adc0804.c: 86: PORTA=0x00; bcf 3, clrf 5 ;volatile 666 ;adc0804.c: 87: PORTE=0b000; clrf 9 ;volatile 668 ;adc0804.c: 88: PORTB=0x00; clrf 6 ;volatile 670 ;adc0804.c: 89: PORTD=0x00; clrf 8 ;volatile 672 ;adc0804.c: 90: lcd_init(); E3 call _lcd_init 674 ;adc0804.c: 91: lcd_cmd(0x01); DelayMs(2);; movlw

129 call _lcd_cmd A 3002 movlw B 2522 call _DelayMs 679 ;adc0804.c: 92: lcd_cmd(0x80+0+(0x40*0)); { uns + igned char _dcnt; _dcnt = (40)/((12*1000L)/(4* L)) 1; while(--_dcnt!= 0) continue; };; C 3080 movlw D 2567 call _lcd_cmd E 300D movlw F 00A0 movwf?a_main l BA0 decfsz?a_main E30 goto l ;adc0804.c: 93: lcd_puts("projekat IZ"); movlw low u B2 movwf?_lcd_puts movlw high u B3 movwf?_lcd_puts F call _lcd_puts 693 ;adc0804.c: 94: lcd_cmd(0x80+0+(0x40*1)); { uns + igned char _dcnt; _dcnt = (40)/((12*1000L)/(4* L)) 1; while(--_dcnt!= 0) continue; };; C0 movlw call _lcd_cmd D movlw A 00A0 movwf?a_main B l B 0BA0 decfsz?a_main C 2E3B goto l ;adc0804.c: 95: lcd_puts("mips- A"); D 3038 movlw low u E 00B2 movwf?_lcd_puts F 3000 movlw high u B3 movwf?_lcd_puts F call _lcd_puts 707 ;adc0804.c: 96: DelaySec(2); movlw C call _DelaySec 710 ;adc0804.c: 97: lcd_cmd(0x01); DelayMs(2);; movlw call _lcd_cmd movlw call _DelayMs l ;adc0804.c: 99: while(1) 717 ;adc0804.c: 100: { B88 btfsc 8, E48 goto l A l ;adc0804.c: 102: { 722 ;adc0804.c: 104: {

130 A 269C call _meri 724 ;adc0804.c: 106: { unsigned char _dcnt; _dcnt = + (200)/((12*1000L)/(4*1000L)) 1; while(--_dcnt +!= 0) continue; }; B 3043 movlw C 00A0 movwf?a_main D l D 0BA0 decfsz?a_main E 2E4D goto l F 2E4A goto l psect strings

131

132

133

134 ; Strings u u retlw 69 ;'E' retlw 114 ;'r' retlw 114 ;'r' F retlw 111 ;'o' retlw 114 ;'r' retlw u retlw 80 ;'P' A 3452 retlw 82 ;'R' B 344F retlw 79 ;'O' C 344A retlw 74 ;'J' D 3445 retlw 69 ;'E' E 344B retlw 75 ;'K' F 3441 retlw 65 ;'A' retlw 84 ;'T' retlw retlw 73 ;'I' A retlw 90 ;'Z' retlw u

135 retlw retlw 86 ;'V' retlw u D retlw 77 ;'M' retlw 73 ;'I' A 3450 retlw 80 ;'P' B 3453 retlw 83 ;'S' C 342D retlw D 3441 retlw 65 ;'A' E 3400 retlw F u F 344E retlw 78 ;'N' retlw 65 ;'A' retlw 80 ;'P' F retlw 79 ;'O' E retlw 78 ;'N' A retlw 58 ;':' retlw retlw u retlw 66 ;'B' retlw 73 ;'I' E retlw 78 ;'N' A 343A retlw 58 ;':' B 3420 retlw C 3400 retlw psect temp btemp btemp ds 8 HI-TECH Software PICC Macro Assembler V9.60 Symbol Table?a_DelayMs 0027?a_DelaySec 0021?a_broj 002A?a_main 0020?a_meri 0021 l l l l12 05A0 l l15 05A3 l32 053A l l17 057E l l l35 05F4 l52 06AF l61 06BE l45 05C7 l l l39 05FE l56 06B6 l48 05C9 l65 06C2 l82 064A l75 063B l59 06BB l68 06F9 l85 064D l u u u45 05B9 u39 003F u u u u _lcd_data 0581 fsr 0004 _lcd_init 05E3 _lcd_puts 053F u140 05D8 u145 05D6 _lcd_dec2str3 0650?a_lcd_cmd 0030 f f f F f _DelayMs 0522 _broj 05BC _main 0618?_lcd_puts 0032 _meri 069C btemp 0074 llmul 07C3 lwdiv 0702 lwmul 0552 start 0000 lldiv_f 07B7?_lcd_dec_str 0030?a_lcd_data 0034?a_lcd_init 0021 _lcd_cmd 0567 _DelaySec 059C _lcd_dec_str 052F

136 code_ptr 0037 string_table 000D?a_lcd_dec2str3 002C status 0003?_lcd_dec2str3 002A used_code_ptr 0001 used_btemp used_btemp used_btemp used_btemp used_btemp used_btemp used_btemp used_btemp Listing heksadecimalnog kôda : E A2E : D B7008F : B81B1B28381B A003708B70A52 : B80A B70AE0 : F E : F344A B344134F4 : A : D D E34EB : F344E343A :0A E343A :100A A A A900A90B282D66 :100A5400A80B262DA70B242D A :100A A2D E812D2C :100A B B300482D482D3308B800AD :100A B20A0319B30A0D :100A B D D2F :100AA400F801F F70CF60C031C602D74080F :100AB400F AF F40DF50D06 :100AC D8301B D :100AD400F039B F F3 :100AE400300EF039F039B F AE :100AF D30B100B10B7E2D DF :100B0400B F039B F D :100B EF039F039B F39FF :100B D30B500B50B06 :100B D A100A201A32DFA302225DA :100B4400A20A2208A300A A500A FB :100B5400A50DA60D0310A50DA60D AF400D8 :100B A DB92D CAE :100B A02D8301AA00AC010830AD C :100B8400AB00C D30AE00AE0BC72DAD08E8 :100B A082B05AC000310AB0C2D0325 :100BA400AF002F0AF400D82D0310AC0CF40BD62D93 :100BB C08B000B1012F252D08AD03B7 :100BC400C92D F :100BD F F :100BE A100A10BF42D06080F EA :100BF A100A10BFE2D06080F398C :100C A100A10B082EE8 :100C C A5 :100C D8B13FF303B :100C A3 :100C E :100C D30A000A00B302EF5 :100C B B3003F25C D3075 :100C7400A000A00B3B2E3830B B3003F255B :100C C B482E1E :100C94009C264330A000A00B4D2E4A2E :100CA4002B02E A E6430F60049 :100CB400F7012B08F5002A08F AC0095 :100CC AD002C08303E81252E

137 :100CD400F600F7012D08F5002C08F D9 :100CE400AA02031CAB037908AB020A30F600F70131 :100CF4002B08F5002A08F AC007908CC :100D0400AD002C08303E81250A30F600F7012D088D :100D1400F5002C08F AA02031CAB0342 :100D AB022A08303E812D2330B E :100D3400B300482D8301A501A601A701A801A101C3 :100D4400A201A301A401A130A A200A301C4 :100D5400A D30A900A90BAF2E08101F :100D A901A90AA90BB62E :100D7400A900A90BBB2E BE2EA901A90A22 :100D8400A90BC22E2108F F FA0052 :100D FB000708F400F501F601F701C32756 :100DA A A A A800AF :100DB400E830F F900FA01FB :100DC B7273F B B300FC :100DD4003F252508AA002608AB B2006E :100DE B3003F25C D30A900A90BA2 :100DF400F92E4730B B3003F250708BC2D60 :100E0400FA01F801F D0C2FF401A7 :100E1400F F30FA040310FA0AF60DF70D39 :100E C0F2FF70CF60C D1C2FFB :100E C242F7608F C36 :100E AF502F80DF90DFA0BFA1A142FFA1FA6 :100E FF809F80A0319F903F F6009C :100E F7007A1F0034F409F40A0319F5032A :100E7400F B901FC01FD01FE016E :100E8400FF A047B C2FC030DD :100E9400B905572FF401F501F601F701F12F0310FD :100EA400F80DF90DFA0DFB0DB90AFB1F512FB90A04 :100EB FC0DFD0DFE0DFF0D7B DD5 :100EC4006D2F7A D6D2F DB4 :100ED4006D2F C7F2F7C147808F402A9 :100EE C790FF5027A08031C7A0FF602BD :100EF4007B08031C7B0FF FB0CFA0CF90CA4 :100F0400F80CB F39031D5A2F391F972F9D :100F FF30F407F409031CF507F509031C5B :100F2400F607F609031CF707F F B3 :100F3400F FA007708FB007C08F4007D08C5 :100F4400F5007E08F6007F08F700B91FF12F0310A3 :100F5400FF30F407F409031CF507F509031CF60731 :100F6400F609031CF707F709F12F0008F400840AB7 :100F F500840A0008F600840A0008F70057 :100F84003D2F FC007508FD007608FE00FE :100F FF00F601F701F401F FF0CD7 :100FA400FE0CFD0CFC0C031CE52F7808F F3 :100FB FF5077A A0FF6077B08E8 :100FC B0FF7077C087D047E047F :100FD400F12F0310F80DF90DFA0DFB0DD02F :100FE A2 :0C0FF D :02400E00713F00 : F BB : A E005F : F E : E004B004F005F F : F004A F004D : C E005F F004900E5 : C004B004F E002E002A : FF

138 5.Testiranje AD Konvertora U ovom poglavlju testiraćemo AD konvertor ADC0804, koji spada u sukcesivne AD konvertore, i snimati njegovu prenosnu karakteristiku. Kao što smo ranije naveli na ulaz AD konvertora možemo dovesti tri interna jednosmerna napona: -Fiksni napon od 2.49 V, SPAJANJEM PARA CRNIH BUKSNI J4, pri kojem se na izlazu AD konvertora dobija kôdna reč , koja se prikazuje na LCD-u. -Fiksni napon od 2.49 V, SPAJANJEM PARA PLAVIH BUKSNI J5, pri kojem se na izlazu AD konvertora dobija kôdna reč , koja se prikazuje na LCD-u. -Promenljivi napon od 0-5 V, SPAJANJEM PARA CRVENIH BUKSNI J6, gde se vrednost napona menja OBRTNIM POTENCIOMETROM R7, pri kojem se na izlazu AD konvertora dobija adekvatna kôdna reč, koja se prikazuje na LCD-u. Promenljivi napon nam je potreban radi snimanja prenosne karakteristike AD konvertora. Treba izmeriti u što je više moguće tačaka ulazni analogni napon u opsegu od 0 do 5 V i isčitati odgovarajuću digitalnu vrednost sa LCD-a. Merenje analognog napona se vrši nekim od standardnih digimera. Rezultati probnog merenja i odgovarajuća prenosna karakteristika prikazani u tabeli 5.1. i Sl.5.2. Po uključivanju uređaja sačekati par sekundi, zatim se pritiskom MIKROPREKIDAČA S3 startuje proces AD konverzije. Ukoliko je potrebno mikrokontroler se resetuje pritiskom MIKROPREKIDAČA S1. Napomena: LCD pored digitalne reči prikazuje i aproksimativnu vrednost analognog napona, koja je dobijena programskim putem na osnovu digitalne vrednosti. Ova vrednost može da se razlikuje od vrednosti analognog napona koja je merena standardnim digimerom, što je posledica različite rezolucije korišćenog AD konvertora i onog koji se nalazi u digimeru

139 Sl.5.1. Korišćenje sistema pri testiranju Testiranje linearnosti REDNI BROJ MERENJA V UL 8-BITNA KÔDNA REČ NA IZLAZU IZ ADC-A DEKADNA VREDNOST IZLAZNE REČI

140 Tabela 5.1. Rezultati probnog merenja Sl.5.2. Prenosna karakteristika konvertora ADC

141 Greška konverzije REDNI BROJ MERENJA V UL DIGIMER V UL ADC 8-BITNA KÔDNA REČ NA IZLAZU IZ ADC-A DEKADNA VREDNOST IZLAZNE REČI GRE[KA

142

143 Tabela 5.2. Rezultati probnog merenja Na slikama 5.3. i 5.4. data je zavisnost analognog V UL od digitalnog V IZ, za V UL mereno digimerom i za njegovu vrednost očitanu sa LCD-a. Uporedna karakteristika prikazana je na slici 5.5. ali zbog jako malih odstupanja razliku nije moguće uočiti. Razlika između te dve karakteristike predstavlja grešku konverzije i ona je prikazana na slici

144 Sl.5.3. Prenosna karakteristika konvertora ADC0804 Sl.5.4. Prenosna karakteristika konvertora ADC

145 Sl.5.5. Uporedne prenosne karakteristike Sl.5.6. Greška konverzije

146 6. Dodatak 1 Specifikacije pojedinih komponenti Sl.7.1. Fizičke specifikacije ADC

147 Sl.7.2. Fizičke specifikacije PIC16F

148 Sl.7.3. Tehnički parametri i izgled tastera Sl.7.4. Tehnički parametri i fizičke specifikacije dioda

149 Parametri usmerača Sl.7.5. Fizičke specifikacije usmerača Sl.7.6. Fizičke specifikacije stabilizatora

150 7. Dodatak 2 AllPic Programator Programator je namenjen programiranju većine serijskih PICmikrokontrolera. Pomenućemo samo neke od najpoznatijih: PIC16F8x, PIC16F62x, PIC16F87x, PIC12C50x, PIC12F6xx itd. Hardver je zasnovan na već oprobanom i veoma popularnom serijskom programatoru Pony Prog. Uređaj se povezuje sa PC računarom putem RS232 serijskog porta, koji standardno postoji na većini današnjih PC računara. Za rad programatora potreban je i slabiji izvor napona napajanja oko 15 V. Dioda Dl na ulazu za napajanje je predviđena kao zaštita od pogrešnog priključenja polariteta izvora za napajanje. Izvor može biti i naizmenični napon, ukoliko vam je takav pri ruci. Stabilizator napona 78L05 obezbeđuje 5 V napon potreban za napajanje mikrokontrolera, dok se Vppnapon (aprox. 13V) generiše pomoću zener diode D3. Ostatak kola čine tranzistori NPN i PNP, univerzalnog tipa, kao i propratne zener diode D5 i D6 i otpornici R4 i R5 koji obezbeđuju TTL logičke nivoe (5V) potrebne za programiranje mikrokontrolera. Razlika u odnosu na postojeće programatore koji se mogu sresti na internetu (Pony prog, JDM) je upravo u delu kola koga čine T3, T4 i JPl sa pratećim elementima. Kod starih modela programatora (Pony, JDM,...) javlja se problem ako je potrebno reprogramirati PIC koji je prethodno programiran sa uključenim;

151 INT/RC; i uključenim internim MCLR, u FUSES podešavanjima. U tom slučaju PONY programator ne može ni da obriše PIC jer nije ispoštovana procedura preporučena od strane proizvođača mikrokontrolera, koja se odnosi na to da se Vdd (+5 V) napon sme pojaviti tek nakon uspostavljanja MCLR (+13 V) programskog napona. Jedino je sa ovakvim sistemom moguće da PIC uđe u programski mod i da se ponovno reprogramira. Sve navedene osobine poseduje AllPIC. Međutim stari modeli PIC mikrokontrolera koji nemaju interni oscilator zahtevaju obrnut proces od gore navedenog tj. prvo Vdd napon pa tek nakon toga MCLR napon i za takve PIC kontrolere je ubačena podrška u vidu džampera JPl kojim se bira mod rada; Vdd mode select. Sl.8.1. Šema veza programatora AllPic Indikator LED1 nas informiše o prisustvu napona napajanja programatora i on treba da bude u granicama 14-20V, s tim da treba računati da pri 20V napajanju grejanje stabilizatora može biti primetno. Indikator LED2 indicira prisutan napon napajanja (Vdd +5 V ) na čipu koji se programira. Kratkospajač JPl ima funkciju:

152 Ukoliko je spojen, Vdd (+5 V) napon će stalno biti prisutan što će se i videti upaljenom LED2. Ovaj mod je za sve Microchip PIC mikrokontrolere koji nemaju interni oscilator (16F84, 16F87x,) kao i eeprome. Za sve nove mikrokontrolere potrebno je skinuti JPl i u tom modu Vdd (+5v) se pojavljuje tek po uspostavljanju Vpp (13 V) programskog napona na početku programiranja. Ovakav način rada je potreban za programiranje sledećih mikrokontrolera 16F627, 16F628, 12F629, 12F Kratkospajač JP2 služi za izbor Write protect moda za eeprome 24CXX. Poseban konektor koji je označen na šemi veza kao CON1 koristi se za eksterni priključak za incircuit programiranje (ICSP). Napomena: Programator nije predviđen za 16C5x seriju i još neke specifične Microchip mikrokontrolere. Komponente koje su upotrebljene u ovom programatoru spadaju u standardni asortiman ponude svake prodavnice elektro materijala. Iz tog razloga ne treba očekivati poteškoće oko nabavke delova. Sklapanje treba odraditi standardnim postupkom, pri čemu treba obratiti pažnju na dva kratkospajača koji su označeni na montažnoj šemi crnom linijom, a nalaze se ispod podnožja za mikrokontrolere i pored kondenzatora C4. Njih treba zalemiti pre svih drugih komponenti. Uređaj sa PC računarom možete povezati i pomoću dodatnog kabla, ali nije preporučljivo da njegova dužina prelazi 2 m. Sl.8.2. Komponente koje su upotrebljene u AllPic programatoru

153 8. Dodatak 3 Izgled Realizovanog Uređaja

154 9. Autori Projekta Branko Stojić Broj indeksa SSS: Elektrotehničar elekronike ETŠ Nikola Tesla, Beograd Student Elekronskog fakulteta u Nišu od 2002 god. Milan Stojiljković Broj indeksa SSS:Gimnazija Svetozar Marković, Niš Student Elekronskog fakulteta u Nišu od 2002 god

MERNO-AKVIZICIONI SISTEMI U INDUSTRIJI A/D KONVERTORI SA SUKCESIVNIM APROKSIMACIJAMA

MERNO-AKVIZICIONI SISTEMI U INDUSTRIJI A/D KONVERTORI SA SUKCESIVNIM APROKSIMACIJAMA MERNO-AKVIZICIONI SISTEMI U INDUSTRIJI A/D KONVERTORI SA SUKCESIVNIM APROKSIMACIJAMA 1 1. OSNOVE SAR A/D KONVERTORA najčešće se koristi kada su u pitanju srednje brzine konverzije od nekoliko µs do nekoliko

Διαβάστε περισσότερα

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Goran Stančić SIGNALI I SISTEMI Zbirka zadataka NIŠ, 014. Sadržaj 1 Konvolucija Literatura 11 Indeks pojmova 11 3 4 Sadržaj 1 Konvolucija Zadatak 1. Odrediti konvoluciju

Διαβάστε περισσότερα

Obrada signala

Obrada signala Obrada signala 1 18.1.17. Greška kvantizacije Pretpostavka je da greška kvantizacije ima uniformnu raspodelu 7 6 5 4 -X m p x 1,, za x druge vrednosti x 3 x X m 1 X m = 3 x Greška kvantizacije x x x p

Διαβάστε περισσότερα

3.1 Granična vrednost funkcije u tački

3.1 Granična vrednost funkcije u tački 3 Granična vrednost i neprekidnost funkcija 2 3 Granična vrednost i neprekidnost funkcija 3. Granična vrednost funkcije u tački Neka je funkcija f(x) definisana u tačkama x za koje je 0 < x x 0 < r, ili

Διαβάστε περισσότερα

nvt 1) ukoliko su poznate struje dioda. Struja diode D 1 je I 1 = I I 2 = 8mA. Sada je = 1,2mA.

nvt 1) ukoliko su poznate struje dioda. Struja diode D 1 je I 1 = I I 2 = 8mA. Sada je = 1,2mA. IOAE Dioda 8/9 I U kolu sa slike, diode D su identične Poznato je I=mA, I =ma, I S =fa na 7 o C i parametar n= a) Odrediti napon V I Kolika treba da bude struja I da bi izlazni napon V I iznosio 5mV? b)

Διαβάστε περισσότερα

OSNOVI ELEKTRONIKE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA

OSNOVI ELEKTRONIKE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA ELEKTROTEHNIČKI FAKULTET U BEOGRADU KATEDRA ZA ELEKTRONIKU OSNOVI ELEKTRONIKE SVI ODSECI OSIM ODSEKA ZA ELEKTRONIKU LABORATORIJSKE VEŽBE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA Autori: Goran Savić i Milan

Διαβάστε περισσότερα

III VEŽBA: FURIJEOVI REDOVI

III VEŽBA: FURIJEOVI REDOVI III VEŽBA: URIJEOVI REDOVI 3.1. eorijska osnova Posmatrajmo neki vremenski kontinualan signal x(t) na intervalu definisati: t + t t. ada se može X [ k ] = 1 t + t x ( t ) e j 2 π kf t dt, gde je f = 1/.

Διαβάστε περισσότερα

Kaskadna kompenzacija SAU

Kaskadna kompenzacija SAU Kaskadna kompenzacija SAU U inženjerskoj praksi, naročito u sistemima regulacije elektromotornih pogona i tehnoloških procesa, veoma često se primenjuje metoda kaskadne kompenzacije, u čijoj osnovi su

Διαβάστε περισσότερα

Elementi spektralne teorije matrica

Elementi spektralne teorije matrica Elementi spektralne teorije matrica Neka je X konačno dimenzionalan vektorski prostor nad poljem K i neka je A : X X linearni operator. Definicija. Skalar λ K i nenula vektor u X se nazivaju sopstvena

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)

Διαβάστε περισσότερα

RAČUNSKE VEŽBE IZ PREDMETA POLUPROVODNIČKE KOMPONENTE (IV semestar modul EKM) IV deo. Miloš Marjanović

RAČUNSKE VEŽBE IZ PREDMETA POLUPROVODNIČKE KOMPONENTE (IV semestar modul EKM) IV deo. Miloš Marjanović Univerzitet u Nišu Elektronski fakultet RAČUNSKE VEŽBE IZ PREDMETA (IV semestar modul EKM) IV deo Miloš Marjanović MOSFET TRANZISTORI ZADATAK 35. NMOS tranzistor ima napon praga V T =2V i kroz njega protiče

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA : MAKSIMALNA BRZINA Maksimalna brzina kretanja F O (N) F OI i m =i I i m =i II F Oid Princip određivanja v MAX : Drugi Njutnov zakon Dokle god je: F O > ΣF otp vozilo ubrzava Kada postane: F O = ΣF otp

Διαβάστε περισσότερα

STATIČKE KARAKTERISTIKE DIODA I TRANZISTORA

STATIČKE KARAKTERISTIKE DIODA I TRANZISTORA Katedra za elektroniku Elementi elektronike Laboratorijske vežbe Vežba br. 2 STATIČKE KARAKTERISTIKE DIODA I TRANZISTORA Datum: Vreme: Studenti: 1. grupa 2. grupa Dežurni: Ocena: Elementi elektronike -

Διαβάστε περισσότερα

numeričkih deskriptivnih mera.

numeričkih deskriptivnih mera. DESKRIPTIVNA STATISTIKA Numeričku seriju podataka opisujemo pomoću Numeričku seriju podataka opisujemo pomoću numeričkih deskriptivnih mera. Pokazatelji centralne tendencije Aritmetička sredina, Medijana,

Διαβάστε περισσότερα

INTELIGENTNO UPRAVLJANJE

INTELIGENTNO UPRAVLJANJE INTELIGENTNO UPRAVLJANJE Fuzzy sistemi zaključivanja Vanr.prof. Dr. Lejla Banjanović-Mehmedović Mehmedović 1 Osnovni elementi fuzzy sistema zaključivanja Fazifikacija Baza znanja Baze podataka Baze pravila

Διαβάστε περισσότερα

SISTEMI NELINEARNIH JEDNAČINA

SISTEMI NELINEARNIH JEDNAČINA SISTEMI NELINEARNIH JEDNAČINA April, 2013 Razni zapisi sistema Skalarni oblik: Vektorski oblik: F = f 1 f n f 1 (x 1,, x n ) = 0 f n (x 1,, x n ) = 0, x = (1) F(x) = 0, (2) x 1 0, 0 = x n 0 Definicije

Διαβάστε περισσότερα

Poglavlje 7. Blok dijagrami diskretnih sistema

Poglavlje 7. Blok dijagrami diskretnih sistema Poglavlje 7 Blok dijagrami diskretnih sistema 95 96 Poglavlje 7. Blok dijagrami diskretnih sistema Stav 7.1 Strukturni dijagram diskretnog sistema u kome su sve veliqine prikazane svojim Laplasovim transformacijama

Διαβάστε περισσότερα

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti). PRAVA Prava je kao i ravan osnovni geometrijski ojam i ne definiše se. Prava je u rostoru određena jednom svojom tačkom i vektorom aralelnim sa tom ravom ( vektor aralelnosti). M ( x, y, z ) 3 Posmatrajmo

Διαβάστε περισσότερα

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012 Iskazna logika 3 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Deduktivni sistemi 1 Definicija Deduktivni sistem (ili formalna teorija)

Διαβάστε περισσότερα

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo IZVODI ZADACI ( IV deo) LOGARITAMSKI IZVOD Logariamskim izvodom funkcije f(), gde je >0 i, nazivamo izvod logarima e funkcije, o jes: (ln ) f ( ) f ( ) Primer. Nadji izvod funkcije Najpre ćemo logarimovai

Διαβάστε περισσότερα

Zadatak Vul[V] Vul[V]

Zadatak Vul[V] Vul[V] Zadatak 11.1. a) Projektovati kolo A/D konvertora sa paralelnim komparatorima koji ulazni napon u opsegu 0 8V kovertuje u 3 bitni binarni broj prema karakteristici sa Slike 11.1.1. a). U slučaju kada je

Διαβάστε περισσότερα

OSNOVI ELEKTRONIKE. Vežbe (2 časa nedeljno): mr Goran Savić

OSNOVI ELEKTRONIKE. Vežbe (2 časa nedeljno): mr Goran Savić OSNOVI ELEKTRONIKE Vežbe (2 časa nedeljno): mr Goran Savić savic@el.etf.rs http://tnt.etf.rs/~si1oe Termin za konsultacije: četvrtak u 12h, kabinet 102 Referentni smerovi i polariteti 1. Odrediti vrednosti

Διαβάστε περισσότερα

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović Novi Sad April 17, 2018 1 / 22 Teorija grafova April 17, 2018 2 / 22 Definicija Graf je ure dena trojka G = (V, G, ψ), gde je (i) V konačan skup čvorova,

Διαβάστε περισσότερα

Osnovne teoreme diferencijalnog računa

Osnovne teoreme diferencijalnog računa Osnovne teoreme diferencijalnog računa Teorema Rolova) Neka je funkcija f definisana na [a, b], pri čemu važi f je neprekidna na [a, b], f je diferencijabilna na a, b) i fa) fb). Tada postoji ξ a, b) tako

Διαβάστε περισσότερα

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo Elektrotehnički fakultet univerziteta u Beogradu 7.maj 009. Odsek za Softversko inžinjerstvo Performanse računarskih sistema Drugi kolokvijum Predmetni nastavnik: dr Jelica Protić (35) a) (0) Posmatra

Διαβάστε περισσότερα

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) Izračunavanje pokazatelja načina rada OTVORENOG RM RASPOLOŽIVO RADNO

Διαβάστε περισσότερα

Teorijske osnove informatike 1

Teorijske osnove informatike 1 Teorijske osnove informatike 1 9. oktobar 2014. () Teorijske osnove informatike 1 9. oktobar 2014. 1 / 17 Funkcije Veze me du skupovima uspostavljamo skupovima koje nazivamo funkcijama. Neformalno, funkcija

Διαβάστε περισσότερα

Ispitivanje toka i skiciranje grafika funkcija

Ispitivanje toka i skiciranje grafika funkcija Ispitivanje toka i skiciranje grafika funkcija Za skiciranje grafika funkcije potrebno je ispitati svako od sledećih svojstava: Oblast definisanosti: D f = { R f R}. Parnost, neparnost, periodičnost. 3

Διαβάστε περισσότερα

Otpornost R u kolu naizmjenične struje

Otpornost R u kolu naizmjenične struje Otpornost R u kolu naizmjenične struje Pretpostavimo da je otpornik R priključen na prostoperiodični napon: Po Omovom zakonu pad napona na otporniku je: ( ) = ( ω ) u t sin m t R ( ) = ( ) u t R i t Struja

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo) Najpre da se podsetimo tablice i osnovnih pravila:. C`=0. `=. ( )`= 4. ( n )`=n n-. (a )`=a lna 6. (e )`=e 7. (log a )`= 8. (ln)`= ` ln a (>0) 9. = ( 0) 0. `= (>0) (ovde je >0 i a

Διαβάστε περισσότερα

OSNOVI ELEKTRONIKE VEŽBA BROJ 2 DIODA I TRANZISTOR

OSNOVI ELEKTRONIKE VEŽBA BROJ 2 DIODA I TRANZISTOR ELEKTROTEHNIČKI FAKULTET U BEOGRADU KATEDRA ZA ELEKTRONIKU OSNOVI ELEKTRONIKE ODSEK ZA SOFTVERSKO INŽENJERSTVO LABORATORIJSKE VEŽBE VEŽBA BROJ 2 DIODA I TRANZISTOR 1. 2. IME I PREZIME BR. INDEKSA GRUPA

Διαβάστε περισσότερα

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno.

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno. JŽ 3 POLAN TANZSTO ipolarni tranzistor se sastoji od dva pn spoja kod kojih je jedna oblast zajednička za oba i naziva se baza, slika 1 Slika 1 ipolarni tranzistor ima 3 izvoda: emitor (), kolektor (K)

Διαβάστε περισσότερα

Električna merenja Digitalni merni instrumenti. Diskretizacija/digitalizacija signala

Električna merenja Digitalni merni instrumenti. Diskretizacija/digitalizacija signala Električna merenja Digitalni merni instrumenti Diskretizacija/digitalizacija signala Digitalizacija Diskretizacija po vremenu (odabiranje, sampling, uzorkovanje) Diskretizacija po amplitudi (kvantizacija)

Διαβάστε περισσότερα

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, PARCIJALNI IZVODI I DIFERENCIJALI Sama definicija parcijalnog ivoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, naravno, naučiti onako kako vaš profesor ahteva. Mi ćemo probati

Διαβάστε περισσότερα

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x Zadatak (Darjan, medicinska škola) Izračunaj vrijednosti trigonometrijskih funkcija broja ako je 6 sin =,,. 6 Rješenje Ponovimo trigonometrijske funkcije dvostrukog kuta! Za argument vrijede sljedeće formule:

Διαβάστε περισσότερα

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. a b Verovatno a da sluqajna promenljiva X uzima vrednost iz intervala

Διαβάστε περισσότερα

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f 2. Nule i znak funkcije; presek sa y-osom IspitivaƬe

Διαβάστε περισσότερα

APROKSIMACIJA FUNKCIJA

APROKSIMACIJA FUNKCIJA APROKSIMACIJA FUNKCIJA Osnovni koncepti Gradimir V. Milovanović MF, Beograd, 14. mart 2011. APROKSIMACIJA FUNKCIJA p.1/46 Osnovni problem u TA Kako za datu funkciju f iz velikog prostora X naći jednostavnu

Διαβάστε περισσότερα

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1. Pismeni ispit iz matematike 0 008 GRUPA A Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: λ + z = Ispitati funkciju i nacrtati njen grafik: + ( λ ) + z = e Izračunati

Διαβάστε περισσότερα

Zavrxni ispit iz Matematiqke analize 1

Zavrxni ispit iz Matematiqke analize 1 Građevinski fakultet Univerziteta u Beogradu 3.2.2016. Zavrxni ispit iz Matematiqke analize 1 Prezime i ime: Broj indeksa: 1. Definisati Koxijev niz. Dati primer niza koji nije Koxijev. 2. Dat je red n=1

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: = a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije = a + b + c je parabola. Najpre ćemo naučiti kako

Διαβάστε περισσότερα

Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora. Sadržaj predavanja: 1. Operacijsko pojačalo

Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora. Sadržaj predavanja: 1. Operacijsko pojačalo Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora Sadržaj predavanja: 1. Operacijsko pojačalo Operacijsko Pojačalo Kod operacijsko pojačala izlazni napon je proporcionalan diferencijalu

Διαβάστε περισσότερα

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Trigonometrija Adicijske formule Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Razumijevanje postupka izrade složenijeg matematičkog problema iz osnova trigonometrije

Διαβάστε περισσότερα

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1 Strukture podataka i algoritmi 1. kolokvij Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i službeni šalabahter. Predajete samo papire koje ste dobili. Rezultati i uvid u kolokvije: ponedjeljak,

Διαβάστε περισσότερα

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log = ( > 0, 0)!" # > 0 je najčešći uslov koji postavljamo a još je,, > 0 se zove numerus (aritmand), je osnova (baza). 0.. ( ) +... 7.. 8. Za prelazak na neku novu bazu c: 9. Ako je baza (osnova) 0 takvi se

Διαβάστε περισσότερα

I.13. Koliki je napon između neke tačke A čiji je potencijal 5 V i referentne tačke u odnosu na koju se taj potencijal računa?

I.13. Koliki je napon između neke tačke A čiji je potencijal 5 V i referentne tačke u odnosu na koju se taj potencijal računa? TET I.1. Šta je Kulonova sila? elektrostatička sila magnetna sila c) gravitaciona sila I.. Šta je elektrostatička sila? sila kojom međusobno eluju naelektrisanja u mirovanju sila kojom eluju naelektrisanja

Διαβάστε περισσότερα

Funkcija prenosa. Funkcija prenosa se definiše kao količnik z transformacija odziva i pobude. Za LTI sistem: y n h k x n k.

Funkcija prenosa. Funkcija prenosa se definiše kao količnik z transformacija odziva i pobude. Za LTI sistem: y n h k x n k. OT3OS1 7.11.217. Definicije Funkcija prenosa Funkcija prenosa se definiše kao količnik z transformacija odziva i pobude. Za LTI sistem: y n h k x n k Y z X z k Z y n Z h n Z x n Y z H z X z H z H z n h

Διαβάστε περισσότερα

PRIMJER 3. MATLAB filtdemo

PRIMJER 3. MATLAB filtdemo PRIMJER 3. MATLAB filtdemo Prijenosna funkcija (IIR) Hz () =, 6 +, 3 z +, 78 z +, 3 z +, 53 z +, 3 z +, 78 z +, 3 z +, 6 z, 95 z +, 74 z +, z +, 9 z +, 4 z +, 5 z +, 3 z +, 4 z 3 4 5 6 7 8 3 4 5 6 7 8

Διαβάστε περισσότερα

18. listopada listopada / 13

18. listopada listopada / 13 18. listopada 2016. 18. listopada 2016. 1 / 13 Neprekidne funkcije Važnu klasu funkcija tvore neprekidne funkcije. To su funkcije f kod kojih mala promjena u nezavisnoj varijabli x uzrokuje malu promjenu

Διαβάστε περισσότερα

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011. INTEGRALNI RAČUN Teorije, metodike i povijest infinitezimalnih računa Lucija Mijić lucija@ktf-split.hr 17. veljače 2011. Pogledajmo Predstavimo gornju sumu sa Dodamo još jedan Dobivamo pravokutnik sa Odnosno

Διαβάστε περισσότερα

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA : MAKSIMALNA BRZINA Maksimalna brzina kretanja F O (N) F OI i m =i I i m =i II F Oid Princip određivanja v MAX : Drugi Njutnov zakon Dokle god je: F O > ΣF otp vozilo ubrzava Kada postane: F O = ΣF otp

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo Najpre da se podsetimo tablice i osnovnih pravila:. C0.. (. ( n n n-. (a a lna 6. (e e 7. (log a 8. (ln ln a (>0 9. ( 0 0. (>0 (ovde je >0 i a >0. (cos. (cos - π. (tg kπ cos. (ctg

Διαβάστε περισσότερα

FAKULTET PROMETNIH ZNANOSTI

FAKULTET PROMETNIH ZNANOSTI SVUČILIŠT U ZAGU FAKULTT POMTNIH ZNANOSTI predmet: Nastavnik: Prof. dr. sc. Zvonko Kavran zvonko.kavran@fpz.hr * Autorizirana predavanja 2016. 1 Pojačala - Pojačavaju ulazni signal - Zahtjev linearnost

Διαβάστε περισσότερα

5. Karakteristične funkcije

5. Karakteristične funkcije 5. Karakteristične funkcije Profesor Milan Merkle emerkle@etf.rs milanmerkle.etf.rs Verovatnoća i Statistika-proleće 2018 Milan Merkle Karakteristične funkcije ETF Beograd 1 / 10 Definicija Karakteristična

Διαβάστε περισσότερα

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla XI dvoqas veжbi dr Vladimir Balti 4. Stabla Teorijski uvod Teorijski uvod Definicija 5.7.1. Stablo je povezan graf bez kontura. Definicija 5.7.1. Stablo je povezan graf bez kontura. Primer 5.7.1. Sva stabla

Διαβάστε περισσότερα

Antene. Srednja snaga EM zračenja se dobija na osnovu intenziteta fluksa Pointingovog vektora kroz sferu. Gustina snage EM zračenja:

Antene. Srednja snaga EM zračenja se dobija na osnovu intenziteta fluksa Pointingovog vektora kroz sferu. Gustina snage EM zračenja: Anene Transformacija EM alasa u elekrični signal i obrnuo Osnovne karakerisike anena su: dijagram zračenja, dobiak (Gain), radna učesanos, ulazna impedansa,, polarizacija, efikasnos, masa i veličina, opornos

Διαβάστε περισσότερα

Elementi elektronike septembar 2014 REŠENJA. Za vrednosti ulaznog napona

Elementi elektronike septembar 2014 REŠENJA. Za vrednosti ulaznog napona lementi elektronike septembar 2014 ŠNJA. Za rednosti ulaznog napona V transistor je isključen, i rednost napona na izlazu je BT V 5 V Kada ulazni napon dostigne napon uključenja tranzistora, transistor

Διαβάστε περισσότερα

Osnove mikroelektronike

Osnove mikroelektronike Osnove mikroelektronike Z. Prijić T. Pešić Elektronski fakultet Niš Katedra za mikroelektroniku Predavanja 2006. Sadržaj 1 MOSFET - model za male signale 2 Struja kroz i disipacija snage Model za male

Διαβάστε περισσότερα

41. Jednačine koje se svode na kvadratne

41. Jednačine koje se svode na kvadratne . Jednačine koje se svode na kvadrane Simerične recipročne) jednačine Jednačine oblika a n b n c n... c b a nazivamo simerične jednačine, zbog simeričnosi koeficijenaa koeficijeni uz jednaki). k i n k

Διαβάστε περισσότερα

4 IMPULSNA ELEKTRONIKA

4 IMPULSNA ELEKTRONIKA 4 IMPULSNA ELEKTRONIKA 1.1 Na slici 1.1 prikazano je standardno TTL kolo sa parametrima čije su nominalne vrednosti: V cc = 5V, V γ = 0, 65V, V be = V bc = V d = 0, 7V, V bes = 0, 75V, V ces = 0, 1V, R

Διαβάστε περισσότερα

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Trigonometrijske jednačine i nejednačine. Zadaci koji se rade bez upotrebe trigonometrijskih formula. 00. FF cos x sin x

Διαβάστε περισσότερα

Mašinsko učenje. Regresija.

Mašinsko učenje. Regresija. Mašinsko učenje. Regresija. Danijela Petrović May 17, 2016 Uvod Problem predviđanja vrednosti neprekidnog atributa neke instance na osnovu vrednosti njenih drugih atributa. Uvod Problem predviđanja vrednosti

Διαβάστε περισσότερα

ELEKTROTEHNIČKI ODJEL

ELEKTROTEHNIČKI ODJEL MATEMATIKA. Neka je S skup svih živućih državljana Republike Hrvatske..04., a f preslikavanje koje svakom elementu skupa S pridružuje njegov horoskopski znak (bez podznaka). a) Pokažite da je f funkcija,

Διαβάστε περισσότερα

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost M086 LA 1 M106 GRP Tema: CSB nejednakost. 19. 10. 2017. predavač: Rudolf Scitovski, Darija Marković asistent: Darija Brajković, Katarina Vincetić P 1 www.fizika.unios.hr/grpua/ 1 Baza vektorskog prostora.

Διαβάστε περισσότερα

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Sortiranje prebrajanjem (Counting sort) i Radix Sort Sortiranje prebrajanjem (Counting sort) i Radix Sort 15. siječnja 2016. Ante Mijoč Uvod Teorem Ako je f(n) broj usporedbi u algoritmu za sortiranje temeljenom na usporedbama (eng. comparison-based sorting

Διαβάστε περισσότερα

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića Verovatnoća i Statistika I deo Teorija verovatnoće zadaci Beleške dr Bobana Marinkovića Iz skupa, 2,, 00} bira se na slučajan način 5 brojeva Odrediti skup elementarnih dogadjaja ako se brojevi biraju

Διαβάστε περισσότερα

Konstruisanje. Dobro došli na... SREDNJA MAŠINSKA ŠKOLA NOVI SAD DEPARTMAN ZA PROJEKTOVANJE I KONSTRUISANJE

Konstruisanje. Dobro došli na... SREDNJA MAŠINSKA ŠKOLA NOVI SAD DEPARTMAN ZA PROJEKTOVANJE I KONSTRUISANJE Dobro došli na... Konstruisanje GRANIČNI I KRITIČNI NAPON slajd 2 Kritični naponi Izazivaju kritične promene oblika Delovi ne mogu ispravno da vrše funkciju Izazivaju plastične deformacije Može doći i

Διαβάστε περισσότερα

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z. Pismeni ispit iz matematike 06 007 Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj z = + i, zatim naći z Ispitati funkciju i nacrtati grafik : = ( ) y e + 6 Izračunati integral:

Διαβάστε περισσότερα

5 Ispitivanje funkcija

5 Ispitivanje funkcija 5 Ispitivanje funkcija 3 5 Ispitivanje funkcija Ispitivanje funkcije pretodi crtanju grafika funkcije. Opšti postupak ispitivanja funkcija koje su definisane eksplicitno y = f() sadrži sledeće elemente:

Διαβάστε περισσότερα

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A. 3 Infimum i supremum Definicija. Neka je A R. Kažemo da je M R supremum skupa A ako je (i) M gornja meda skupa A, tj. a M a A. (ii) M najmanja gornja meda skupa A, tj. ( ε > 0)( a A) takav da je a > M

Διαβάστε περισσότερα

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri 1 1 Zadatak 1b Čisto savijanje - vezano dimenzionisanje Odrediti potrebnu površinu armature za presek poznatih dimenzija, pravougaonog

Διαβάστε περισσότερα

IMPULSNA ELEKTRONIKA Zbirka rešenih zadataka

IMPULSNA ELEKTRONIKA Zbirka rešenih zadataka IMPULSNA ELEKTRONIKA Zbirka rešenih zadataka Stančić Goran Jevtić Milun Niš, 2004 2 IMPULSNA ELEKTRONIKA Glava 1 Logička kola i njihova primena 3 4 IMPULSNA ELEKTRONIKA 1.1 Na slici 1.1 prikazano je standardno

Διαβάστε περισσότερα

Digitalna mikroelektronika

Digitalna mikroelektronika Digitalna mikroelektronika Z. Prijić Elektronski fakultet Niš Katedra za mikroelektroniku Predavanja 27. Deo I Kombinaciona logička kola Kombinaciona logička kola Osnovna kombinaciona logička kola 2 3

Διαβάστε περισσότερα

Operacije s matricama

Operacije s matricama Linearna algebra I Operacije s matricama Korolar 3.1.5. Množenje matrica u vektorskom prostoru M n (F) ima sljedeća svojstva: (1) A(B + C) = AB + AC, A, B, C M n (F); (2) (A + B)C = AC + BC, A, B, C M

Διαβάστε περισσότερα

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET Riješiti jednačine: a) 5 = b) ( ) 3 = c) + 3+ = 7 log3 č) = 8 + 5 ć) sin cos = d) 5cos 6cos + 3 = dž) = đ) + = 3 e) 6 log + log + log = 7 f) ( ) ( ) g) ( ) log

Διαβάστε περισσότερα

PRAVILNIK O METROLOŠKIM USLOVIMA ZA MERILA NIVOA ZVUKA. ("Sl. list SRJ", br. 27/2001) Član 1

PRAVILNIK O METROLOŠKIM USLOVIMA ZA MERILA NIVOA ZVUKA. (Sl. list SRJ, br. 27/2001) Član 1 PRAVILNIK O METROLOŠKIM USLOVIMA ZA MERILA NIVOA ZVUKA ("Sl. list SRJ", br. 27/2001) Član 1 Ovim pravilnikom propisuju se metrološki uslovi koje moraju ispunjavati merila nivoa zvuka (fonometri, zvukomeri

Διαβάστε περισσότερα

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta. auchyjev teorem Neka je f-ja f (z) analitička u jednostruko (prosto) povezanoj oblasti G, i neka je zatvorena kontura koja čitava leži u toj oblasti. Tada je f (z)dz = 0. Postoji više dokaza ovog teorema,

Διαβάστε περισσότερα

Linearna algebra 2 prvi kolokvij,

Linearna algebra 2 prvi kolokvij, Linearna algebra 2 prvi kolokvij, 27.. 20.. Za koji cijeli broj t je funkcija f : R 4 R 4 R definirana s f(x, y) = x y (t + )x 2 y 2 + x y (t 2 + t)x 4 y 4, x = (x, x 2, x, x 4 ), y = (y, y 2, y, y 4 )

Διαβάστε περισσότερα

Eliminacijski zadatak iz Matematike 1 za kemičare

Eliminacijski zadatak iz Matematike 1 za kemičare Za mnoge reakcije vrijedi Arrheniusova jednadžba, koja opisuje vezu koeficijenta brzine reakcije i temperature: K = Ae Ea/(RT ). - T termodinamička temperatura (u K), - R = 8, 3145 J K 1 mol 1 opća plinska

Διαβάστε περισσότερα

ASIMPTOTE FUNKCIJA. Dakle: Asimptota je prava kojoj se funkcija približava u beskonačno dalekoj tački. Postoje tri vrste asimptota:

ASIMPTOTE FUNKCIJA. Dakle: Asimptota je prava kojoj se funkcija približava u beskonačno dalekoj tački. Postoje tri vrste asimptota: ASIMPTOTE FUNKCIJA Naš savet je da najpre dobro proučite granične vrednosti funkcija Neki profesori vole da asimptote funkcija ispituju kao ponašanje funkcije na krajevima oblasti definisanosti, pa kako

Διαβάστε περισσότερα

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori MATEMATIKA 2 Prvi pismeni kolokvijum, 14.4.2016 Grupa 1 Rexea zadataka Dragan ori Zadaci i rexea 1. unkcija f : R 2 R definisana je sa xy 2 f(x, y) = x2 + y sin 3 2 x 2, (x, y) (0, 0) + y2 0, (x, y) =

Διαβάστε περισσότερα

11. PROMENA UČESTANOSTI ODABIRANJA

11. PROMENA UČESTANOSTI ODABIRANJA . PROMENA ČESTANOSTI OABIRANJA sistemima za digitalnu obradu signala, naročito u telekomunikacijama, često se ukazuje potreba da se promeni učestanost odabiranja. Sistem u kome se koristi više učestanosti

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA.   Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije a + b + c je parabola. Najpre ćemo naučiti kako izgleda

Διαβάστε περισσότερα

1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II

1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II 1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II Zadatak: Klipni mehanizam se sastoji iz krivaje (ekscentarske poluge) OA dužine R, klipne poluge AB dužine =3R i klipa kompresora B (ukrsne glave). Krivaja

Διαβάστε περισσότερα

LINEARNA ELEKTRONIKA VEŽBA BROJ 4 ANALIZA AKTIVNIH FILTARA SA JEDNIM OPERACIONIM POJAČAVAČEM

LINEARNA ELEKTRONIKA VEŽBA BROJ 4 ANALIZA AKTIVNIH FILTARA SA JEDNIM OPERACIONIM POJAČAVAČEM ELEKTROTEHNIČKI FAKULTET U BEOGRADU KATEDRA ZA ELEKTRONIKU LINEARNA ELEKTRONIKA LABORATORIJSKE VEŽBE VEŽBA BROJ 4 ANALIZA AKTIVNIH FILTARA SA JEDNIM OPERACIONIM POJAČAVAČEM.. IME I PREZIME BR. INDEKSA

Διαβάστε περισσότερα

OSNOVE ELEKTROTEHNIKE II Vježba 11.

OSNOVE ELEKTROTEHNIKE II Vježba 11. OSNOVE EEKTOTEHNKE Vježba... Za redno rezonantno kolo, prikazano na slici. je poznato E V, =Ω, =Ω, =Ω kao i rezonantna učestanost f =5kHz. zračunati: a) kompleksnu struju u kolu kao i kompleksne napone

Διαβάστε περισσότερα

Komponente digitalnih sistema. Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka

Komponente digitalnih sistema. Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka Komponente digitalnih sistema Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka Standardne digitalne komponente (moduli) Obavljaju funkcije za koje

Διαβάστε περισσότερα

ANALIZA TTL, DTL I ECL LOGIČKIH KOLA

ANALIZA TTL, DTL I ECL LOGIČKIH KOLA ANALIZA TTL, DTL I ECL LOGIČKIH KOLA Zadatak 1 Za DTL logičko kolo sa slike 1.1, odrediti: a) Logičku funkciju kola i režime rada svih tranzistora za sve kombinacije logičkih nivoa na ulazu kola. b) Odrediti

Διαβάστε περισσότερα

( , 2. kolokvij)

( , 2. kolokvij) A MATEMATIKA (0..20., 2. kolokvij). Zadana je funkcija y = cos 3 () 2e 2. (a) Odredite dy. (b) Koliki je nagib grafa te funkcije za = 0. (a) zadanu implicitno s 3 + 2 y = sin y, (b) zadanu parametarski

Διαβάστε περισσότερα

1. zadatak , 3 Dakle, sva kompleksna re{ewa date jedna~ine su x 1 = x 2 = 1 (dvostruko re{ewe), x 3 = 1 + i

1. zadatak , 3 Dakle, sva kompleksna re{ewa date jedna~ine su x 1 = x 2 = 1 (dvostruko re{ewe), x 3 = 1 + i PRIPREMA ZA II PISMENI IZ ANALIZE SA ALGEBROM. zadatak Re{avawe algebarskih jedna~ina tre}eg i ~etvrtog stepena. U skupu kompleksnih brojeva re{iti jedna~inu: a x 6x + 9 = 0; b x + 9x 2 + 8x + 28 = 0;

Διαβάστε περισσότερα

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Ime i prezime: 1. Prikazane su tačke A, B i C i prave a,b i c. Upiši simbole Î, Ï, Ì ili Ë tako da dobijeni iskazi

Διαβάστε περισσότερα

Induktivno spregnuta kola

Induktivno spregnuta kola Induktivno spregnuta kola 13. januar 2016 Transformatori se koriste u elektroenergetskim sistemima za povišavanje i snižavanje napona, u elektronskim i komunikacionim kolima za promjenu napona i odvajanje

Διαβάστε περισσότερα

MEHANIKA FLUIDA. Isticanje kroz otvore sa promenljivim nivoom tečnosti

MEHANIKA FLUIDA. Isticanje kroz otvore sa promenljivim nivoom tečnosti MEHANIKA FLUIDA Isticanje kroz otvore sa promenljivim nivoom tečnosti zadatak Prizmatična sud podeljen je vertikalnom pregradom, u kojoj je otvor prečnika d, na dve komore Leva komora je napunjena vodom

Διαβάστε περισσότερα

Prediktor-korektor metodi

Prediktor-korektor metodi Prediktor-korektor metodi Prilikom numeričkog rešavanja primenom KP: x = fx,, x 0 = 0, x 0 x b LVM α j = h β j f n = 0, 1, 2,..., N, javlja se kompromis izmed u eksplicitnih metoda, koji su lakši za primenu

Διαβάστε περισσότερα

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011. Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika Monotonost i ekstremi Katica Jurasić Rijeka, 2011. Ishodi učenja - predavanja Na kraju ovog predavanja moći ćete:,

Διαβάστε περισσότερα

L E M I L I C E LEMILICA WELLER WHS40. LEMILICA WELLER SP25 220V 25W Karakteristike: 220V, 25W, VRH 4,5 mm Tip: LEMILICA WELLER. Tip: LEMILICA WELLER

L E M I L I C E LEMILICA WELLER WHS40. LEMILICA WELLER SP25 220V 25W Karakteristike: 220V, 25W, VRH 4,5 mm Tip: LEMILICA WELLER. Tip: LEMILICA WELLER L E M I L I C E LEMILICA WELLER SP25 220V 25W Karakteristike: 220V, 25W, VRH 4,5 mm LEMILICA WELLER SP40 220V 40W Karakteristike: 220V, 40W, VRH 6,3 mm LEMILICA WELLER SP80 220V 80W Karakteristike: 220V,

Διαβάστε περισσότερα

4 Numeričko diferenciranje

4 Numeričko diferenciranje 4 Numeričko diferenciranje 7. Funkcija fx) je zadata tabelom: x 0 4 6 8 fx).17 1.5167 1.7044 3.385 5.09 7.814 Koristeći konačne razlike, zaključno sa trećim redom, odrediti tačku x minimuma funkcije fx)

Διαβάστε περισσότερα

FIZIČKO-TEHNIČKA MERENJA: ELEKTRIČNA KOLA NEOPHODNA ZA RAD SENZORA, ŠUM U SENZORIMA I KOLIMA

FIZIČKO-TEHNIČKA MERENJA: ELEKTRIČNA KOLA NEOPHODNA ZA RAD SENZORA, ŠUM U SENZORIMA I KOLIMA : ELEKTRIČNA KOLA NEOPHODNA ZA RAD SENZORA, ŠUM U SENZORIMA I KOLIMA UVOD Signal koji generiše senzor je ili suviše slab ( ~ μv) ili sadrži šum ili sadrži neželjene komponente (DC nivo) ili nije u odgovarajućoj

Διαβάστε περισσότερα