26
MIKROPROCESORSKI SISTEMI MIKROPROCESORSKI SISTEMI SEMINARSKI RAD SEMINARSKI RAD FUNKCISKI GENERATOR PROIZVOLJNIH FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA REALIZOVAN POMOĆU TALASNIH OBLIKA REALIZOVAN POMOĆU MIKROKONTROLERA I D-LATCH-a MIKROKONTROLERA I D-LATCH-a Kandidati: Kandidati: Bošković Milan br. 11042 Bošković Milan br. 11042 Petrović Aleksandar br. 10323 Petrović Aleksandar br. 10323

MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

Embed Size (px)

DESCRIPTION

MIKROPROCESORSKI SISTEMI SEMINARSKI RAD. FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA REALIZOVAN POMOĆU MIKROKONTROLERA I D-LATCH-a Kandidati: Bošković Milan br. 11042 Petrović Aleksandar br. 10323. UVOD. FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA - PowerPoint PPT Presentation

Citation preview

Page 1: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

MIKROPROCESORSKI SISTEMIMIKROPROCESORSKI SISTEMI

SEMINARSKI RADSEMINARSKI RAD

FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA REALIZOVAN POMOĆU OBLIKA REALIZOVAN POMOĆU

MIKROKONTROLERA I D-LATCH-aMIKROKONTROLERA I D-LATCH-a

Kandidati:Kandidati:Bošković Milan br. 11042Bošković Milan br. 11042

Petrović Aleksandar br. 10323Petrović Aleksandar br. 10323

Page 2: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

UVODUVOD

1.1. FUNKCISKI GENERATOR FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKA PROIZVOLJNIH TALASNIH OBLIKA

2.2. D- leč sa D/A konvertorom D- leč sa D/A konvertorom realizovanim realizovanim ssa 2R-R vezom a 2R-R vezom

3.3. Opis i analiza mikrokontrolera AT Opis i analiza mikrokontrolera AT 89S8253 89S8253

4.4. AsemblerAsembler 5.5. Programiranje programatorom Programiranje programatorom MEC MEC

UNP2 UNP2

Page 3: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

1.1. FUNKCISKI GENERATOR PROIZVOLJNIH FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKATALASNIH OBLIKA

BLOK DIJAGRAM FUNCISKOG GENERATORA PROIZVOLJNIH BLOK DIJAGRAM FUNCISKOG GENERATORA PROIZVOLJNIH TALASNIH OBLIKA:TALASNIH OBLIKA:

POPT 1(P1.0-P1.7)

MIKROKONTROLER AT89S8153

PORT 2(P2.0)

SIGNALIZLAZNI

GENERATOR PROIZVOLJNIH

TALASNIHOBLIKA

GND

Page 4: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

1.1. FUNKCISKI GENERATOR PROIZVOLJNIH FUNKCISKI GENERATOR PROIZVOLJNIH TALASNIH OBLIKATALASNIH OBLIKA

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

MikrokontrolerAT89S8253

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

Vp

Page 5: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

2. 2. D- leč sa D/A konvertorom realizovanim D- leč sa D/A konvertorom realizovanim ssa 2R-R a 2R-R vezomvezom

Speifikacija leča TC74HC373 :Speifikacija leča TC74HC373 :

Najveca brzina...................................Najveca brzina................................... Režim smanjenje potrošnje:............... Režim smanjenje potrošnje:............... Osetljivost na buku:........................... Osetljivost na buku:........................... Simetrična izlazna inpedansa:..............Simetrična izlazna inpedansa:.............. Izlazna kapacitivnost:........................ Izlazna kapacitivnost:........................ Ujednačeno propagaciono kašnjenje..... Ujednačeno propagaciono kašnjenje..... Široki opseg operativnog napona.......... Široki opseg operativnog napona.......... Pinovi i funcionalna kompatibilnost odgovaraju Pinovi i funcionalna kompatibilnost odgovaraju

74LS7373/53374LS7373/533

Page 6: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

2. 2. D- leč sa D/A konvertorom realizovanim D- leč sa D/A konvertorom realizovanim ssa a 2R-R vezom2R-R vezom

TIP KUČIŠTA: TIP KUČIŠTA: DIP 20PINDIP 20PIN

Page 7: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

2. 2. D- leč sa D/A konvertorom realizovanim D- leč sa D/A konvertorom realizovanim ssa a 2R-R vezom2R-R vezom

RASPORED PINOVARASPORED PINOVA: : Sistemski dijagram D-leča:Sistemski dijagram D-leča:

Page 8: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

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

