61
Univerzitet u Nišu  Elektronski fa kultet  Katedra za elektroniku  predmet :Mikropr ocesorski sistemi  Profesor-Mentor:  prof.dr Mile Stoj ev S S E E M M I I N N A A R R S S K K I I  R R A A D D  FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA REALIZOVAN POMOU MIKROKONTROLERA I D-LATCH-a kandidati :Boškovi # Milan br.ind:11042  Aleksandar Petrov ic br.ind:10323  NIŠ, 2007

Funkcijski Generator

Embed Size (px)

DESCRIPTION

FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA REALIZOVAN POMOĆU MIKROKONTROLERA I D-LATCH-a.

Citation preview

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 1/61

Univerzitet u Nišu

 Elektronski fakultet 

 Katedra za elektroniku

 predmet :Mikroprocesorski sistemi

 Profesor-Mentor: prof.dr Mile Stojč ev 

SSEEMMIINNAAR R SSK K II R R AADD 

FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKAREALIZOVAN POMOĆU MIKROKONTROLERA I D-LATCH-a

kandidati :Bošković Milan br.ind:11042

 Aleksandar Petrovic br.ind:10323

 NIŠ, 2007

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 2/61

 - 2 -

SADRŽAJ

1. Sadržaj …………………………………………………………………….………….2

2. Opšti uvod …………………………………………………………………………......33. D- leč i D/A konvertor realizovan sa 2R-R otpornom mrežom ......................................53.1 D/A konvertor sa otpornim mrežama (sabiranje struja) ...........................................9

4. Uvod mikrokontroler ..................................................................................................145. Opis i analiza mikrokontrolera AT 89S8253 …………………………..…………. 15

5.1 O mikrokontroleru (blok dijagram, struktura čipa) ...............................................165.2 Opis pinova .......................................................................................................... 185.3 Tajmeri i brojači ................................................................................................... 22

5.3.1. Kontrola rada tajmera ................................................................................ 235.3.2. Tajmer 2 ......................................................................................................24

5.3.2.1. Korišćenje Tajmera 2 za generisanje brzine bauda ....................... .285.3.2.2 Korišćenje Tajmera 2 za programiranje izlaznog takta (clock-out). 29

6. Sistem prekida mikrokontrolera ............................................................................ .316.1. Izvori prekida .................................................................................................... 316.2. Maskiranje prekida ............................................................................................ 32

7. Napajanje .................................................................................................................... 348. Asembler .................................................................................................................... 389. Tipični aplikacioni programi .................................................................................. . 43

9.1 Softver (MEC UNP2 univerzalni programator) ................................................. 43

10. Zadaci za studente ................................................................................................... 5111. Zaključak ..………………………………………………….…………………..... .5912. Literatura ………………………………………………...……...…………….... . 6013. Dodaci …………………………………………………………………………….. 61 

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 3/61

 - 3 -

2. OPŠTI UVOD

Cilj ovog projekta je da se generiše signal proizvoljnog talasnog oblika. To se

može ostvariti na sledeći način. Naša vežba se sastoji iz dva elementarna bloka: prvi blok čini mikrokontroler firme ATMEL AT89S8253 sa celokupnom svojom strukturom kojaće biti obrađena i prikazana u narednim poglavljima, dok drugi blok  čini D-leč firmeTOSHIBA TC74HC373 sa D/A konvertorom realizovanim sa 2R-R vezom.Komunikacija između ova dva bloka se ostvaruje preko dva porta koji su 8-bitni koji su povezani sa krimp konektorima koji su takođ je 8-bitni (slika 1). Port 1.0-1.7 se koristi zaslanje 8-bitne digitalne reči na osnovu koje se generiše signal proizvoljnog talasnogoblika, dok se kod porta 2 koristi samo 2.0 za slanje signala dozvole LE (latch enableinput). Port za OE (output enable) nam nije poteban jer smo ga uzemljili na samoj pločići. Na koji način i za koje vrednosti sinala LE se šalje digitalna reč na ulaz D-leča će bitikasnije prikazano u tabeli stanja.

Sl. 1. Blok šema

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 4/61

 - 4 -

Celokupna šema našeg generatora proizvoljnih talasnih oblika je data na slici 2.

2R

2R

2R

2R

2R

2R

2R

2R

2R

R

R

R

R

R

R

R

D/A konvertor 

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

Mikrokontroler 

 AT89S8253

D7

D6

D0

D1

D2

D3

D4

D5

LEP2.0

P1.0

P1.7

P1.6

P1.5

P1.4

P1.3

P1.2

P1.1

D Leč

TC74HC373AP

 Sl. 2. Blok šema sa realizacijom D/A konvertora

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 5/61

 - 5 -

3.D-LE Č I D/A KONVERTOR REALIZOVAN SA 2R-R OTPORNOM  MREŽOM:

 D-LE Č :

D-leč TC74HC373 je brzi CMOS OCTAL LEČ sa tri nivoa izlaza izrađenih odsilikonskog gejta C2MOS tehnologije.

Cilj je postici veliku brzinu operativnosti ekvivalentnu LSTTL vremenu podržanuod strane CMOS sa smanjenom portošnjom.

Ovi 8-bitni D-tipa lečovi su kontrolisani od stane LE signala dozvole na ulazu, isignala dozvole na izlazi OE.

Kada je ulaz OE na visoko, oba izlaza su u stanju visoke inpedanse.Svi ulazi su opremljeni sa zaštitnim kolom zbog statičkog pražnjenja ili

transcidentnog napona.Speifikacija leča TC74HC373 je:

Ø   Najveca brzina...................................

Ø  Režim smanjenje potrošnje:..............

Ø  Osetljivost na buku:...........................

Ø  Simetrična izlazna inpedansa:............

Ø  Izlazna kapacitivnost:.........................

Ø  Ujednačeno propagaciono kašnjenje..Ø  Široki opseg operativnog napona.......Ø  Pinovi i funcionalna kompatibilnost odgovaraju 74LS7373/533

Tabela stanja:

Ulazi Izlazi

OE LE D Q

H X X ZL L X Qn L H L LL H  H H

X: ne definisano stanjeZ: visoka impeadanaQn: Q izlaz je lečovan u trenutku kada kada je LE kada uzima vrednost niskog

nivoa .

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 6/61

 - 6 -

Razlikujemo nekoliko tipova kućišta koje se koristi da bi se u njega upakovaoovaj D-leč TC74HC373. Ona se koriste u zavisnosti od tipa pločice koja se koristi ili odsame tehnologije izrade pločice. One se razlikuju po obliku, težini i po tome da li koriste podnožje ili ne (za SMT tehnologiju). Mi koristimo leč sa kućištem (DIP 20PIN)

 Najčešce korišcenji tipovi kucista su:

 DIP 20PIN :

 SOP 20PIN:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 7/61

 - 7 -

 SOP 20PIN:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 8/61

 - 8 -

 RASPORED PINOVA:

 IEC logiški simboli:

 Sistemski dijagram D-leč a:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 9/61

 - 9 -

3.1 D/A konvertor realozovan mrežom 2R-R :

D/A konvertori služe za pretvaranje digitalnih u analogne signale. Oni suistovremeno i digitalna i analogna kola, pošto imaju na svojim ulazima i izlazima idigitalne i analogne siganale. Ovi pretvarači se izrađuju kao posebna integralna kola, a

mogu da se ostvare i od diskretnih komponenti ili upotrebom drugih integrisanih kola.Digitalno-analogna konverzija je ustvari pretvaranje binarno zapisane brojnevrednosti sa n bita:

u analogni napon čija je vrednost Va u voltima proporcionalno digitalnojvrednosti Dn:

D/A konvertori se prave sabiranjem struja tako da su doprinosi svake strujesrazmerni težini binarnih cifara zapisane digitalne vrednosti. Ako je binarna cifra nula,struja koja odgovara toj binarnoj cifri se množi sa nulom. Ako je binarna cifra L1,

odgovarajuća struja se množi sa jedan.D/A konvertor se može praviti i pomoću impulsno širinske modulacije tako da

što je trajanje impulsa srazmerno digitalnom broju Dn, a trajanje periode srazmernomaksimalnoj vrednosti digitalnog broja (Dn) max.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 10/61

 - 10 -

 D/A konvertor sa otpornim mrežama(sabiranje struja):

D/A kovertor koji sabira struje sadrži izvor referentnog napona Vr ili Vout, prekidače koji se postavljaju u jedan od od dva moguća položaja pod dejstvom binarne

cifre bi i otpornu mrežu koja provodi i sabira konponente struja koje su proporcionalne satežinama binarnih cifara .

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 11/61

 - 11 -

Primenom superpozicije, izračunava se napon tevenenovog generatora. Doprinos bita „bi „ tevenonovog generatora je :

