810 likes | 1.05k Views
Elektronski fakultet Niš Katedra za elektroniku Seminarski rad iz Mikroproces orskih sistema Mentor: prof. dr Mile Stojčev. SPREGA MIKROKONTROLERA PIC16F877 SA PARALELNIM PERIFERIJSKIM INTERFEJSOM 8255A I D/A KONVERTOROM DAC0832LCV. Sini ša Stoilković 10984 Mladen Pavlović 10922
E N D
Elektronski fakultet NišKatedra za elektronikuSeminarski rad iz Mikroprocesorskih sistemaMentor: prof. dr Mile Stojčev SPREGA MIKROKONTROLERA PIC16F877 SA PARALELNIMPERIFERIJSKIM INTERFEJSOM 8255A I D/A KONVERTOROM DAC0832LCV Siniša Stoilković 10984 Mladen Pavlović 10922 Slaviša Popović 10937
UVODNA REČ • Ideja autora rada koji je pred vama bila je da se ilustruje način sprezanja mikrokontrolera PIC16F877-04 sa paralelnim periferijskim interfejsom (PPI) 8255 i D/A konvertorom DAC0832. • Prvo poglavlje sadrži opis mikrokontrolera PIC16F877-04. Zatim je u kratkim crtama opisan PPI 8255. U trećem i četvrtom poglavlju su izloženi principu D/A i A/D konverzije. • Električna šema i izgled štampane ploče projekta sa objašnjenjima ilustrovani su u petom poglavlju. U istom poglavlju se nalazi izgled programa u mikroC-u i asembleru. • Ovde želimo da istaknemo kako je mikrokontroler isprogramiran preko AllPIC programatoru uz pomoć softvera IC-Prog.
PIC16F877 – OPŠTE • PIC16F877 je Microchip-ov 8-bitnom CMOSmikrokontroler • baziran na flash tehnologiji.To znači da u samom čipu • postojiprogramska memorija koja se upisuje i briše • električnimputem, što je daleko naprednije od brisanja • EPROM-a UVzracima. • 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).
PIC16F877 – KOMPONENTE • Flash programska memorija – 8 kword • 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, ADC, USART)
PIC16F877 –STRUKTURA MEMORIJE • Strukturu memorije kod mikrokontrolera čine tri odvojena bloka: • Programska memorija • Memorija podataka • EEPROM memorija podataka.
PPI INTEL 8255 • Integrisano kolo 8255 pripada grupi programibilnih (paralelnih) periferijskih interfejsa (Programmable Peripheral Interface) skraćeno PPI • Funkcionalna konfiguracija kola 8255 je definisana (programirana) sistemskim softverom,tako da nije potrebna spoljašnja logikaza povezivanje periferijskih uređaja ili sistema.
PPI 8255 – REŽIMI RADA • Mod 0(svaka grupa od 12 ulazno-izlaznih pinova može da se programira u skupove od po 4, koji se definišu kao ulazi ili kao izlazi) • Mod 1(svaka grupa može da se programira da ima po 8 linija ulaza ili izlaza. Od preostalih četiri, tri pina se koriste za signale handshake protokola, a jedan za kontrolu prekida) • Mod 2(predstavlja dvosmerni rad magistrale koja koristi 8 linija za dvosmernu magistralu, i 5 linija, tako što pozajmljuje jednu od ostalih grupa, za handshake protokol)
PPI 8255 – SASTAVNI DELOVI • Bafer magistrale podataka • Kontrolna logika • Kontrola Grupe blokova A i B • Port A • Port B • Port C
PPI 8255 – PORTOVI • Port A: sadrži jedan 8-bitni izlazni leč/bafer i jedan 8-bitni ulazni leč. • Port B: sadrži jedan 8-bitni ulazno/izlazni leč/bafer i jedan 8-bitni ulazni bafer. • Port C: sadrži jedan 8-bitni izlazni leč/bafer i jedan 8-bitni ulazni bafer (nema leča na ulazu). Ovaj port može da se podeli na dva 4-bitna porta u zavisnosti od režima rada (moda) kola 8255. Svaki 4-bitni port sadrži 4-bitni leč i može da se koristi za izlaze kontrolnih signala i ulaze statusnih signala zajedno sa Portom A i Portom B.
PPI 8255 – Mod 0 • Dva 8-bitna i dva 4-bitna porta • Svaki port može da bude ulazni i izlazni • Izlazi su lečovani • Ulazi nisu lečovani • U ovom režimu su moguće 16 različitih ulazno/izlaznih konfiguracija.
PPI 8255 – Mod 1 • Postoje dve grupe blokova (Grupa A i Grupa B) • Svaka grupa sadrži jedan 8-bitni port podataka i jedan 4-bitni kontrolni ili port podataka • 8-bitni port podatka može biti ili ulazni ili izlazni. I ulazi i izlazi su lečovani • 4-bitni port se koristi za kontrolu i status 8-bitnog porta podataka.
PPI 8255 – Mod 2 • Koristi se samo u Grupi A • Jedan 8-bitni, bidirekcioni (dvosmerni) port (Port A) i 5-bitni kontrolni port (Port C) • I ulazi i izlazu su lečovani • 5-bitni kontrolni port (Port C) se koristi za kontrolu i status 8-bitnog, bidirekcionog (dvosmernog) porta (Port A)
D/A KONVERTORI (DAC) • Integrisano kolo koje na osnovu grupe ulaznih bitova (bit stream), poslate najčešće od strane mikroprocesora, kreira izlazni analogni signal srazmeran digitalnom ulazu. • Naziv uređaja D/A konvertor je skraćenica za digitalno-analogni konvertor, a često se u literaturi koristi i engleska skraćenica DAC (Digital-Analog Converter).
DAC–DIGITALNI KODOVI Komparacijadigitalnihulaznihkodova
DAC–OTPORNI NIZ Nizotpornika (a) Jednostavni D/Akonvertor sa otpornim nizom, (b) korišćenje binarnog prekidačkog polja radi smanjenja izlazne kapacitivnosti
DAC–OTPORNI NIZnastavak Greške neuparenosti kod D/A konvertora sa otpornim nizom - greška neusaglašenosti
DAC–OTPORNI NIZnastavak Integralna nelinearnost D/A konvertora sa otpornim nizom - Za toleranciju otpornika od 2%
DAC–OTPORNI NIZnastavak Diferencijalna nelinearnost D/A konvertora sa otpornim nizom - Za toleranciju otpornika od 2%
DAC–LESTVIČASTE MREŽE R-2R D/A konvertor Dk – k-ti bit ulazne reči čija vrednost može biti 1 ili 0
DAC ZASNOVAN NA "KRAĐI" STRUJE Opšti D/A konvertor sa strujnom kontrolom
DAC ZASNOVAN NA "KRAĐI" STRUJE nastavak Greške neuparenosti D/A konvertora sa krađom struje greška struje usled neuparenosti Maksimalna integralna nelinearnost: Maksimalna diferencijalna nelinearnost:
DAC ZASNOVAN NA "KRAĐI" STRUJE nastavak Strujno kontrolisani D/A konvertor sa težinskim strujnim izvorima
DAC ZASNOVAN NA "KRAĐI" STRUJE nastavak Greške neuparenosti D/A konvertora sa krađom struje Maksimalna integralna nelinearnost: Maksimalna diferencijalna nelinearnost:
DAC SA SKALIRANIM TOVAROM • D/A konvertor sa skaliranjem napona, • ekvivalentno kolo sa MSB=1 i svim ostalim bitovima jednaki nuli
DAC SA SKALIRANIM TOVAROM nastavak D/A konvertor sa razdeljenim nizom
DAC - PRENOSNA KARAKTERISTIKA Blok diagram DAC Idealna prenosna karakteristika 3-bitnog D/A konvertora VFS – Napon pune skale
DAC - DIFERENCIJALNA NELINEARNOST DNLn = (stvarna vrednost priraštaja tranzicije n) – (idealna vrednost priraštaja) Primer diferencijalne nelinearnosti za 3-bitni D/A konvertor
DAC - INTEGRALNA NELINEARNOST INL= (izlazna vrednost ulaznog koda n) – (izlazna vrednost referentne linije u toj tački) Merenje INL sa prenosne karakteristike D/A konvertora
DAC - INTEGRALNA NELINEARNOST nastavak Primer integralne nelinearnosti 3-bitnog D/A konvertora
DAC - OFSET Prikazofset greške 3-bitnog D/A konvertora
DAC - GREŠKA POJAČANJA Greška pojačanja = Idealni nagib – aktuelni nagib Prikaz greške pojačanja 3-bitnog D/A konvertora
DAC - ZAKLJUČAK Otporni niz - visoka tačnost (za veliku ulaznu impendansu i odgovaraću toleranciju otpornika), - izlaz je uvek monoton, - INL je ograničavajući faktor visoke rezolucije (2N puta veći od DNL). Lestvičaste R-2R mreže - realizacija zahteva manji broj otpornika. Konvertor zasnovan na krađi struje - velika brzina, - velika strujna sposobnost (ne zahteva bafere).
DAC - ZAKLJUČAKnastavak Konvertor sa skaliranim tovarom - postojanje parazitne kapacitivnosti ograničava visoku rezoluciju. Ciklični konvertor - tačnost zavisi od tačnosti pojačanja pojačavača, - N-to bitna konverzija zahteva N taktnih intervala. Protočni konvertor - veoma brza arhitektura, - inicijalno kašnjenje od N taktnih intervala, - visoka rezolucija zahteva veliku tačnost pojačanja pojačavača, - N puta veći broj kola od ciklične arhitekture.
A/D KONVERTORI (ADC) - PRIMENE • Analogno-digitalna konverzija predstavlja generisanje digitalnog kodovanog broja koji odgovara analognom ulaznom signalu. Elektronsko kolo koje vrši konverziju naziva se analogno-digitalni konvertor, ili skraćeno A/D konvertor (ADC). • Primene: • Akvizicija podataka • Precizno merenje u industriji • Audio i video procesiranje • Instrumente koji se baterijski napajaju • Satelitske komunikacije • Digitalne osciloskope i dr.
PRINCIPIJELNA ŠEMA A/D KONVERTORA • Elementaran analogno-digitalni konvertor je naponski komparator. Ulazni analogni signal -Vul, komparator konvertuje u jednobitnu digitalnu informaciju D=d0, tako da d0=0 označava da je Vul<V1, a d0=1 da je Vul>V1, gde je V1 unapred određen naponski prag.
IDEALNA KARAKTERISTIKA A/D KONVERTORA • Karakteristika prenosa A/D konvertora u slučaju da postoji 8 nivoa komparacije ulaznog napona. Ulazni napon se menja od 0 do VPS a izlazna digitalna informacija ima 9 diskretnih stanja.
KLASE A/D KONVERTORA • A/D konvertori se klasifikuju po načinu ili brzini konverzije. Najčešće se koriste tri klase: • Vrlo brzi A/D konvertori, nazivaju se 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, nazivaju se i serijski A/D konvertori , A/D konvertori sa vremenskim ekvivalentom, ili integratorski A/D konvertori.