Digitalno-analogna konverzija je ustvari pretvaranje binarno Digitalno-analogna konverzija je ustvari pretvaranje binarno zapisane brojne vrednosti sa n bita:zapisane brojne vrednosti sa n bita:

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

D/A KONVERTOR

a0 a1 a2 a3 ...........an-1

VaANALOGNI NAPON

BINARNA REČ

Page 9: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

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

D/A konvertori se prave sabiranjem struja tako D/A konvertori se prave sabiranjem struja tako da su doprinosi svake struje srazmerni težini da su doprinosi svake struje srazmerni težini binarnih cifara zapisane digitalne vrednostibinarnih cifara zapisane digitalne vrednosti

Rp

Rn-1

R0

R1

R2

R4

Ri

+Vr

1

2

b0

b1

b2

b3

bn-1

Vp

+

bi

Page 10: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

2.1 2.1 D/A konvertor realD/A konvertor realiizovan mrežom 2R-R :zovan mrežom 2R-R :

Lestvičasta otporna mreža sa n bita:Lestvičasta otporna mreža sa n bita:

Page 11: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

3. 3. Opis i analiza mikrokontrolera AT 89S8253 Opis i analiza mikrokontrolera AT 89S8253 - Kompatibilan je sa Microsoft-51 procesorom- Kompatibilan je sa Microsoft-51 procesorom - 12KB fleš memorija- 12KB fleš memorija - SPI serijski unos za učitavanje programa- SPI serijski unos za učitavanje programa - 10 000 ciklusa upis/brisanje- 10 000 ciklusa upis/brisanje - 2KB EEPROM memorija- 2KB EEPROM memorija - 100 000 ciklusa upis/brisanje (64-bajtna korisnička matrica)- 100 000 ciklusa upis/brisanje (64-bajtna korisnička matrica) - Napon napajanja od 2.7V do 5.5 V- Napon napajanja od 2.7V do 5.5 V - Frekvencija od 0 do 24 MHz- Frekvencija od 0 do 24 MHz - Memorijsko zaključavanje u 3 nivoa- Memorijsko zaključavanje u 3 nivoa - 256 x 8-bitni unutrašnji RAM- 256 x 8-bitni unutrašnji RAM - 32 I/O linije za programiranje- 32 I/O linije za programiranje - Tri 16-bitna Tajmer/Brojač- Tri 16-bitna Tajmer/Brojač - 9 generatora prekida- 9 generatora prekida - Poboljšani UART serijski port sa centriranjem detekcije greške i automatskim - Poboljšani UART serijski port sa centriranjem detekcije greške i automatskim

prepoznavanjem adreseprepoznavanjem adrese - Male snage napajanja- Male snage napajanja - Uspostavljanje prekida u niskom režimu rada- Uspostavljanje prekida u niskom režimu rada - Programabilni tajmeri- Programabilni tajmeri - Dvostruki pokazivač podataka- Dvostruki pokazivač podataka - Isključivanje pomoću znaka (Power-off Flag)- Isključivanje pomoću znaka (Power-off Flag) - Fleksibilni ISP programator (byte i page modovi)- Fleksibilni ISP programator (byte i page modovi) - Page mode: 64 byte/page za kodnu memoriju, 32 byte/page za memoriju podataka- Page mode: 64 byte/page za kodnu memoriju, 32 byte/page za memoriju podataka - 4-nivo poboljšani kontrolor prekida- 4-nivo poboljšani kontrolor prekida - Programabilna x2 clock opcije- Programabilna x2 clock opcije - Unutrašnji Power-on Reset- Unutrašnji Power-on Reset - 42-pin PDIP model kućišta za redukovanje EMS emisije- 42-pin PDIP model kućišta za redukovanje EMS emisije - Zeleni (Pb/Holide-free) opcija kućišta- Zeleni (Pb/Holide-free) opcija kućišta

Page 12: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

3. 3. Opis i analiza mikrokontrolera AT 89S8253 Opis i analiza mikrokontrolera AT 89S8253

Blok dijagram AT89S53 jezgraBlok dijagram AT89S53 jezgra ::

Page 13: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

3. 3. Opis i analiza mikrokontrolera AT 89S8253 Opis i analiza mikrokontrolera AT 89S8253

Detaljna struktura mikrokontrolera AT89S53Detaljna struktura mikrokontrolera AT89S53::

Page 14: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

3. 3. Opis i analiza mikrokontrolera AT 89S8253 Opis i analiza mikrokontrolera AT 89S8253

Opis pinovaOpis pinova::

Page 15: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler

