530 likes | 885 Views
UNIVERZITET U NI Š U ELEKTORNSKI FAKULTET. VARIJACIJE PRI MERENJU NAPONA SISTEMOM REALIZOVANIM AT89S8253 MIKROKONTROLEROM. MENTOR: PROF. DR. MILE STOJČEV. STUDENTI: DJORDJE STEVANOVI Ć 11314 MARIO STOJANOVI Ć 11323. SADR Ž AJ PREZENTACIJE. PROJEKTNI ZADATAK PRENOS PODATAKA
E N D
UNIVERZITET U NIŠU ELEKTORNSKI FAKULTET VARIJACIJE PRI MERENJU NAPONA SISTEMOM REALIZOVANIM AT89S8253 MIKROKONTROLEROM MENTOR: PROF. DR. MILE STOJČEV STUDENTI: DJORDJE STEVANOVIĆ 11314 MARIO STOJANOVIĆ 11323
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
PROJEKTNI ZADATAK • UPOZNAVANJE SA MIKROKONTROLEROM AT89S8253 • UPOZNAVANJE SA A/D KONVERTOROM AD9243AS • REALIZOVANJE UREDJAJA PREKO KOGA SE NA ULAZU ISTOG MOGU ZADAVATI ODREDJENE VREDNOSTI NAPONA PREKO POTENCIOMETRA POMOCU MIKROKONTROLERA AT89S8253 • PROGRAMIRANJE MIKROKONTROLERA AT89S8253 • REALIZOVANJE SOFTWARE-A ZA KOMUNIKACIJU IZMEDJU UREDJAJA I PC-A PREKO SERIJSKOG PORTA, CIJI JE ZADATAK PRIKAZIVANJE ULAZNIH NAPONA UREDJAJA NA EKRANU PC-A • OSMISLJAVANJE LABORATORIJSKIH VEZBI ZA STUDENTE
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
PRENOS PODATAKA Prenos podataka predstavlja prenos kodirane informacije kroz prenosni medijum. Razlikuju sedva tipa prenosa: • Paralelni: prenos n bitova (n = 8, 16, 32, 64) vrši se istovremeno (ovakav prenos se tipično ostvaruje preko sistemske ili neke druge magistrale u mikroprocesorskom sistemu); • Serijski: prenos podataka vrši se preko jedinstvene linije (provodnika, voda, žice).
PRENOS PODATAKA • Paralelni prenos podataka je brži od serijskog, ali je znatno skuplji – jer zahteva veći broj veza. Paralelni prenos podataka se daleko više koristi kada se prenose podaci na kraćim rastojanjima: interno, unutar mikroprocesorskog sistema i eksterno, do nekoliko metara, u okviru računarskog okruženja • Serijski prenos je pouzdaniji, iz razloga što se prekid ili greška u prenosu uvek mogu lako detektovati. Kod serijskog prenosa su protokoli daleko bolje definisani nego kod paralelnog. Kod serijskog prenosa podaci se prenose bit po bit. Serijski prenos podataka je neizbežan kada su u pitanju rastojanja veća od reda nekoliko metara. Neki od standard za serijsku komunikaciju su: RS232, RS422, RS423, RS485 itd. • Sa pojavom USB porta (najpre kod računara, a zatim kod mikrokontrolera i GSM/GPRS/3G modula) paralelna komunikacija između nekih eksternih uređaja (štampača, skenera itd.) i mikroprocesora polako odlazi u istoriju. Razlog tome su prednosti koje poseduje USB port, tri najvažnije su: • komunikacija se ostvaruje preko samo četiri linije (napajanje, masa i dve linije za podatke) • veoma velike brzine prenosa podataka (teoretski, 120MB/s) • moguće je iskoristiti USB port kao izvor napajanja.
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
STA SU MIKROKONTROLERI? • UVOD • MIKROKONTROLERI: TIPOVI AHHITEKTURA I BLOK ŠEMA • STRUKTURA MIKROKONTROLERA • MIKROKONTROLER AT89S8253
UVOD U MIKROKONTROLERE • Mikrokontroler je računar na čipu. On sadrži skoro sve osnovne gradivne blokove računarskog sistema (CPU, ROM, RAM, U/I periferije tipa AD i DA konvertore, serijske komunikacione interfejse (UART), paralelne interfejs portove (PIA), tajmere/brojače, LCD drajvere, i dr.) koje se mogu integrisati na jedinstvenom čipu. Danas su mikrokontroleri najviše prodavan tip procesora. Ne bez razloga projektanti sistema relativno male složenosti kažu da su to čipovi upravo projektovani po njihovoj meri, tj. čipove o kojima sanjaju. • Mikrokontroleri se danas koriste u embedded sistemima za upravljanje raznim funkcijama koje sistem treba da obavi. Na primer, u današnjim automobilima ugrađuje se veliki broj (reda 100) mikrokontrolera koji se koriste za upravljanje radom kočionog sistema, ubrizgavanjem goriva, klima sistemom za grejanje-hlađenje, prikazom informacije na pokaznoj tabli, i td. Drugim rečima, jedno-čipni računar omogućava projektantima da ugrade računar u bilo kom uređaju koji postavlja makar i minimalne zahteve za određenim iznosom izračunavanja. • Mikrokontroleri se veoma često koriste i u situacijama kada treba da se veoma brzo reaguje na spoljne signale posebno ako se takvi sistemi koriste za rad u realnom vremenu pa zbog toga koriste procesiranje bazirano na obradu prekida.
MIKROKONTROLERITIPOVI AHHITEKTURA I BLOK ŠEMA • Harvard tip - karakteriše se razdvojenim memorijama za program i podatke. Svaki tip memorije ima svoj sopstveni fizički adresni prostor i koristi sopstvenu internu adresnu magistralu. Prednost ove arhitekture je ta što se pristup programskoj memoriji i memoriji za podatke ostvaruje konkurentno. Obvakvim pristupom se skraćuje ukupno vreme izvršenja programa. Proizvođači mikrokontrolera Microchip, Zilog, National Semiconductor i Cypress zasnivaju svoje proizvode na Harvard arhitekturi, mada postoje neke neznatne ali važne razlike u pristupima kako ove kompanije implementiraju arhitekturu. Arhitekture ovih mikrokontrolera su tipične za RISC (tip procesora sa smanjenim skupom naredbi) pristup. • Princeton tip (tzv. von Neumann) - programska memorija i memorija za podatke dele isti adresni prostor. To znači da se instrukcioni kôd može izvršavati kako iz programske tako i iz memorije za podatke. Poznati proizvođači ovih tipova mikrokontrolera su Intel, Atmel, Motorola i dr. Ključna osobina ovih proizvoda je povećan broj instrukcija i adresnih načina rada koji u kombinaciji sa relokatibilnim softverskim magacinom (stack) omogućavaju efikasno korišćenje programskog jezika visokog nivoa C. Arhitekture ovih mikrokontrolera su tipične za CISC (tip procesora sa velikim skupom naredbi) pristup.
STRUKTURA MIKROKONTROLERA • Blok dijagram mikrokontrolera prikazan je na slici 2.4. Mikrokontroler je u suštini pravi ''mali računar'' na čipu, koji sadrzi sve gradivne blokove CPU-a (ALU, PC, SP, registre i dr.), ali takođe i RAM, ROM, paralelne i serijske U/I portove, generatore takta i dr. • Kao i mikroprocesor, i 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. • Mikrokontroler koristi ograničen skup jedno ili dvo-bajtnih instrukcija koje se koriste za pribavljanje programa i podataka iz interne memorije. Veliki broj ulazno-izlaznih pinova mikrokontrolera se može koristiti za više namena, što se softverski definiše. • Mikrokontroler komunicira sa spoljnim svetom (pribavlja i predaje podatke) preko svojih pinova, pri čemu je arihitektura i skup instrukcija projektovan za manipulisanje sa podacima obima bajt ili bit.
STRUKTURA MIKROKONTROLERA Blok šema mikrokontrolera
MIKROKONTROLER AT89S8253 • Atmelov mikrokontroler AT89S8253 je 8-bitni mikrokontroler izrađen u CMOS tehnologiji i optimizovan za upravljačke aplikacije. Kompatibilan je sa MCS-51 serijom mikrokontrolera. Set instrukcija je kompatibilan sa industrijskim standardom 80C51. • KARAKTERISTIKE MIKROKONTROLERA AT89S8253: • 256 x 8-bit-ni unutrasnji ram • 32 I/O linije za programiranje • 16-bitna clock/timer brojaca • 9 generatora prekida • Poboljsani UART serijski port sa centriranjem detekcije • Greske i automatskim prepoznavanjem adrese • Male snage napajanja • Uspostavljanje prekida u niskom rezimu • Programilni tajmeri • Dvostruki pokazivac podataka • Iskljucivanje pomocu znaka(POWER OFF) • Fleksibilni ISP programator(byte i page mode) • Page mode:64 byte/page za DATA memoriju • 4-nivo poboljsani kontrolor prekida • Programabilna x2 clock opcije • Unutrasnji POWER-ON reset • 42-pin PDIP model kucista za redukovanje EMS emisije • Zeleni(Pb/Holide-free) opcija kucista
MIKROKONTROLER AT89S8253 OPIS PINOVA Raspored pinova kod mikrokontrolera AT89S8253
MIKROKONTROLER AT89S8253 • VCC - napajanje (za sva kucista osim za 42 PDIP) • GND - masa(za sva kućista osim za 42 PDIP,za 42 PDIP masa spaja logičko jezgro i ugradjene data/program memorije) • VDD - napon napajanja za 42PDIP koji spaja logičko jezgro i ugradjenu program/data memoriju • PORT 0 - je 8-bitni I/O port,a takodje i izlazni port. Svaki pin može pobuditi 8 TTL ulaza.Kada je 1 s upisana na port 0 može biti visoko impedansni ulaz. Ovaj pin se može koristiti kao multiplekser ali i kao prenosni put niske naredbe address-data u toku prihvatanja spoljašnjih programa i memorijskih podataka. U ovom modu Port 0 ima unutrasnje neprekidno napajanje. PORT 0 takodje prihvata kodove u toku programiranja FLASH memorije i izlazne kodove u toku verifikacije programa • PORT 1 - Ovaj port je 8-bitni obostrano prihvatni I/O port sa neprekidnim unutrašnjim napajanjem. Izlazne posebne memorijske lokacije PORT 1 mogu pobuditi 4 TTL logicka kola. Kada je 1s upisana na Port 1, pinovi su na visokom nivou uz pomoć unutrasnjeg neprekidnog napajanja i mogu se koristiti kao ulazi. Početna ulazna struja je Iil=150µA zbog unutrašnjeg neprekidnog napajanja. Neki PORT 1 pinovi mogu imati i druge dodatne funkcije P.1.0 i P.1.1 mogu služiti kao 2 spoljašnja TIMER /COUNTER ulaza (P 1.0/T2) i 2. aktivni ulaz (P 1.1/T2 EX) CLOCK/COUNTER respektivno. Osim toga P 1.4,P 1.5, P 1.6, P 1.7 mogu služiti za pomoćne portove. DATA INPUT/OUTPUT i CLOCK INPUT/OUTPUT pinovi su dati u tabeli:
MIKROKONTROLER AT89S8253 • PORT 2 je 8 bitni dvosmerni I/O port sa unutrašnjim neprestanim napajanjem. Izlazne pomoćne memorije PORT-a 2 mogu prihvatiti/napajati 6 TTL ulaza. Kada je 1s na ulazu Porta 2 on je na visokom nivou uz pomoć neprekidnog unutrašnjeg napajanja i mogu se koristiti kao ulazi. Kod ovih ulaza tipična ulazna stuja je 150 µA zbog slabog unutrašnjeg neprekidnog napajanja. PORT 2 emituje adrese visokih naredbi u toku donošenja podataka od spoljasnje memorije i u toku prihvatanja podataka iz spoljašnje memorije koje koriste 16-bitne adrese(MOVX I DPTR). U ovom slucaju PORT2 kada emituje 1s koristi jako unutrašnje napajanje . U toku prihvatanja podataka iz spoljašnje memorije PORT 2 korist 8 bitne adrese (MOVX I RI). PORT2 takodje ima i specijalne funkcije registra. PORT 2 takodje prihvata adresne bitove visokog zahteva i neke kontrolne signale u toku programiranja i potvrde FLASH memorije • PORT 3 je 8 bitni dvosmerni I/O port sa neprekidnim unutrašnjim napajanjem. PORT 3 pomoćne memorije mogu pobuditi 6 TTL ulaza. Kada se upisuju podaci na PORT 3, ovaj PORT dosta energije vuče od unutrašnjeg neprekidnog napajanja i tada se mogu koristiti ulazi. Kod ovih ulaza uz pomoc spoljašnjeg napajanja struja je tipicno 150 µA zbog slabog unutrašnjeg napajanja. PORT 3 takodje prihvata i pojedine kontrolne signale za programiranje FLASH memorije. PORT 3 takodje predstavlja servis specijalnih promena osobina.
MIKROKONTROLER AT89S8253 • PROGRAMSKA MEMORIJA Svi Atmel-ovi flash mikrokontroleri imaju odvojene adresne prostore za programsku i memoriju podataka. Ovo logičko odvajanje omogućava da se memorija podataka adresira sa 8-bitnim adresama, koje mogu brže da se memorišu. Pored toga, 16-bitne memorijske adre-se mogu da se generišu preko DPTR registra. Moguće samo čitanje programske memorije, koja može da se direktno adresira do 64 Kb. Memorija podataka zauzima odvojeni adresni prostor od programske memorije. Do 64Kb spoljašnje memorije može da se direktno adresira u spoljašnjem memorijskom prostoru podataka. Mikroprocesor generiše signale čitanja (RD) i upisa (WR), tokom pri-stupa spoljašnjoj memoriji podataka. Spoljašnja programska memorija i spoljašnja memorija podataka mogu da se kombinuju primenom RD i PSEN signala na ulazu I (AND) kola.
MIKROKONTROLER AT89S8253 • MEMORIJA PODATAKA Može se dodeliti do 64 Kb spoljašnje memorije podataka. Adrese spoljašnje memorije podataka mogu da budu širine 1 ili 2 bajta. Jednobajtne adrese često se koriste u vezi sa jednim ili više drugih ulazno/izlaznih linija za straničenje RAM-a. Dvo-bajtne adrese se takođe mogu koristiti, i u tom slučaju bajt više adrese se pojavljuje na Portu 2.
MIKROKONTROLER AT89S8253 Struktura programske i memorije podataka
MIKROKONTROLER AT89S8253 • TAKTOVANJE MIKROPROCESORA Svi Atmelovi flash mikrokontroleri poseduju ugrađeni oscilator, koji se može da se koristi kao izvor za njegov mikroprocesor. Da bi se koristio ugrađeni oscilator, treba povezati kristalni ili keramički rezonator između pinova XTAL1 i XTAL2 mikrokontrolera, i da se povežu kondenzatori prema masi • BROJAČI/TAJMERI Mikrokontroler AT89S8253 ima tri šesnaestobitna tajmersko-brojačka registra. Tajmeri se mogu kofigurisati da rade u četiri moda rada, izuzetak je tajmer 2 koji može da radi u tri moda rada. Kada rade kao brojači, sadržaj tajmerskog registra se uvećava za jedan na svaku silaznu ivicu odgovarajućeg ulaza mikrokontrolera (T0 za tajmer 0, T1 za tajmer 1 i T2 za tajmer 2). Maksimalna frekvencija ulaznog signala koju brojač može da prati je 24 puta manja od radnog takta mikrokontrolera. Kada rade kao tajmeri sadržaji tajmerskih registara se uvećava za jedan u svakom mašinskom ciklusu. Jedan mašinski ciklus traje 12 perioda radnog takta mikrokontrolera. Npr , ako je radni takt 24MHz, registri se uvećavaju svakih 500 ns.
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
A/D KONVERTOR AD9243AS • Analogno-digitalna konverzija predstavlja generisanje digitalnog kodovanog broja koji odgovara analognom ulaznom signalu. Elektronsko kolo koje vrši konverziju naziva se analogno-digitalni konvertor (A/D konvertor ili ADK). • Kod savremenih tehnika merenja, dominantnu grupu instrumenata i merne opreme, zbog dobrih performansi i niže cene, čine digitalni merni instrumenti. Značaj A/D konvertor je u tome što su veličine koje je potrebno dovesti na ulaze u merni sistem u velikom broju slučajeva, po svojoj prirodi analogne, pa ih je potrebno prevesti u digitalni oblik.
A/D KONVERTOR AD9243AS • Ako se naponi Vi rasporede ekvidistantno unutar naponskog opsega od 0 do Vps, na osnovu izlaza komparatora ki može da se odredi u kom se naponskom opsegu nalazi ulazni signal Vul. Digitalnu informaciju sa komparatora koder koduje u digitalni broj izabranog binarnog brojnog sistema. Principijelna šema A/D konvertora
A/D KONVERTOR AD9243AS • Na Slici je prikazana idealna karakteristika prenosa A/D konvertora u slučaju da postoji 8 nivoa komparacije ulaznog napona. Karakteristika prenosa idealnog A/D konvertora
A/D KONVERTOR AD9243AS • 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. • Pošto je izlazna informacija A/D konvertora digitalni broj, dinamičke karakteristike 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. • 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: • 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.
A/D KONVERTOR AD9243AS • AD9243 je 14-bitni analogo-digitalni konvertor. Predstavlja kombinaciju niske cene, velike brzine CMOS procesa i moderne arhitekture. On je potpuno monolitan ADC čip, visokih performansi, niskog šuma sample-and-hold pojačavača i programirajuće voltaže. • Ulaz je vrlo prilagodljiv, omogućava lak priključak za projektovanje, komunikaciju i akviziciju podataka. Diferencijalna ulazna struktura omogućava single-ended i diferencijalni mod. Jedan clock ulaz se koristi za kontrolu svih unutrašnjih konverzijskih ciklusa. Izlazni digitalni podaci se prikazuju u binarnom sistemu. • Karakteristike: • Niska snaga i jednosmerno napajanje • Odlične DC karakteristike u celom radnom temperaturnom opsegu • Odlične AC karakteristike i nizak šum • Prilagodljiv analogni ulazni opseg • Prilagodljiv digitalni izlaz
A/D KONVERTOR AD9243AS • AD9243 koristi četvorostepenu pipeline strukturu, koja omogućava veći protok brzine po ceni kašnjenja. To znači da dok konvertor hvata novi ulazni uzorak u svakom clock ciklusu, potrebno je tri clock ciklusa da se izvrši konverzija i da se pojavi na izlazu. • AD9243 koristi obe ivice takta u njegovom unutrašnjem vremenskom podešavanju kola. A/D uzorci analognog ulaza uzimaju se pri uzlaznoj ivici taktnog ulaza. Za vreme trajanja niskog clocka, između opadajuće i uzlazne ivice clocka,ulaz SHA je u sample modu; za vreme trajanja visokog clocka nalazi se u hold modu.
A/D KONVERTOR AD9243AS • AD9243 ima visoko fleksibilnu ulaznu strukturu koja omogućava priključak za single-ended ili diferencijalni mod. DC coupled single-ended ulaz može biti pogodan za akviziciju podataka i projektovanja aplikacija. Mnogo komunikacijskih programa koji zahtevaju DC coupled ulaz za odgovarajuću demodulaciju imaju prednosti odličnih single-ended distorzionih performansi AD9243. • Coupled transformator diferencijalnog ulaza treba uzeti za najveći broj spektarski baziranih programa, koje dozvoljavju ac coupling. DC coupled diferencijalni mod omogućava i povećanje distorzije i šuma u najvećem delu ulaznog opsega. AD9243 može biti konfigurisan za opseg od 5V koristeći operacioni sa +5V ili ±5V.
A/D KONVERTOR AD9243AS • AD9243 može biti konfigurisan za single-ended operacije koristeći DC ili AC coupling. U oba slučaja ulaz u A/D mora biti doveden iz operacionog pojačavača koji neće pokvariti A/D karakteristike. • Oba i DC i AC coupling omogućava neophodne funkcije, ali svaki metod daje različitu realizaciju sklopa koji može uticati na karakteristike i projektovani system. • Mnogo novih operacionih pojačavača sa visokim performansama rade na ±5V i imaju ograničenja sa ulazno/izlazim rasponom. Ulazni opseg AD9243 treba biti osetljiv na tehničke karakteristike operacionog pojačavača da bi se izbeglo odsecanje signala. • U nekim programima je korisno koristiti operacionog pojačavače sa jednostrukim napajanjem +5V to će bitno ograničiti njegov raspon na izlazu u opsegu granica napajanja. U programima koji zahtevaju veći single-ended ulazni opseg od (0V-5V) kod AD9243, operacionog pojačavač će zahtevati veće napajanje.
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
KEIL Uvision3 • Programiranje mikrokontrolera u asembleru predstavlja optimalan nacin programiranja sa stanovišta iskorišćenja ograničenih resursa, kao na primer, programske memorije i dr. S druge strane za složenije projekte program napisan u asembleru može biti komplikovan za čitanje i razumevanje. Zato se danas mikrokontroleri programiraju u višim programskim jezicima, a najpoznatiji i najčešce korišćeni je programski jezik C.
KEIL Uvision3 • uVision3 sadrži: - Build Mode: Omogućava vam prevođenje aplikacija i datoteka i generisanje izvršnog programa. - Debug Mode: Nudi vam program za pronalaženje grešaka na vaš zahtev.
KEIL Uvision3 • Project Workspace (radni prostor projekta) vam daje pristup: -Datoteci i grupi u okviru projekta. -CPU registrima -Alatima-Tekstualnim predlozima za najčešće korišćene blokove teksta. • Output Window(izlazni prozor) daje poruke o grešci i brz pristup • Memory Window(memorijski prozor) daje pristup memoriji • Watch & Call Stack prozor vam omogućava pregled i izmenu programa i prikazuje trenutnu funkciju poziva stabla. • Radni prozor se koristi za uređivanje datoteka,Peripheral Dialog će vam pomoći da proverite status periferija.
KEIL Uvision3 • uVision3 IDEuVision3 IDE kombinuje projektni menadžment,interaktivni editor za ispravljanje grešaka,mogućnost čitanja i on-line pomoć. uVision3 automatski kompajlira,prikuplja i povezuje aplikacije. • C & prevodilac makroasemblerSource datoteke stvorene od strane uVision3 i IDE se propušta delje ka višem programskom jeziku ili kompajleru. Asemblerski prevodilac na osnovu izvorne datoteke stvara ciljnu datoteku. • Manager Menager vam omogućava da izradite dokumentaciju iz datoteka kreirane od strane prevodioca i asemblera. Dokumentacija je posebno formirana. Kada se pristupi povezivanju biblioteka, koriste se samo oni moduli koji su potrebni za stvaranje programa.
KEIL Uvision3 • Linker/ Locator Linker / Locator stvara izvršnu datoteku programa pomoću objekt modula i one koju su stvarali prevodilac i asembler. Izvršna datoteka programa (koja se naziva i apsolutni objekt modul) ne sadrži prenosivi kod ili podatak. Kod i podaci imaju svoja memorijska mesta. • Debugger • Program za pronalaženje grešaka je prvenstveno brz i pouzdan program. Program za pronalaženje grešaka uključuje high-speed simulator da simulira jedan mali deo na čipu, uključujući i spoljne uređaje. Atributi u čipu koji koristite automatski se konfigurišu kada odaberete uređaj iz baze podataka uređaja. uVision3 program za pronalaženje grešaka nudi nekoliko načina da testirate svoj program na pravi hardver.
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
PROGRAMIRANJEMIKROKONTROLERA Algoritam glavnog programa Algoritam potprograma WAIT
PROGRAMIRANJEMIKROKONTROLERA Algoritam potprograma XMIT Algoritam potprograma T0_INT
PROGRAMIRANJEMIKROKONTROLERA Algoritam potprograma TEST_T2 Algoritam potprograma TEST_T1
PROGRAMIRANJEMIKROKONTROLERA Algoritam potprograma SERINT Algoritam potprograma KEYSCAN
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA
Mictosoft .NET Framework • Pri izradi programa „Merenja“ korišćene su sledeće softverske tehnologije: • Mictosoft .NET Framework Arhitektura .NET-a Osnovu .NET-a predstavlja svakako .NET Framework. Najjednostavnije rečeno, to je sistem koji nadograđuje mogućnosti samog operativnog sistema. Radi se o posebnoj infrastrukturi koja programerima nudi gotova rešenja i funkcionalnosti da bi ubrzala i pojednostavila razvoj aplikacija svih vrsta i oblika. Aplikacije za .NET platformu mogu se pisati u raznim programskim jezicima, gotovo svim poznatijim. Međutim, da bi Common Language Runtime (CLR) prepoznao naredbe – preko kompajlera se naredbe prevode u njemu jedini razumljivi jezik nazvan Microsoft Intermediate Language (sraćeno MSIL), temeljen na pravilima koja se nazivaju Common Language Specifications (CLS). U .NET Frameworku postoje setovi klasa koje omogućavaju brzo i jednostavno korištenje mogućnosti koje CLR nudi.
SharpDevelop • SharpDevelop C# je objektno-orijentisani programski jezik koji je razvio Microsoft u okviru svoje Microsoft .NET inicijative. C# ima proceduralnu, objektno-orijentiranu sintaksu, zasnovanu većinom na C++-u, ali takođe uključuje i neke aspekte iz drugih jezika, kao što su Delphi, Visual Basic, Java, sa posebnim fokusom na pojednostavljenje.
PC PROGRAM “MERENJA” • „Merenja“ je klijentski program za tabelarni prikaz merenja sa AD konvertora. Povezivanje sa AD konvertorom je realizovano preko serijskog porta (RS232). Program je napisan u programskom jeziku C# (CSharp). • Nakon startovana programa, pojavljuje se forma koja se sastoji iz tri dela: • Podaci – sadrži tabelu sa kolonama za smeštaj merenja u heksadekadnom i dekadnom obliku, kao i preračunatu vrednost u voltima, dok je ispod tabele indikator koji jednu sekundu svetli zeleno u slučaju prijema merenja • Podesavanja – sadrži listu za izbor serijskog porta preko koga se vrši povezivanje sa AD konvertorom i polje za unos koeficijenta za preračunavanje merenja u volte • Poruke – prikaz komentara i prijemu podataka • Povezivanje sa AD konvertorom počinje izborom serijskog porta, dok je koeficijenat podrazumevano postavljen na 0.0003 (da bi vrednosti sa AD konvertora bile prikazane u opsegu 0 - 5V). Izmene u podešavanjima neće uticati na trenutno prikazane podatke, već na buduću komunikaciju. • Izlazak iz programa je preko sistemskog tastera u gornjem desnom uglu ekrana (crveni taster sa oznakom „X“).
PC PROGRAM “MERENJA” Primer izmerenog napona u PC Programu “Merenja”
SADRŽAJ PREZENTACIJE • PROJEKTNI ZADATAK • PRENOS PODATAKA • MIKROKONTROLER AT89S8253 • A/D KONVERTOR AD9243AS • IZGLED I ŠEME UREDJAJA • KEIL Uvision3 • PROGRAMIRANJE MIKROKONTROLERA • SOFTWARE • LABORATORIJSKA VEŽBA • LITERATURA