gde su:

 Napon ekvivalentnog generatora je:

Ako su izabrani otpornici u mreži sa odnosom težina binarnih cifara:

onda je:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 12/61

 - 12 -

 Napon na potrošaču:

Opisana težinska otporna mreža ima nedostatak u velikom rasponu upotrebljenihvrednosti: za n bita , odnos je 2n-1. Pored toga, promene vrednosti otpornosti (tolerancija)sa različitim doprinosima na vrednost izlaznog napona.

Prethodni nedostaci se odklanjaju primenom lestvičaste otporne mreže.

 Lestvi č asta otporna mreža:

Lestvičasta otporna mreža ima osobinu da je dinamička otpornost između svakog

čvora, gde su R i 2R otpornici (slika 3.)

Sl. 3. Lestvič asta otporna mreža za n-bita

Ovaj rezultat važi za lestvičastu otpornu mrežu sa proizvoljnim briojem bita Na osnovu predhodnog rezultata sledi da se svaki napon:

 biVr 

 polovi kada se prostire po čvorovima R-2R mreže ako je Rp=∞ 

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 13/61

 - 13 -

Sledi da napon b0Vr daje doprinos tevenenovom generatoru od

Generalno, napon biVr doprinosi

tevenenovom generatoru vt .

Primenom superpozicije, sledi:

 Napon na potrošaču je:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 14/61

 - 14 -

4.UVOD MIKROKONTROLER

Današnji život je, nezamisliv bez različitih vidova komunikacije, informisanja,kontrole i dr. Sve više procesi koji mogu da se kontrolišu elektronskim putem, se time i

 podvrgavaju. Počev od medicine gde se kod dijagnostike bolesti pacijenata sve češćekoriste elektronski uređaji koji različite vidove energije koriste za pobuđivanje elektrosenzora koji pobuđuju pokazivače za prikazivanje tih kontrolnih pregleda. Ne možemo dane spomenemo automobilsku industriju gde se pocesi starta, upravljanja, kontrole i drugih procesa takođe sprovode elekronskim uređajima. Uzaludno je pričati o tome koliko jeelektronika prodrla u oblast života kad je u pitanju televizija, radio, telefonija,informacione tehnologije, internet, satelitske komunikacije i dr. Podsetiću samo naupotrebu elektronskih uređaja u vojnoj, avionskoj, telekomunikacionoj i drugimoblastima industrije. U novije vreme sve češće se čovek kao aktivni subjekat u izvršenjumnogih procesa, zapostavlja a ostavlja mesto da sami elektronski uređaji upravljaju ikontrolišu neke procese. Kao primer toga u vojnoj avijaciji se sve cešće upotrebljavaju

 bespilotne letelice koje same kontrolišu, snimaju, izvršavaju zadatke tamo gde je to potrebno.

Sve ovo o čemu smo govorili ne može se zamisliti bez sistema kao sto sumemorijski prostori, procesori, mikrokontroleri, displeji, senzori i dr. Sa razvojemmikrokontrolera u prošlosti povećavao se broj procesa koji su mogli da se kontrolišuovim putem. Mikrokontroleri su relativno spori ali sa aspekta iskorišćenja silicijuma po površini-veoma-efikasni procesori, uglavnom namenjeni za upravljačko-intenzivneaplikacije. Karakteriše ih mikroprogramska CISC bazirana arhitektura, što znači da je broj taktnih intervala za izvršenje različitih tipova instrukcija u velikoj meri promenljiv.Moć izračunavanja kao i broj memorijskih resursa je veoma ograničen, a obim reči staze- podataka relativno mali (obično 8 ili 16 bitova). Sa druge strane, kompleksnost skupa

instrukcija pruža odgovarajući programski interfejs, uključujući instrukcije za množenje ideljenje kao i veći broj memorijsko adresnih načina rada. Kao rezultat se dobija veomakompaktan kôd (programi su relativno mali).

S obzirom da su mikrokontroleri namenjeni za upravljačko-orijentisaniaplikacioni domen, oni poseduju bogat skup instrukcija za manipulisanje podacima nanivou-bita, kao i periferijskim komponentama kakvi su tajmeri ili serijski U/I portovi.

Veoma često jednostavni procesori koji su se ranije koristili kao CPU-ovi uračunarskim sistemima (kakvi su, recimo procesori iz familije Intel 8051, Motorola 6502,6811, i dr., koji su bili popularni kao CPU-ovi u kućnim računarima) danas se ponovokoriste u nešto izmenjenoj formi kao mikrokontroleri kod embedded sistema.

Mikrokontrolere delimo na 4-, 8-, 16-, i 32-bitne. Ilustracije radi, 4-bitni

mikrokontroleri uglavnom se koriste u automatima za igru, 8-bitni kao programatori u vešmašinama, 16-bitne srećemo u sistemima za upravljanje klimom u kolima, a 32-bitni se primenjuju da obave složene telekomunikacione funkcije u mobilnim bežičnimuredjajima.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 15/61

 - 15 -

5.OPIS I ANALIZA MIKROKONTROLERA AT89S8253

- Kompatibilan je sa Microsoft-51 procesorom- 12KB fleš memorija

- SPI serijski unos za učitavanje programa- 10 000 ciklusa upis/brisanje- 2KB EEPROM memorija- 100 000 ciklusa upis/brisanje (64-bajtna korisnička matrica)- Napon napajanja od 2.7V do 5.5 V- Frekvencija od 0 do 24 MHz- Memorijsko zaključavanje u 3 nivoa- 256 x 8-bitni unutrašnji RAM- 32 I/O linije za programiranje- Tri 16-bitna Tajmer/Brojač - 9 generatora prekida

- Poboljšani UART serijski port sa centriranjem detekcije greške i automatskim prepoznavanjem adrese- Male snage napajanja- Uspostavljanje prekida u niskom režimu rada- Programabilni tajmeri- Dvostruki pokazivač podataka- Isključivanje pomoću znaka (Power-off Flag)- Fleksibilni ISP programator (byte i page modovi)- Page mode: 64 byte/page za kodnu memoriju, 32 byte/page za memoriju podataka- 4-nivo poboljšani kontrolor prekida- Programabilna x2 clock opcije

- Unutrašnji Power-on Reset- 42-pin PDIP model kućišta za redukovanje EMS emisije- Zeleni (Pb/Holide-free) opcija kućišta

AT89S8253 je processor visokih performansi, male potrošnje snage. To je CMOS8-bitni mikrokontroler sa 12 KB fleš memorijom i 2 KB EEPROM memorijom.Mikrokontroler je napravljena u Atmel korporaciji i kompatibilna je sa nadaleko poznatim i popularnim intelovom MCS-51 familijom mikrokontrolera (8052).Reprogramiranje memorije je moguće pomoću SPI serijskog ulaza ili pomoćukonvencionalnog programatora memorija. Kombinovanjem različitih 8-bitnih CPU-a saugrađenom programibilnom fleš memorijom na monolitnom čipu.

FLASH I EEPROM se mogu reprogramirati u sistemu preko SPI-porta. Atmel AT89S8253 je fleksibilan procesor koji je zahvaljujući niskoj ceni našaoveliku primenu kod mnogih kontrolnih aplikacija i programa.

AT89S8253 uključuje standardne osobine poput 12 KB fleš memorije, 2 KBEEPROM, 256 B RAM memorije, 32 I/O linije, programibilni clock/tajmer, dvostruki pokazivač, tri 16 bit-na clock/counter, 6 vektorske arhitekture prekida sa 2 nivoa, potpuniserijski ulaz, eksterni sopstveni oscilator i električno kolo sata. U stvari AT89S8253 (uz

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 16/61

 - 16 -

 pomoć statičke logike) se koristi za operacije niskih frekvencija, potpomognut sa 2softverska moda. IDLE mod zaustavlja CPU dok dopuštajući RAM, clock/counter,serijski port i sistem prekida se koriste za nastavak funkcionisanja. Niski mod čuva RAMsadržaj ali i zamrzava oscilator isključujući sve ostale funkcije u kolu sve dok naiđesledeći spoljašnji prekid ili hardverski reset. FLASH memorija se moze menjati pomoću

serijskog SPI pristupa. Zadržavanje Reset opcije SPI omogućava da memorija budeupisana ili pročitana od stane bita koji su bili aktivni.

5.1 Blok dijagram AT89S53 jezgra

Sl.5.1. Struktura č ipa mikrokontrolera AT89S53