Asembler smo simulirali i kompajlirali u Keil uVision 3 kompajleru. Asembler smo simulirali i kompajlirali u Keil uVision 3 kompajleru. Na osnovu asemblera napisanog u Keil-u generisali smo Na osnovu asemblera napisanog u Keil-u generisali smo heksadecimalni fajl koji smo kasnije koristili za programiranje heksadecimalni fajl koji smo kasnije koristili za programiranje našeg mikrokontrolera pomoću univerzalnog programatora, koga našeg mikrokontrolera pomoću univerzalnog programatora, koga će mo opisati malo kasnije.će mo opisati malo kasnije.

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

Page 16: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler

Name DACName DAC Program segment codeProgram segment code // Definisali smo konstante koje kasnije koristimo za programiranje sekvenci (komande koje // Definisali smo konstante koje kasnije koristimo za programiranje sekvenci (komande koje

zadajemo)zadajemo) uspon equ 1uspon equ 1 mirno equ 2mirno equ 2 dole equ 3dole equ 3 nanulu equ 4nanulu equ 4 pocetak equ 5pocetak equ 5 settimer equ 6settimer equ 6 cseg at 002BH // Naredba se pozicionira na toj memorijskoj lokaciji cseg at 002BH // Naredba se pozicionira na toj memorijskoj lokaciji

(lokacija na koju se postavlja registar programskog brojača kad se javi prekid Tajmera 2), (lokacija na koju se postavlja registar programskog brojača kad se javi prekid Tajmera 2), memorijska lokacija koja se odnosi na fleš memorijumemorijska lokacija koja se odnosi na fleš memoriju

jmp Timer_2jmp Timer_2

Potprogram koji definiše prekide kod tajmera 2Potprogram koji definiše prekide kod tajmera 2 Timer_2: Timer_2: CLR TF2 CLR TF2 // briše marker za prekid // briše marker za prekid

Page 17: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler Generisanje signala za LE kod D-lečaGenerisanje signala za LE kod D-leča SETBSETB P2.0 P2.0 // // PPostavlja bit0 na portu P2.0ostavlja bit0 na portu P2.0 CLRCLR P2.0 P2.0 // // OOdmah se zatim briše bit0 na portu P2.0 dmah 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žinu sekvence)Dekrementira i skače ako nije R2=0 (R2 je pomoćni registar i on odbrojava dužinu sekvence)

DJNZ R2,S0DJNZ R2,S0 // Registar R2 određuje dužinu trajanja deonice u okviru zadate // Registar R2 određuje dužinu trajanja deonice u okviru zadate sekvencesekvence

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

CALL CALL NOVANOVA__DEONICADEONICA // // KKada je R2=0 poziva se čitanje nove deoniceada je R2=0 poziva se čitanje nove deonice

RETIRETI // // PPovratak iz prekidaovratak iz prekida Nešto nalik Nešto nalik casecase strukturi (u odnosu na R1) kojom se određuje koja je deonica t strukturi (u odnosu na R1) kojom se određuje koja je deonica trrenutno aktivirana enutno aktivirana SS0: CJNE R1,#0: CJNE R1,#USPONUSPON, , SS1 1 // Skoči ako nije jednako // Skoči ako nije jednako CALL PP1 CALL PP1 // Ako jeste izvrši PP1 (potprogram)// Ako jeste izvrši PP1 (potprogram) SS1: CJNE R1,#1: CJNE R1,#MIRNOMIRNO,, S S22 CALL PP2CALL PP2 SS2: CJNE R1,#2: CJNE R1,#DOLEDOLE, , SS33 CALL PP3CALL PP3 SS3: CJNE R1,#3: CJNE R1,#NANULUNANULU,, S S44 CALL PP4CALL PP4 SS4: CJNE R1,#4: CJNE R1,#POCETAKPOCETAK,, S S55 CALL PP5CALL PP5 SS5: CJNE R1,#5: CJNE R1,#SETTIMER RETSETTIMER RET__II CALL CALL SETSET__TIMERTIMER RETRET__II:: RETIRETI // // ZZavršavamo avršavamo casecase strukturu i vraćamo se iz prekida strukturu i vraćamo se iz prekida Posle ispitivanja R1 registra izvršava se neki od sledećih potprogramaPosle ispitivanja R1 registra izvršava se neki od sledećih potprograma PPPP1: 1: INCINC P1 P1 // PP1 rastući // PP1 rastući RETRET PPPP2: 2: RETRET // PP2 mirno // PP2 mirno PPPP3: 3: DECDEC P1 P1 // PP3 opadajući // PP3 opadajući RETRET Dodeljuje portu P1 nulu, vraća ga na nuluDodeljuje portu P1 nulu, vraća ga na nulu PPPP4: 4: MOVMOV P1,#0 P1,#0 // PP4 vrati na 0 // PP4 vrati na 0 MOV MOV R2,#1R2,#1 RETRET Pošto R0 registar koristimo kao indeksni registar u PP5 vraćamo na početnu lokaciju u memoriju u koju je upisana sekvenca koja se Pošto R0 registar koristimo kao indeksni registar u PP5 vraćamo na početnu lokaciju u memoriju u koju je upisana sekvenca koja se

