User manual

22
Naslov
Ukaz
Komentar
00 4 0 A 0
01 7 1 A = A + 1
02 5 4 Vrata = A
03 5 9 PMW = A
04 2 6 Čakaj 100 ms
05 3 4 Skoči -4
40 71 54 59 26 34
Izpis programa 13: Zvišanje za 1
Dodatni primer je že bil prikazan v 4. poglavju. Podatki pri tem pridejo od analognega vhoda
AD1 in se prenesejo na izhodna vrata in na PWM-izhod. Spremenjen program vsebuje še en
dodatni računski korak, in sicer invertiranje vsebine spremenljivke A. Pri tem iz vrednosti
0000 nastane nova vrednost 1111, t.p. iz 0 nastane 15 in obratno. Zaradi višje vhodne
napetosti je manj PWM-tiskanja.
Naslov
Ukaz
Komentar
00 6 9 A = AD1
01 5 4 Vrata = A
02 7 A A = Not A
03 5 9 PWM = A
04 2 6 Čakaj 100 ms
05 3 5 Skoči -5
69 54 7A 59 26 35
Izpis programa 14: Invertiranje
Skoki in razcepi
......................................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................
Do sedaj je obstajal le en enostaven povratni skok (ukaz 3), ki je segal maksimalno 15
naslovov nazaj. Temu se je sedaj pridružil absolutni skok (Jump). Ker je cilj skoka možno
navesti le s štirimi biti, obstaja dodatni ukaz, ki določa zgornji polbajt naslova. S tem se dobi
naslovni prostor 0-255. To je več, kot je potrebno, saj EEPROM krmilnika zajema samo 128
bajtov, se pravi področje od 00 do 7F (decimalno od 0 do 127). Pomnilnik je s tem dejansko
razdeljen na osem strani, od strani 0 do strani 7 (Page 0–7). Pred absolutnim skokom je
potrebno določiti stran cilja skoka.
Dve for zanki s spremenljivkama C in D izvajata prav tako absolutne skoke, pri čemer pa je
tudi prej potrebno določiti stran naslova.
Pogojni skoki delujejo kot skip ukazi (izpust, preskok). Če je vsak pogoj resničen, se en
naslov preskoči. Tam bi se lahko nahajal, npr. ukaz za skok ali tudi računski ukaz. Kot pogoji
so na voljo primerjave med A in B, kot tudi neposredno bit poizvedovanje vhodnih vrat.
......................................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................
Poleg tega obstaja tudi priklic podprogramov (priklic) in pripadajoč ukaz za povratni skok
(ponastavitvena tipka). Dovoljenih je sicer več podprogramov, ampak iz podprograma ni
dovoljeno priklicati nobenega drugega podprograma, saj si prevajalnik zmeraj zapomni le en
naslov povratnega skoka.
80–8F: Adr-high = 0–15
90–0F: Neposredni skok (Jump) na Adr-high, Adr-low (0–15)
A0–AF: For zanka C-krat Adr-high, Adr-low (0–15)