Ovako sintetizovan mikrokontroler umnogome olakšava posao projektantahardvera, smanjuje ukupno hardversko okruženje i broj spoljašnjih veza i na taj način povećava pouzdanost sistema. Na slici 5.2. prikazana je detaljnija arhitekturamikrokontrolera AT89S53. Ovde se vide komponente kao što su aritmetičko-logička jedinica (ALU) sa parom registara (TMP1, TMP2) za privremeno upisivanje podataka,akumulator (ACC) sa pomoćnim registrom B, statusni registar (PSW), registar naredbi sadekoderom, programski brojač (PC) i registar za inkrementiranje (povećanje za 1) programskog brojaća (PC-incrementer).

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 17/61

 - 17 -

Sl.5.2 Detaljna struktura mikrokontrolera AT89S53 

 Pomoćni registar B, koji se naziva multiplikativnim registrom, s1uži za smeštanjedrugog operanda za aritmetičke operacije množenja i deljenja Posle izvršene operacijemnoženja iii deljenja u njemu se nalazi viši bajt rezultata množenja ili ostatak deljenja,respektivno Zajedno sa ACC pomoćni registar B čini registarski par.Pokazivač steka (SP-Stack Pointer ) s1uži za adresiranje vrha (najviše lokacije) stek memorije Ovaj registar se inkrementira prilikom upisivanja podataka u stek a

dekrementira prilikom čitanja podataka iz ove memorije. DPTR praktično sadrži dva registra: DPH(Data pointer High) i DPL(Data pointer Low). Njegov zadatak je da drži 16-bitnu adresu. Može biti iskorišćen kao 16-bitniregistar i kao dva nezavisna 8-bitna registra. Obično se koristi za privremeno pamćenje podataka. 

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 18/61

 - 18 -

Mikrokontroler AT89S53 poseduje 4 prihvatna registra (LATCH-a) za čuvanjestanja izlaza na portovima P0, P1, P2 i P3 .Serial data bufer (SBUF ) s1uži za upis podatka koji se ša1je i čitanje podatka koji se

 prima preko serijske veze.Registarski parovi (TH0,TL0), (TH1,TL1) i (TH2,TL2) su 16-bitni brojački registri za brojač 0,1 i 2 respektivno.

Registarski par (RCAP2H,RCAP2L) su capture registri za Timer 2 capture-mode.U ovom modu u odzivu transmisije AT89S52 T2EX pinu, TH2 i TL2 su kopirani uRCAP2H i RCAP2L. Timer 2 takođe ima 16-bitni auto-reload mode i RCAP2H iRCAP2L zadržavaju reload veličinu za ovaj mod.

Za kontrolu i upisivanje statusa prilikom prekida za tajmere, brojače i za serijski prenos podataka koriste se registri specijalne namene IP, IE, TMOD, TCON, T2CON,T2MOD, SCON i PCON.

5.2 Opis pinova

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 19/61

 - 19 -

Od 1 do 8 - Port 1:Ovaj port je 8-bitni dvosmerni ulazno-izlazni port sa neprekidnim unutrašnjim

napajanjem. Izlazne posebne memorijske lokacije PORT1 mogu pobuditi 4 TTL logickakola. Kada je 1 s upisana na port 1 pinovi su na visokom nivou uz pomoć unutrašnjeg

neprekidnog napajanja i mogu se koristiti kao ulazi. Početna ulazna struja je Iul=150µAzbog 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 P1.4, P 1.5, P 1.6, P 1.7 mogu služiti za pomoćne portove. DATA INPUT/OUTPUT iCLOCK INPUT/OUTPUT pinovi su prikazani u tabeli:

Pin porta Razne funkcije

P1.0 T2 (spoljni brojački ulaz do tajmera/brojača 2), izlaz taktaP1.1 T2EX (triger hvatanja/punjenja tajmera/brojača 2 i kontrola smera)P1.5 MOSI (koriste se za programiranje u sistemu)

P1.6 MISO (koriste se za programiranje u sistemu)P1.7 SCK (koriste se za programiranje u sistemu)

Ovaj port prihvata adrese niskih nivoa u toku programiranja i verifikacije FLASHmemorije.

9 - Reset:Visok logički nivo na ovom ulazu resetuje sve interne registre (registre dovodi u

stanje 00000000), sa sledećim izuzecima: - P0, P1, P2 i P3 (izlazni registri svih spoljnih portova) se dovode u stanje 11111111

- SBUF se ne menja- SP se dovodi u stanje 00000111 (07h)- Neki bitovi u registrima IP, IE i PCON fizički ne postoje, pa tako ne mogu ni da

se resetuju

od 10 do 17 - Port 3:Ovo je 8 bit-ni dvosmerni I/O dvosmerni port sa neprekidnim unutrašnjim

napajanjem. PORT 3 pomoćne memorije mogu pobuditi 6 TTL ulaza. Kada se upisuju podaci na PORT3 ovaj PORT dosta energije vuče od unutrašnjeg neprekidnog napajanja i

tada se mogu koristiti ulazi. Kod ovih ulaza uz pomoć

spoljašnjeg napajanja struja jetipično 150 µA zbog slabog unutrašnjeg napajanja. PORT 3 takođe prihvata takođe i pojedine kontrolne signale za programiranje FLASH memorije. PORT3 takođe predstavlja i servis specijalnih promenljivih osobina AT89S 8253 koji su prikazani utabeli.

Ako se koristi kao univerzalni ulaz ili izlaz, po svemu je sličan portu 1, ali nasvakoj nožici ima još po neku specijalnu funkciju:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 20/61

 - 20 -

Pin porta Razne funkcije

P3.0 RXD (serijski ulaz za asinhronu komunikaciju (mod 1, 2 i 3) ili serijskiizlaz za sinhronu komunikaciju (mod 0))

P3.1 TXD (serijski izlaz za asinhronu komunikaciju (mod 1, 2 i 3) ili taktni

(clock) izlaz sa sinhronu komunikaciju (mod 0))P3.2 INT0 (ulaz za prekid (interapt) 0)P3.3 INT1 (ulaz za prekid (interapt) 1)P3.4 T0 (spoljnji ulaz tajmera 0)P3.5 T1 (spoljnji ulaz tajmera 1)P3.6 WR (signal za upis u spoljnu memoriju)P3.7 RD (signal za čitanje iz spoljne memorije)

18 i 19 - X2 i X1:Izlaz i ulaz internog oscilatora. Ako se koristi kvarc-kristal za stabilizaciju

učestanosti oscilatora (to je najčešći slučaj), on se vezuje za ove dve nožice, s tim što na

svaku nožicu (prema masi) treba dodati po jedan kondenzator od 20-40pF. Ovo je potrebno da bi se sprečilo oscilovanje na nekom višem harmoniku. Opseg uëestanosti jeod 1 do 12 MHz, a izrađuju se i mikrokontroleri koji rade i na znatno višimfrekvencijama.

20 – Masa

Od 21 do 28 - Port 2 ili adrese od A8 do A15:Port 2 je 8 bit-ni dvosmerni I/O port sa unutrašnjim neprestanim napajanjem.

Izlazne pomoćne memorije PORT-a 2 mogu prihvatiti/napajati 6 TTL ulaza. Kada je 1 sna 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 slabogunutrašnjeg neprekidnog napajanja. PORT 2 emituje adrese visokih naredbi u tokudonošenja podataka od spoljašnje memorije i u toku prihvatanja podataka iz spoljašnjememorije koje koriste 16-bitne adrese(MOVX i DPTR). U ovom slucaju PORT2 kadaemituje 1s koristi jako unutrašnje napajanje .U toku prihvatanja podataka iz spoljašnjememorije tada PORT 2 korist 8bit-ne adrese (MOVX i RI). PORT2 takođe ima ispecijalne funkcije registra. PORT 2 takođe prihvata adresne bitove visokog zahteva ineke kontrolne signale u toku programiranja i potvrde FLASH memorije.

Ako se koristi mikrokontroler sa internim ROM-om i nema spoljnjeg ROM-a iliRAM-a, mogu se koristiti sve linije ovog porta kao univerzalni ulazi ili izlazi. Ako sekoristi spoljna memorija, onda su ovo visoki adresni izlazi, od A8 do Al 5. U tom slučaju,