izvršava izvršava PPPP5: 5: MOV MOV R0,#020 R0,#020HH // PP5 na sekvenca od početka // PP5 na sekvenca od početka MOVMOV R2,#1 R2,#1 RET RET

Page 18: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler Potprogram kojim podešavamo trajanje Tajmera 2 tako što u capture registrima upisujemo vrednost od koje Tajmer 2 Potprogram kojim podešavamo trajanje Tajmera 2 tako što u capture registrima upisujemo vrednost od koje Tajmer 2

broji (to smo izračunali iz jednačine gore)broji (to smo izračunali iz jednačine gore)

PPodešavanje Tajmera 2odešavanje Tajmera 2 SETSET__TIMERTIMER:: MOV RCAP2H,@R0 MOV RCAP2H,@R0 // Iz memorijske lokacije na koju ukazuje registar R0 (indirektno // Iz memorijske lokacije na koju ukazuje registar R0 (indirektno

adresiranje) adresiranje)

INC R0 INC R0 // // P Pređi na sledeću memorijsku lokacijuređi na sledeću memorijsku lokaciju MOV RCAP2L,@R0MOV RCAP2L,@R0 INC R0INC R0 MOV R2,#1MOV R2,#1 RETRET // // V Vrati se iz potprogramarati se iz potprograma

Potprogram koji iščitava podatke o nova_deonica (šta treba sledeće da uradi)Potprogram koji iščitava podatke o nova_deonica (šta treba sledeće da uradi) nova_deonica: nova_deonica: MOV A,@R0 MOV A,@R0 // // IIsčitavanje parametara za novu deonicusčitavanje parametara za novu deonicu MOV R1,A MOV R1,A // R1 dobija vrednost iz memorijske lokacije R0 // 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 na nulu, vrati na početak sekvence ili U registru R1 se smešta kod stanja sekvence tj. da li je uspon, mirno, opada, vraća na nulu, vrati na početak sekvence ili

podesi trajanje Tajmera 2podesi trajanje Tajmera 2 INC R0INC R0 // Registar R0 služi kao indeksni registatr za čitanje zadate // Registar R0 služi kao indeksni registatr za čitanje zadate

sekvence iz RAM-asekvence 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 trajanje Ako je u R1 upisano uspon, mirno ili opada tada treba da se pročita još jedan parametar koji odrežđuje trajanje trajanje

stanja, zato služi sledeća case struktura kojom se ispituje da li je u R1 upisano jedno od ovih tri stanja, ako jeste onda se stanja, zato služi sledeća case struktura kojom se ispituje da li je u R1 upisano jedno od ovih tri stanja, ako jeste onda se vrši čitanje parametara u sledeće memorijske lokacije, ako nije završava se potprogramvrši čitanje parametara u sledeće memorijske lokacije, ako nije završava se potprogram

CJNE R1,#USPON , SD1CJNE R1,#USPON , SD1 // Struktura kojom ispitujemo da li je potrebno // Struktura kojom ispitujemo da li je potrebno isčitati drugi parametarisčitati drugi parametar

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

SD1:SD1: CJNE R1,#MIRNO, SD2 CJNE R1,#MIRNO, SD2 JMP READ_SPJMP READ_SP SD2:SD2: CJNE R1,#DOLE, RET_ND CJNE R1,#DOLE, RET_ND // Ako nije jedna od tri gore navedene // Ako nije jedna od tri gore navedene

sekvence onda nema drugog parametra pa treba preskočiti njegovo čitanjesekvence onda nema drugog parametra pa treba preskočiti njegovo čitanje READ_SP: READ_SP: MOV A,@R0MOV A,@R0 MOV R2,AMOV R2,A INC R0INC R0 RET_ND: RET_ND: RET RET Sledeći potprogram služi za unošenje sekvenceSledeći potprogram služi za unošenje sekvence

START_V: START_V: MOV R0,#020hMOV R0,#020h // U R0 se smešta početna lokacija na kojoj se u RAM-u // U R0 se smešta početna lokacija na kojoj se u RAM-u