čak i ako se koriste samo neke adrese, preostale nožice ovog porta ne mogu da se koristekao ulazi ili izlazi.

 NAPOMENA: Svi pinovi u PORT 1 i PORT 2 kao i pinovi PORT 3 (izuzev P32 INTO 1P 3.3 INT 1 imaju sopstveno nepekidno napajanje koje je nedostupno u POWER-DOWNmodu. Pinovi P 3. 2 (INTO) i P 3.3 (INT 1) su aktivni podjednako i u POWER –DOWNmodu ( da bi mogli da potrazuju prekide za izlaz iz POWER-DOWN modu) uz stalnoukljuceno unutrasnje napajanje.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 21/61

 - 21 -

29 - PSEN: Program Store Enable (aktiviranje spoljašnjeg ROM-a):Omogućava čuvanje programa. PSEN čita strobe za programiranje spoljašnje

memorije. Kada AT89S8253 izgubi kod od izlazne memorije programa, PSEN je aktivandvostruko u toku svakog ciklusa mašine izuzev 2PSEN u toku svakog prihvatanja

 podataka od spoljašnje memorije. Normalno se ovaj izlaz spaja sa CS ili OE ulazom na spoljnom EPROM-u, jer ga

mikrokontroler aktivira (dovodi na nizak nivo) svaki put kad čita bajt iz programskememorije (za kontrolu spoljašnjeg RAM-a se koriste druge nožice).

30 – ALE/PROG: Address Latch Enable (Upis u adresni registar):Omogućava blokiranje podataka. ALE/PROG je ustvari izlazni koji blokira niske

 bajt adrese (u toku opadajuće ivice) u toku prihvatanja spoljašnje memorije. Ovaj pin jetakođe ulazni impuls programa u (PROG) u toku programiranja FLASH-a. U normalnomradu ALE traje 1/6 frekvencije oscilovanja i može biti upotrebljen za spoljašnji counter i

clock. Važno je međutim da je ALE impuls presko

čen u toku svakog prihvatanja podataka iz spoljašnje memorije. ALE operacija može biti onemogućena postavljanjem

 bita 0 AUX R SFR na lokaciju 8EH.Sa umetanjem bita, ALE je aktivan samo u tokuMOVX ili MOVC instrukcije. Postavljanjem ALE disable, bit nema efekta namikrokontroler u spoljašnjem izvršnom modu.

Da bi se sve funkcije spakovale u standardno kućište od samo 40 nožica, pribegnuto je multipleksiranju nekih signala. Tako je port P0 dobio dve funkcije, izlazneadrese A0-A7 i ulaz/izlaz podataka D0-D7. Pre svakog očitavanja programa iz spoljnememorije ili prozivanja RAM-a mikrokontroler na P0 prosleđuje niži bajt adresnogregistra i aktivira izlaz ALE. Spoljni registar na visok nivo ALE memoriše stanje P0, aizlazi ovog registra se koriste kao A0-A7. U drugom delu mašinskog ciklusamikrokontrolera P0 se koristi kao magistrala podataka (Data Bus).

31 - EA: External Access (Spoljni pristup):Ako je ovaj ulaz nizak, mikrokontroler će sve instrukcije čitati iz spoljnog ROM-a.

od 32 do 39 - Port 0, Adrese A0-A7 ili magistrala podataka:Slično portu P2, i port P0 može da se koristi kao univerzalni ulaz i izlaz samo ako

se ne koristi spoljna memorija Ako se koristi, tada je P0 adresni izlaz za A0-A7 kad jeALE visok, a magistrala podataka (Data Bus) kada je ALE nizak.

40 - Napajanje +5V.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 22/61

 - 22 -

5.3 Tajmeri/Brojač i 

Mikrokonroler AT89S53 sadrži tri tajmersko-brojačka registra. Prva dvazajednička su za sve modele iz familije 8051, dok je treći dodat modelima 8052.

Označavaju se kao tajmeri 0,1 i 2. Sva tri registra se mogu konfigurisati da rade i kaotajmeri i kao brojači.

Tajmer 0 i Tajmer 1

Kao što je pokazano na slici ispod, T0 sadrži dva registra – TH0 i TL0, koji služeza pamćenje višeg i nižeg bajta 16-bitnih binarnih brojeva.

 Na primer, ako je T0 = 0, oba registra će imati vrednost 0. Ako T0 ima decimalnuvrednost (1000), TH0 viši bajt imaće vrednost 3, a TL0 (niži bajt) imaće decimalnuvrednost 232. To se vidi na slici ispod.

Formula za računanje vrednosti 16-bitnog registra je vrlo jednostavna:THO * 256 + TL0 = T

Za prethodni primer važi:3 * 256 + 232 = 1000

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 23/61

 - 23 -

Tehnički tajmeri su 16-bitni registri, pa prema tome njihova maksimalna vrednost je 65,535. Ako se ovaj broj prekorači tajmer  će se automatski resetovati i njegovavrednost će ponovo biti nula, tj. tajmer nastavlja da broji od nule. Ovo stanje se zoveoverflow ili prekoračenje.

Ova dva tajmera mogu da rade kao brojački registri, ili registri koji mere zadativremenski interval. Oba tajmera mogu raditi u četiri radna rezima.

Kada radi kao brojač, sadržaj tajmerskog registra se uvećava za jedan na svakusilaznu ivicu odgovarajućeg ulaza mikrokontrolera (T0 za tajmer 0 i T1 za tajmer 1).Maksimalna frekvencija ulaznog signala koju brojač može da prati je 24 puta manja odradnog takta mikrokontrolera.

Kada radi kao tajmer, sadržaj tajmerskog registra se uvećava za jedan u svakommašinskom ciklusu. Jedan mašinski ciklus traje 12 perioda radnog takta mikrokontrolera(Ako je radni takt 12MHz, registar se uvećava svake mikrosekunde).

5.3.1. Kontrola rada tajmeraRadom tajmera upravlja se pomoću registara TMOD (sl.5.3.1) i TCON (sl.5.3.2).

Gornja četiri bita registra TMOD kontrolišu rad tajmera 1, a donja četiri rad tajmera 0.Bitovi TR1 i TR0 registra TCON određuju da li će odgovarajući tajmer/brojač bitiaktivan ili ne. Npr. ako je brojač 0 neaktivan on se neće uvećavati kada na ulazu T0nastupi prelaz sa visokog na nizak nivo. Ovo je ilustrovano na slikama 5.3.2.1, 5.3.2.2 i5.3.2.3. Način rada tajmera bira se kombinacijom bitova M1 i M0 registra TMOD.

Sl.5.3.1 Registar TMOD

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 24/61

 - 24 -

Sl.5.3.2 Registar TCON 

Bitovi C/T registra TMOD (u viša ili niža četiri bita u zavisnosti od tajmera)definišu da li odgovarajući tajmer radi kao tajmer (C/T=0) ili kao brojač (C/T=1). BitoviGATE svojim stanjem 0 omogućuju odgovarajućem tajmeru da radi uvek kada jeodgovarajući TR bit jednak jedinici. Ako je GATE=1, rad tajmera uslovljen je i stanjemna ulazu INT1 odnosno INT0 u zavisnosti od tajmera. Odgovarajući INT ulaz tada mora biti jedinica da bi tajmer radio.

5..2 . Timer 2

Tajmer 2 je 16-bitni Tajmer/Brojač koji može podjednako da radi i kao tajmer ikao brojač. Ovo se određuje selekcijom bita 2T/CP u registru specijalne nameneT2CON. Tajmer/Brojač registar dat je na sl. 5.3.2.1. Tajmer 2 se razlikuje od prethodnadva tajmera jer ovaj tajmer ima dva 8-bitna registra. TH2 i TL2 su vezana serijski iformiraju 16-bitni brojački registar. Druga dva, RCAP2H i RCAP2L takođe su vezanaserijski, i njihova glavna uloga zahvat ’’capture’’ sadržaja brojačkog registra.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 25/61

 - 25 -

Sl. 5.3.2.1 Tajmer/Brojač  registar 

Glavna prednost ove organizacije ogleda se u jednostavnoj zameni mesta podataka jednostavno instrukcijom i ne zahteva dodatne programske akrobacije. Takođe iovaj tajmer ima nekoliko različitih modova rada. Tajmer 2 se kontroliše registromT2CON i u tabeli ispod objašnjen je svaki njegov bit.

Sl. 5.3.2.2 T2CON -Tajmer/Brojač kontrolni registar 

Simbol Funkcija

TF2

Indikator stanja prekoračenja tajmera 2 i on se automatski aktivira kada brojač detektuje prekoračenje. Da bi registar mogao da detektuje naredno prekoračenje, ovaj bit se mora izbrisati softverski. Ako su aktivirani bitoviRCLK=1 ili TCLK=1, prekoračenje nema efekta na TF2

EXF2Ovaj bit se automatski aktivira kada se desi transfer iz brojača u bafer iliobrnuto. Ako je aktiviran, on generiše prekid, ukoliko nije postavlja se bitDCEN u T2MOD-u. EXF2 se briše softverski.

RCLK Prihvatni okidni impuls. Kada je na jedinici koristi impulse prekoračenjaTajmera 2, a kada je na nuli impulse prekoračenja Tajmera 1.

TCLK Prenosni okidni impuls. Takođe kada je na jedinici serijski port koristiimpulse prekoračenja Tajmera 2 a kaka je na nuli impulse prekoračenjaTajmera 1.

EXEN2Spoljašnje aktiviranje tajmera 2. Kada je EXEN2=1 vrši se reloadovanjeTajmera 2 koje može bit ili izazvano opadajućom ivicom na spoljnjem ulazuT2EX. Kada je EXEN2=0 Tajmer 2 ignoriše događaje na T2EX.

TR2 Kontrola start-1/stop-0 za Tajmer 2. Logočka jedinica staruje rad tajmera.

2T/CSelekcija tajmera ili brojača. 02T/C = interni brojač (osc/12), 12T/C =  eksterni brojač događaja (okidanje zadnjom ivicom).

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 26/61

 - 26 -

2RL/CP

Selekcija stanja Capture/Reload. 12RL/CP = javlja se captures stanje pri

negativnom prenosu T2EX ako je EXEN2=1. Kada je 02RL/CP = javlja seauto-reload  stanje, bez obzira na prekoračenje Tajmera 2 ili negativnom prenosu na T2EX kada EXEN2=1. Kada je bilo koji RCLK=1 ili TCLK=1,ovi bitovi su onemogućeni i Tajmer 2 je prinuđen da auto-reload -uje

 prekoračenje na Tajmeru 2.

Tajmer 2 ima tri operativna moda: capture, auto-reload i generator brzine baudakoji su selektovani bitovima u T2CON registru a prikazani su na sl.3.2.2.

RCLK+TCLK  2RL/CP TR2 MODE

0 0 1 16-bit Auto-reload0 1 1 16-bit Capture1 X 1 Baud Rate Generator X X 0 (Off)

Sl. 5.3.2.3. Operativni modovi tajmera 2

Tajmer 2 kao izvor taktovanja može da koristi sistemski clock , sistemski clock 

 podeljen sa 12 i opadajuću ivicu na spoljnem ulazu (T2 pin).U tkz. capture modu (modu 0) negativna ivica na spoljnjem ulaznom pinu T2EX

izaziva prepisivanje trenutne vrednosti tajmera 2 (TH2 i TL2) u registre RCAP2H iRCAP2L. Ovaj mod je jako koristan kod aplikacija u kojima je potrebno meritivremenske intervale do pojave nekog događaja. 16-bitni registri (TH2+TL2) drže broj odkoga počinje da se broji. Postavljanjem bita TR2 na jedinici u registru TCON startuje setajmer, svaki dolazeći impuls povećava vrednost za jedan. Kada se oba registra napune,impulsi prouzokuju prekoračenje (decimalna vrednost 65536), tada se resetuju i počinjuda broje od nule. Ovaj mod je opisan na slici 3.2.4.

U modu auto-reload (Up or Down Counter) - (mod 1) Tajmer 2 se možeisprogramirati da radi kao up/down brojač ukoliko je konfugurisan u auto-reload režimu.Ovo mogućnost je prozvana DCEN (Down Counter Enable) a ovaj bit se nalazi uspecijalnom registru T2MOD. Kada je aktiviran bit DCEN, Tajmer 2 broji gore ili dolezavisno od vrednosti T2EX pina. Kada tajmer odbroji, postavlja se odgovarajući marker,tajmer se reload -uje tako što se u njegove registre prepisuje vrednost iz registaraRCAP2H i RCAP2L i automatski restartuje.

U modu 2, tajmer dva određuje brzinu serijskog prenosa podataka preko UART-a, jer on određuje stopu prenosa (baud rate). Naime, Tajmer 2 u ovom modu radi isto kao iu modu auto-reload , stim što po odbrojavanju se ne postavlja fleg niti se generiše zahtevza prekid, već taj događaj služi kao takt za seriski prenos (i za slanje i za prijemnezavisno). U ovom modu opadajuća ivica na spoljnjem ulazu T2EX nema nikakvoguticaja na serijski prenos, već taj pin može biti iskorišćen kao izvor zahteva za dodatnispoljni prekid. Blok dijagrami modova rada Tajmera 2 su prikazani na sledećim slikama:.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 27/61

 - 27 -

Sl 5.3.2.4. Tajmer 2 u Capture modu

Sl. 5.3.2.5. Tajmer 2 Auto Reload Mode (DCEN=0) 

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 28/61

 - 28 -

Sl. 5.3.2.6. Tajmer 2 Auto Reload Mode (DCEN=1) T2EX = 0/1 countin down/up 

5.3.2.1. Koriš ć enje Tajmera 2 za generisanje brzine bauda :

Kod AT89S53, postavljanjem TCLK i/ili RCLK u T2CON selektuje Tajmer 2 kaogenerator brzine boda (slika 5.3.2.1). Pod ovim uslovima, brzina bauda za prijem i slanjemože biti simultano različita. Selektovanjem RCLK i/ili TCLK dovodi Tajmer 2 u njegovrežim generatora brzine bauda , što je prikazano na slici ispod.

Režim generatora brzine bauda je sličan auto-reload  režimu rada. U ovomslučaju, brzine bauda u režimima 1 i 3 su rešene od strane Tajmera 2 prema sledećoj jednakosti

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 29/61

 - 29 -

Sl. 5.3.2.1.

Tajmer 2 može biti konfigurisan za tajmer ili brojač operacije. U dosta primera,

on je konfigurisan za tajmer operaciju ( 02T/CP = ). Normalno, tajmer povećavavrednost pri svakom mašinskom ciklusu, ali operacija tajmera je različita za Tajmer 2kada se koristi kao generator brzine boda. Kao generator brzine bouda, Tajmer 2 povećava vrednost svakog vremenskog stanja. U ovom slučaju jednakost je data kao:

gde je (RCAP2H, RCAP2L) sadržaj registra RCAP2H i RCAP2L uzet kao 16-bitni ceo broj.

5.3.2.2 Koriš ć enje Tajmera 2 za programiranje izlaznog takta (clock-out):

50% taktovanih ciklusa može biti programirano na izlaz pina P1.0 na portu 1, kaošto je pokazano na slici . Ovaj pin, pored toga što je obično I/O pin, ima dvealternativne funkcije. Može biti programiran za ulaz spoljnjeg takta za Tajmer/Brojač 2 ili

za izlaz 50% taktovanih ciklusa od 61 Hz do 4MHz (za 16 MHz radnu frekvenciju).

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 30/61

 - 30 -

Sl. Tajmer 2 u clock-out modu

Da bi konfigurisali Tajmer/Brojač 2 kao generator takta, bit 2T/C (T2CON.1)mora biti obrisan i bit T2OE (T2MOD.1) mora biti postavljen. Bit TR2 (T2CON.2)startuje i stopira tajmer.

Frekvencija izlaznog takta zavisi od frekvencije oscilatora i reloadovane vrednosticapture registara (RCAP2H, RCAP2L) Tajmera 2, kao što se vidi iz sledeće jednačine.

U režimu izlaznog takta, brojači Tajmera 2 neće generisati prekid. Ovo ponašanje je slično kada se Tajmer 2 koristi kao generator bouda. Moguće je simultano koristitiTajmer 2 kao generator brzine bauda i kao generator takta. Međutim, frekvencijegeneratora brzine bauda i generatora izlaznog takta ne mogu biti određene nezavisno jer oba generatora koriste RCAP2H i RCAP2L registre.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 31/61

 - 31 -

6. SISTEM PREKIDA MIKROKONTROLERA

U mikroprocesorskim sistemima često je potrebno istovremeno pratiti rad više perifernih jedinica. To se može postići neprestanim prozivanjem jedne po jedne jedinice,

 proveravajući njihova stanja. Ako se utvrdi da je došlo do neke promene na nekoj od tih periferija na koju treba reagovati, preduzimaju se odgovarajuće akcije kao odgovor na promene. Na primer, nakon startovanja konverzije A/D konvertora neprekidno se vršičitanje stanja BUSY nožice konvertora, koje označava da li je konverzija u toku ili jezavršena. Ako neko očitavanje pokaže da je konverzija završena, tada se učitaodgovarajući podatak sa konvertora. U ovom slučaju mikrokontroler je neprestano zauzet proverom stanja na liniji BUSY A/D konvertora.

Drugi način praćenja rada više perifernih jedinica je da same jedinice jave kada je potrebno opsluživanje. Ta metoda se naziva metodom prekida, dok se prethodno opisananaziva metodom prozivanja (pooling). Dakle, kada se koristi metoda prekida, periferna jedinica posebnim signalom javlja kada je neophodna reakcija upravljačkog uređaja tj.

mikrokontrolera. Taj signal se zove zahtev za prekidom odnosno interaptom (interruptrequest). Slučaj iz prethodnog primera bi se mogao rešiti povezivanjem BUSY nožicekonvertora na odgovarajuću INT (spoljašnji prekid) nožicu mikrokontrolera. Kada seBUSY deaktivira izaziva se prekid. Nakon što mikrokontroler uvaži zahtev, prelazi na podprogram za opsluživanje prekida (u ovom slučaju čitanje vrednosti konverzije), anakon toga nastavlja sa izvršavanjem programa gde je prekinut u trenutku stizanjazahteva za prekidom. U ovom slučaju mikrokontroler se ne opterećuje proverom stanja na periferiji nego samo izvodi odgovarajuću akciju kada je to potrebno. Iz ovoga je jasno da uovom slučaju mikrokontroler potroši mnogo manje vremena za opsluživanje periferija,zbog čega i program može biti mnogo efikasniji.

6.1.Izvori prekida

Kod ovog mikrokontrolera postoje šest izvora prekida. Dva spoljašnja ( 0INT i

1INT ), tri prekida tajmera (tajmer 0,1 i 2) i prekid serijskog porta.Sa ciljem da se koriste bilo koji od prekida u flash mikrokontroleru, treba

 preduzeti sledeća tri koraka.1. Postaviti EA (bit dozvole) u IE registru na 1.2. Postaviti odgovarajući pojedinačni bit prekida u IE registru na 1.3. Započeti prekidnu servisnu rutinu na odgovarajućoj adresi vektora prekida.Videti sledeću tabelu.

Izvor prekida Adresa vektora FunkcijaIE0TF0

0003H000BH

Spoljašnji prekid 0Prekid tajmera 0

IE1TF1

0013H001BH

Spoljašnji prekid 1Prekid tajmera 1

R1 i T1TF2 i EXF2(1) 

0023H002BH

Prekid serijskog portaPrekid tajmera 2

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 32/61

 - 32 -

 Na slici ispod se može videti da se prekid može jednostavno onemogućiti brisanje bita EA u istom registru.

Kao dodatak, za spoljašnje prekide, pinovi INT0 i INT1 (P3.2 i P3.3) moraju biti

 postavljeni na 1, i u zavisnosti od toga da li se prekid aktivira nivoom ili prelazom, bitoviIT0 ili IT1 u TCON registru moraju se postaviti na 1.ITx = 0 okidanje nivoomITx = 1 okidanje prelazom

6.2 Maskiranje prekida

Svaki od pomenutih prekida se može dozvoliti ili zabraniti tj. maskirati. Kada je prekid maskiran, odgovarajući bitovi (TF0, TF1,TF2, IE0 i IE1) se postavljaju na 1, ali tone izaziva prelazak na odgovarajući servisni potprogram. Kod AT89S53 svaki od izvora prekida se može maskirati, to se kontroliše preko registra IE (interrupt enable, sl.). Kao

što se vidi na sl., postavljanjem određenog bita na 1 odgovarajući prekid biva dozvoljen.U suprotnom je maskiran. Najviši bit EA (enable all) kontroliše maskiranje svih prekida.Ukoliko je on 0, svi prekidi su maskirani bez obzira na stanje bitova istog registra kojikontrolišu maskiranost pojedinačnih izvora prekida.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 33/61

 - 33 -

 IE: Registar dozvole prekida (bit-adresabilan)

Ako je bit 0, odgovarajući prekid je onemogućen. Ako je bit 1, odgovarajući prekid je dozvoljen

EA — ET2 ES ET1 EX1 ET0 EX0

EA IE.7 Onemogućava sve prekide. Ako je EA=0, nema potvrde prekida.Ako je EA=1, svaki izor prekida se pojedinačnoomogućava ilionemogućava postavljanjem njegovog bita dozvole.

--- IE.6 Nije implementirano, rezervisano za buduću upotrebu.(1) ET2 IE.5 Omogućava ili onemogućava prekoračenjetajmera 2 ili zahtevanje

 prekida.ES IE.4 Omogućava ili onemogućava prekid serijskog porta.

ET1 IE.3 Omogućava ili onemogućava prekoračenje tajmera 1.

EX1 IE.2 Omogućava ili onemogu

ćava spoljašnji prekid 1.ET0 IE.1 Omogućava ili onemogućava prekoračenje tajmera 0.

EX0 IE.0 Omogućava ili onemogućava spoljašnji prekid 0.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 34/61

 - 34 -

7. Napajanje

 Napajanje mikrokontrolera je ostvareno klasičnom procedurom i komponentamakao i kod drugih kontrolera. Naizmenični napon napajanja iz mreze 220V se preko

transformatora tansformiše na 9V pa zatim ispravlja preko greca i kondenzatora. Posletoga se signal vodi na stabilizator napona realizovan kao IC LM 7805 i takav signal sevodi na procesor i ostale digitalne periferne uredjaje i služi kao napajanje konstantnomvrednošću napona. Električna šema izvora napajanja je data na sledećoj slici:

Električna šema uređaja sa svim detaljno opisanim komponentama kao i izgledštampane veze naše pločice date su na sledećim slikama:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 35/61

 - 35 -

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 36/61

 - 36 -

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 37/61

 - 37 -

Kao što je već bilo reči, sva digitalna kola se napajaju preko izvora konstantnognapona +5V i pozitivan kraj ovog napona je doveden na 40-ti pin mokrokontrolera amasa je preko 20-og pina povezana na uzemljenje i zajedničku masu. Kada je reč ooscilatoru konstantne učestanosti ovde je on povezan preko pinova 18 i 19 i ima vrednost

11.059MHz. Povezivanje mikrokontrolera i D-leča ostvarili smo preko porta P1 i P2.Pinove od P1.0 do P1.7 smo iskoristili za povezivanje ulaza od D0 do D7 D-leča. Dok 

smo pin P2.0 iskoristili za povezivanje ulaza LE na D-leču. Znači, na ulaz D-lečadovodimo 8 bita (D0-D7) koja će služiti za brojanje, dok na ulaz dozvole (LE) dovodimotakt. Iskoristićemo Tajmer 2 mikrokontrolera i njegova dva 8-bitna registra kao tajmer ikao brojač. Kao brojač Tajmer 2 brojaće od 0 do 255 pošto koristimo 8-bitni registar pa je28=256. Da bi radio kao brojač koristićemo capture režim rada a da bi radio kao tajmer koristićemo clock-out  režim rada. Pozitivan kraj napona napajanja, koji smo uzeli sa pločice, je doveden na 20-ti pin D-leča, a masa je dovedena na 10-ti pin.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 38/61

 - 38 -

8. ASEMBLER

Asembler smo simulirali i kompajlirali u Keil uVision 3 kompajleru. Na osnovuasemblera napisanog u Keil-u generisali smo heksadecimalni fajl koji smo kasnije

koristili za programiranje našeg mikrokontrolera pomoću univerzalnog programatora,koga će mo opisati malo kasnije.

Da bi konfigurisali Tajmer/Brojač 2 kao generator takta, bit 2T/C (T2CON.1)mora biti obrisan i bit T2OE (T2MOD.1) mora biti postavljen. Frekvencija izlaznog taktase računa po obrascu

Od ove frekvencije zavisi dužina stepenika testerastog napona tj. dužina periode. Što jeveća frekvencija to je perioda kraća i odrnuto.

Za primer koji smo odradili koristili smo frekvenciju izlaznog takta od 10 KHz.Vrednosti koje unosimo u registre izračunavaju se iz gornje jednačine i iznoseRCAP2H=FEH i RCAP2L=EBH. Vreme trajanja jednog takta je 1/f =1/10 000=0.1 ms, atrajanje periode izlaznog napona je T=256*0.1 ms=25.6 ms. Kao što smo već rekli sa povećavanjem frekvencije veća je brzina rada tajmera a samim tim i perioda je kraća.U startu se uradi deklaracija promenljivih tj. flegova i bajtova. Od 20H do 30H imamo bitadresabilne bajtove i oni se koriste ako imamo kasnije neke flegove tj. markere koje cemo koristiti da ih tu smestimo. 

 Name DAC

Program segment code

Definisali smo konstante koje kasnije koristimo za programiranje sekvenci (komandekoje zadajemo)

USPON EQU 1MIRNO EQU 2DOLE EQU 3 NANULU EQU 4POCETAK EQU 5

SETTIMER EQU 6

CSEG AT 002BH // Naredba se pozicionira na toj memorijskojlokaciji (lokacija na koju se postavlja registar programskog brojača kad se javi prekidTajmera 2), memorijska lokacija koja se odnosi na fleš memoriju

JMP Timer_2

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 39/61

 - 39 -

Potprogram koji definiše prekide kod Tajmera 2

TIMER_2: CLR TF2 // Briše marker za prekid

Generisanje signala za LE kod D-leča

SETB P2.0 // Postavlja bit0 na portu P2.0CLR P2.0 // Odmah se zatim briše bit0 na portu P2.0

Dekrementira i skače ako nije R2=0 (R2 je pomoćni registar i on odbrojava dužinusekvence)

DJNZ R2,S0 // Registar R2 određuje dužinu trajanjadeonice u okviru zadate sekvence

Ako je kraj sekvence (R2=0) pozivamo potprogram nova_deonica

CALL NOVA_DEONICA // Kada je R2=0 poziva se čitanje nove deonice

RETI // Povratak iz prekida

 Nešto nalik  case strukturi (u odnosu na R1) kojom se određuje koja je deonicatrenutno aktivirana

S0: CJNE R1,#USPON, S1 // Skoči ako nije jednakoCALL PP1 // Ako jeste izvrši PP1 (potprogram)

S1: CJNE R1,#MIRNO, S2CALL PP2

S2: CJNE R1,#DOLE, S3CALL PP3

S3: CJNE R1,#NANULU, S4CALL PP4

S4: CJNE R1,#POCETAK, S5CALL PP5

S5: CJNE R1,#SETTIMER, RET_ICALL SET_TIMER 

RET_I: RETI // Završavamo case strukturu i vraćamo se iz prekida

Posle ispitivanja R1 registra izvršava se neki od sledećih potprograma

PP1: INC P1 // PP1 rastućiRET

PP2: RET // PP2 mirno

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 40/61

 - 40 -

PP3: DEC P1 // PP3 opadajućiRET

Dodeljuje portu P1 nulu, vraća ga na nulu

PP4: MOV P1,#0 // PP4 vrati na 0MOV R2,#1

RET

Pošto R0 registar koristimo kao indeksni registar u PP5 vraćamo na početnu lokaciju umemoriju u koju je upisana sekvenca koja se izvršava

PP5: MOV R0,#020H // PP5 na sekvenca od početkaMOV R2,#1

RET

Potprogram kojim podešavamo trajanje Tajmera 2 tako što u capture registrimaupisujemo vrednost od koje Tajmer 2 broji (to smo izračunali iz jednačine gore)

Podešavanje Tajmera 2

SET_TIMER: MOV RCAP2H,@R0 // Iz memorijske lokacije na kojuukazuje registar R0 (indirektno adresiranje)

INC R0 // Pređi na sledeću memorijsku lokacijuMOV RCAP2L,@R0INC R0MOV R2,#1RET // Vrati se iz potprograma

Potprogram koji iščitava podatke o nova_deonica (šta treba sledeće da uradi)

 NOVA_DEONICA: MOV A,@R0 // Isčitavanje parametara za novu deonicuMOV R1,A // R1 dobija vrednost iz memorijske

lokacije R0

U registru R1 se smešta kod stanja sekvence tj. da li je uspon, mirno, opada, vraća nanulu, vrati na početak sekvence ili podesi trajanje Tajmera 2

INC R0 // Registar R0 služi kao indeksni registatr za čitanje zadate sekvence iz RAM-a

Ako je u R1 upisano uspon, mirno ili opada tada treba da se pročita još jedan parametar koji određuje trajanje stanja, zato služi sledeća case struktura kojom se ispituje

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 41/61

 - 41 -

da li je u R1 upisano jedno od ovih tri stanja, ako jeste onda se vrši čitanje parametara usledeće memorijske lokacije, ako nije završava se potprogram

CJNE R1,#USPON, SD1 // Struktura kojom ispitujemo dali je potrebno iscitati drugi parametar 

JMP READ_SP // Ako je sekvenca uspon, mirno,dole onda je potrebno pročitati drugi parametar 

SD1: CJNE R1,#MIRNO, SD2JMP READ_SP

SD2: CJNE R1,#DOLE, RET_ND // Ako nije jedna od tri gorenavedene sekvence onda nema drugog parametra pa treba preskočiti njegovo čitanje

READ_SP: MOV A,@R0

MOV R2,AINC R0

RET_ND: RET

Sledeći potprogram služi za unošenje sekvence

START_V: MOV R0,#020H // U R0 se smešta početnalokacija na kojoj se u RAM-u smešta sekvenca

MOV R2,#1 // U R2 se nalazi brojač u ovom slučaju treba da seizrši samo jedna prekidna rutina

Programiranje sekvence koja se izvršava

MOV @R0,#SETTIMER // Postavimo vrednost TajmeraINC R0 // Pređi na sledeću mem lokacijuMOV @R0,#0FFH // Prvi parametar za viši registar 

Tajmera 2INC R0 // Pređi na sledeću mem lokacijuMOV @R0,#0F0H // Drugi parametar za niži registar 

Tajmera 2INC R0MOV @R0,#USPONINC R0MOV @R0,#15 // Uspon traje 15 vremenskih intervala

INC R0MOV @R0,#MIRNOINC R0MOV @R0,#10 // Mirno traje 10 vremenskih intervala

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 42/61

 - 42 -

INC R0MOV @R0,#DOLEINC R0

MOV @R0,#12 //Na dole traje 12 vremenskih intervalaINC R0

MOV @R0,#NANULU // Traje jedan vremenski intervalINC R0MOV @R0,#POCETAK MOV R0,#020HRET

Potprogram za inicijalizaciju Tajmera 2, upisujemo početne vrednosti u registreTajmera 2

INIT_TIMER: MOV TH2,#0FEHMOV TL2,#0EBH

MOV RCAP2H,#0FEHMOV RCAP2L,#0EBHSETB ET2 // Omogućava prekide Tajmera 2SETB EA // Omogućava sve prekideSETB TR2 // Start brojača Tajmera 2RET

RSEG PROGRAM // Segment glavnog programa startuje od nultememorijske lokacije u memoriji za program (fleš memoriju)

U glavnom programu inicijalizuje se Tajmer 2, postavljaju se početne vrednosti na portovima i upisuje se u RAM memoriju sekvence (poziva se potprogram koji upisujesekvencu u RAM memoriju), zatim ulazi u beskonačnu petlju i čeka prekid Tajmera 2.

MAIN: CALL INIT_TIMER CLR P2.0 // Brisanje bita 0 porta P2MOV P1,#0 // Postavi port P1 u 00000000CALL START_V // Programiranje sekvencu

JMP $ // Vrti se u beskonačnu petlju

END

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 43/61

 - 43 -

9. Tipi č ni aplikacioni programi 

9.1  Softver:

Za programiranje mikrokontrolera AT89S8253 koristili smo Univerzalni programmer UNP2 firme MEC. To je uređaj koji služi za programiranje ražličitih tipovačipova ,tako što već gotov heksadecimalni fajl koji smo dobili u keil-u (asembler) učitavau čip. Ovaj naš pogramator se može koristiti za za različite tipove čipova koji se mogurazlikovati po tipu kućiša ili broju pinova,zato i ima univerzalno podnožje za njih.Imamogucnost brisanja i upisa odgovarajuceg sadržaja.

Generalni opis UNP2 :

Ø  Mali, mocni i brzi univerzalni programator.Ø  DIL40 ZIF adapter ,uređaji u DIL paketu do 40 pina su podržani bez

adaptera.Ø  Konekcija sa PC paralelni port .Ø  Visoko brzinski IEEE 1284 izlazni port sa brzinom od 1Mb/s .Ø  Lak za korišcenje u DOC i Windows 95/98/Me/NT/200/XPØ  Adapter za napajanje i softver su sastavni delovi paketa.

Uređaj podržava programiranje za:

Ø  EPROM:NMOS/CMOS,27xxx I 27cxxx serije, sa 8/16 širinom baze podataka, puna podrška za LV seriju(*1*2)Ø  EEPROM:NMOS*CMOS, 28xxx,28Cxxx,27EExxx serije, sa 8/16 bita

širinom baze, puna podrška za LV seriju(*1*2)Ø  FLASH EPROM: 28Fxxx, 29Cxxx, 29Bxxx, 29LVxxx,29Wxxx, 49Fxxx

serije sa 8/16 širinom baze podataka, puna podrška za LV seriju(*1*2)

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 44/61

 - 44 -

Ø  SerijaE(E)PROM: 17Cxxx,24Cxxx,25Cxxx,25Cxxx,59Cxxx,85Cxxx,93Cxxx serije , puna podrška zaLV seriju(*1*2)

Ø  Konfiguracioni PROM: 17xxx serije i LV serije.Ø 

 NV RAM, PLD serija.Ø  Mikrokontroleri MCS51, 87Cxxx,89Cxxx,89Sxxx,89LVxxx serije odAtmela,Atmel W and M,Intel,Philips,SST,paralelni i seriski(ISP) mod .

Ø  Mikrokontroleri Scenixs: SX 18xxx, SX20xxx,SX28xxx serije.

Početni korisnički ekran izgleda ovako:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 45/61

 - 45 -

Sledeći korak je izbor ATMEL-ovog mikrokontrolera, a kako smo mi koristiliAT89S8253 biramo njega. Sto je prikazano na sledećim slikama:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 46/61

 - 46 -

Posle izbora komponente sledi brisanje čipa

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 47/61

 - 47 -

Zatim sledi učitavanje heksadecimalnog zapisa i asemblera u mikrokontroler.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 48/61

 - 48 -

Zatim sledi programiranje mikrokontrolera:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 49/61

 - 49 -

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 50/61

 - 50 -

Izgled ekrana posle programiranja mikrokontrolera prikazan je gore na slici. Sadakada smo završili programiranje, vadimo čip iz programatora i stavljamo ga u podnožjena maketi. Pošto smo isprogramirali mikrokontroler uzimamo osciloskop i stavljamosonde na izlaz D/A konvertora generisani oblik željenog napona izgleda kao na slici:

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 51/61

 - 51 -

10.ZADACI ZA STUDENTE 

 PRIMER 1.

Generisati signal proizvoljnog talasnog oblika pomocu funkciskog geneartora.Koji ce da ima rastucu ivicu definisanu programskom sekvencom (konstantom) USPONsa naponom od 0.293 V, mirujucu sekvencu definisanu programskom konstantomMIRNO sa naponom od 0.195 V ,opadajucu ivicu definisanu programskom konstantomDOLE sa naponom 0.234 V i ivicu kojom se signal vraća na nulu definisanu programskom konstantom NANULU sa naponom od 0.02V. Frekvencija izlaznog taktaCLOCK OUT je 10 KHz.

 Napomena: Signal realizovati korisćenjem postojeceg asemblera , gde su naponidefinisani vremenskim intervalima, a ne voltima.

Za programiranje mikokontrolera koristiti unuverzalni programator UNP2firme MEC.

 RAD:

 Name DAC

Program segment code

USPON EQU 1MIRNO EQU 2DOLE EQU 3

 NANULU EQU 4POCETAK EQU 5SETTIMER EQU 6

CSEG AT 002BHJMP Timer_2

TIMER_2: CLR TF2SETB P2.0

CLR P2.0

DJNZ R2,S0

CALL NOVA_DEONICA

RETI

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 52/61

 - 52 -

S0: CJNE R1,#USPON, S1CALL PP1

S1: CJNE R1,#MIRNO, S2CALL PP2

S2: CJNE R1,#DOLE, S3

CALL PP3S3: CJNE R1,#NANULU, S4CALL PP4

S4: CJNE R1,#POCETAK, S5CALL PP5

S5: CJNE R1,#SETTIMER, RET_ICALL SET_TIMER 

RET_I: RETI

PP1: INC P1RET

PP2: RET

PP3: DEC P1RET

PP4: MOV P1,#0MOV R2,#1

RET

PP5: MOV R0,#020HMOV R2,#1

RET

SET_TIMER: MOV RCAP2H,@R0INC R0MOV RCAP2L,@R0INC R0MOV R2,#1RET

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 53/61

 - 53 -

 NOVA_DEONICA: MOV A,@R0MOV R1,A

INC R0

CJNE R1,#USPON, SD1JMP READ_SP

SD1: CJNE R1,#MIRNO, SD2JMP READ_SP

SD2: CJNE R1,#DOLE, RET_NDREAD_SP: MOV A,@R0

MOV R2,AINC R0

RET_ND: RET

START_V: MOV R0,#020HMOV R2,#1MOV @R0,#SETTIMER INC R0MOV @R0,#0FFHINC R0MOV @R0,#0F0HINC R0MOV @R0,#USPONINC R0MOV @R0,#15INC R0MOV @R0,#MIRNOINC R0MOV @R0,#10INC R0MOV @R0,#DOLEINC R0MOV @R0,#12INC R0MOV @R0,#NANULUINC R0MOV @R0,#POCETAK MOV R0,#020HRET

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 54/61

 - 54 -

INIT_TIMER: MOV TH2,#0FEHMOV TL2,#0EBHMOV RCAP2H,#0FEHMOV RCAP2L,#0EBHSETB ET2

SETB EASETB TR2RET

RSEG PROGRAM

MAIN: CALL INIT_TIMER CLR P2.0MOV P1,#0CALL START_V

JMP $END

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 55/61

 - 55 -

 PRIMER 2.

Generisati signal proizvoljnog talasnog oblika pomocu funkciskog geneartora.Koji ce da ima rastucu ivicu definisanu programskom sekvencom (konstantom) USPONsa naponom od 1.953 V, mirujucu sekvencu definisanu programskom konstantom

MIRNO sa naponom od 0.59 V ,ponovo rastucu ivicu sa naponom od 0.977 V,opadajucu ivicu definisanu programskom konstantom DOLE sa naponom 2.34V i ivicukojom se signal vraća na nulu definisanu programskom konstantom NANULU sanaponom od 0.59V. Frekvencija izlaznog takta CLOCK OUT je 10 KHz.

 Napomena: signal realizovati korisćenjem postojeceg asemblera , gde su naponidefinisani vremenskim intervalima, a ne voltima.

Za programiranje mikokontrolera koristiti unuverzalni programator UNP2firme MEC.

 RAD:

 Name DACProgram segment code

USPON EQU 1MIRNO EQU 2DOLE EQU 3 NANULU EQU 4POCETAK EQU 5SETTIMER EQU 6

CSEG AT 002BH

JMP Timer_2TIMER_2: CLR TF2

SETB P2.0CLR P2.0

DJNZ R2,S0

CALL NOVA_DEONICA

RETI

S0: CJNE R1,#USPON, S1CALL PP1

S1: CJNE R1,#MIRNO, S2CALL PP2

S2: CJNE R1,#DOLE, S3CALL PP3

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 56/61

 - 56 -

S3: CJNE R1,#NANULU, S4CALL PP4

S4: CJNE R1,#POCETAK, S5CALL PP5

S5: CJNE R1,#SETTIMER, RET_I

CALL SET_TIMER RET_I: RETI

PP1: INC P1RET

PP2: RET

PP3: DEC P1RET

PP4: MOV P1,#0MOV R2,#1

RET

PP5: MOV R0,#020HMOV R2,#1

RET

SET_TIMER: MOV RCAP2H,@R0INC R0MOV RCAP2L,@R0INC R0MOV R2,#1RET

 NOVA_DEONICA: MOV A,@R0MOV R1,A

INC R0

CJNE R1,#USPON, SD1JMP READ_SP

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 57/61

 - 57 -

SD1: CJNE R1,#MIRNO, SD2JMP READ_SP

SD2: CJNE R1,#DOLE, RET_NDREAD_SP: MOV A,@R0

MOV R2,AINC R0

RET_ND: RET

START_V: MOV R0,#020HMOV R2,#1MOV @R0,#SETTIMER INC R0MOV @R0,#0FFH

INC R0MOV @R0,#0F0HINC R0MOV @R0,#USPONINC R0MOV @R0,#100INC R0MOV @R0,#MIRNOINC R0MOV @R0,#30INC R0MOV @R0,#USPONINC R0MOV @R0,#50INC R0MOV @R0,#DOLEINC R0MOV @R0,#120INC R0MOV @R0,#NANULUINC R0MOV @R0,#30INC R0MOV @R0,#POCETAK MOV R0,#020HRET

INIT_TIMER: MOV TH2,#0FEHMOV TL2,#0EBHMOV RCAP2H,#0FEH

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 58/61

 - 58 -

MOV RCAP2L,#0EBHSETB ET2SETB EASETB TR2RET

RSEG PROGRAM

MAIN: CALL INIT_TIMER CLR P2.0MOV P1,#0CALL START_V

JMP $

END

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 59/61

 - 59 -

11. ZAKLJU Č  AK:

 Na osnovu svega što je ovde urađeno i prikazano slikama, programom(asemblerom) rečima i blok šemama, može se zaključiti da je generator proizvoljnogtalasnog oblika uspešno realizovan, što pokazuju i ponuđena rešenja kao rezultat

 proteklog rada. Studentima se daje na korišćenje par primera signala proizvoljnogtalasnog oblika kod kojih se mogu menjati periode trajanja i izgled po želji, i koji semogu nadograđivati po potrebi i koristiti u lab. vežbama ili u druge edukativne svrhe.

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 60/61

 - 60 -

11.LITERATURA:

-  RISC i SICS Procesori –Pr.Mile Stojcev

-  www.atmel.com Literature

-  Atmel AT89S8253 Datasheet

-  Atmel Microcontroller Instruction Set

-  Toshiba TC74HC373AP Datasheet

-  MEC UNP2 details specification

-  www.atmel.com 

-  www.keil.com 

-  www.mecelectronic.com

7/16/2019 Funkcijski Generator

http://slidepdf.com/reader/full/funkcijski-generator 61/61

12. DODACI 

Sva literatura koja je korišćena u ovom projektu je data u elektronskojverziji ovog projekta i dostupna je zainteresovanim kandidatima.