smešta sekvencasmešta sekvenca MOV R2,#1 // U R2 se nalazi brojač u ovom slučaju treba da se izrši MOV R2,#1 // U R2 se nalazi brojač u ovom slučaju treba da se izrši

samo jedna prekidna rutina samo jedna prekidna rutina

Page 19: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler Programiranje sekvence koja se izvršavaProgramiranje sekvence koja se izvršava MOV @R0,#SETTIMERMOV @R0,#SETTIMER // Postavimo vrednost Tajmera // Postavimo vrednost Tajmera INC R0 // Pređi na sledeću mem lokacijuINC R0 // Pređi na sledeću mem lokaciju MOV @R0,#0FFH // Prvi parametar za viši registar Tajmera 2MOV @R0,#0FFH // Prvi parametar za viši registar Tajmera 2 INC R0 // Pređi na sledeću mem lokacijuINC R0 // Pređi na sledeću mem lokaciju MOV @R0,#0F0H // Drugi parametar za niži registar Tajmera MOV @R0,#0F0H // Drugi parametar za niži registar Tajmera

22 INC R0INC R0 MOV @R0,#USPONMOV @R0,#USPON INC R0INC R0 MOV @R0,#15 // Uspon traje 15 vremenskih intervalaMOV @R0,#15 // Uspon traje 15 vremenskih intervala

INC R0 INC R0 mov @R0,#MIRNOmov @R0,#MIRNO INC R0INC R0 MOV @R0,#10MOV @R0,#10 // Mirno traje 10 vremenskih intervala // Mirno traje 10 vremenskih intervala INC R0 INC R0 MOV @R0,#DOLEMOV @R0,#DOLE INC R0INC R0 MOV @R0,#12MOV @R0,#12 INC R0INC R0 MOV @R0,#NANULU // Traje jedan vremenski intervalMOV @R0,#NANULU // Traje jedan vremenski interval INC R0INC R0 MOV @R0,#pocetak MOV @R0,#pocetak MOV R0,#020HMOV R0,#020H RETRET Potprogram za inicijalizaciju Tajmera 2, upisujemo početne vrednosti u registre Tajmera 2Potprogram za inicijalizaciju Tajmera 2, upisujemo početne vrednosti u registre Tajmera 2 Init_timer: MOV TH2,#0FEHInit_timer: MOV TH2,#0FEH MOV TL2,#0EBHMOV TL2,#0EBH MOV RCAP2H,#0FEHMOV RCAP2H,#0FEH MOV RCAP2L,#0EBH MOV RCAP2L,#0EBH SETB ET2 // Omogućava prekide Tajmera 2SETB ET2 // Omogućava prekide Tajmera 2 SETB eEASETB eEA // Omogućava sve prekide // Omogućava sve prekide SETB TR2SETB TR2 // Start brojača Tajmera 2 // Start brojača Tajmera 2 RETRET RSEG PROGRAM // segment glavnog programa startuje od nulte memorijske lokacije u memoriji za RSEG PROGRAM // segment glavnog programa startuje od nulte memorijske lokacije u memoriji za

program (fleš memoriju)program (fleš memoriju)

Page 20: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. 4. AsemblerAsembler

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

MAIN:MAIN: CALL INIT_TIMER CALL INIT_TIMER CLR P2.0CLR P2.0 // Brisanje bita 0 porta P2 // Brisanje bita 0 porta P2 MOV P1,#0 // Postavi port P1 u MOV P1,#0 // Postavi port P1 u

00000000 00000000 CALL START_VCALL START_V // Programiranje sekvencu // Programiranje sekvencu JMP $JMP $ // Vrti se u beskonačnu petlju // Vrti se u beskonačnu petlju

ENDEND

Page 21: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2

Generalni opis UNP2 :Generalni opis UNP2 :

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

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

Page 22: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2

To je uređaj koji služi za programiranje ražličitih tipova To je uređaj koji služi za programiranje ražličitih tipova čipova ,tako što već gotov heksadecimalni fajl koji smo dobili u čipova ,tako što već gotov heksadecimalni fajl koji smo dobili u keil-u (asembler) učitava u čip. keil-u (asembler) učitava u čip.

Page 23: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2

Početni korisnički ekran izgleda ovakoPočetni korisnički ekran izgleda ovako ::

Page 24: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2

Page 25: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2

Page 26: MIKROPROCESORSKI SISTEMI SEMINARSKI RAD

4. Programiranje programatorom 4. Programiranje programatorom MEC UNP2 MEC UNP2