programiranje ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali...

5
SVET ELEKTRONIKE 31 11_2011 PROGRAMIRANJE Takoj na začetku naj opozorimo na morebitno napačno razumevanje: po- stopek, ki ga bomo opisali ne omogoča shranjevanja večjega števila samostoj- nih programov v programski pomnil- nik mikrokontrolerja! Namesto tega bomo pokazali več možnosti, kako znotraj enega programa »zapakirati« različne programe ali njihove različice, kako moramo takšen program orga- nizirati in želeni program ali njegovo različico izbrati, da ga bo mikrokon- troler izvajal. Izbiro programa lahko naredimo na več bolj ali manj zaple- tenih načinov, izbrali pa bomo najbolj preprostega, pri katerem program iz- beremo s konfiguracijskimi stikali ali z mikrostikali. IZBIRA PROGRAMA REŠITEV Z VEZJEM Slika 1 prikazuje »konfiguracijsko vez- Kako v programski prostor mikrokon- trolerja shraniti več programov Avtor: mag. Vladimir Mitrović Avtor: mag. Vladimir Mitrović E-pošta: [email protected] E-pošta: [email protected] Nekateri mikrokontrolerji imajo veliko več programskega pomnilnika, kot ga zares potrebujemo za določeno opravilo. To nam ponuja možnost, da v mikrokontroler istočasno vpišemo nekaj različic istega programa, lahko pa celo popolnoma različnih programov, ki se bodo izvajali namesto glavnega. To je lahko koristno med razhro- ščevanjem, za demo programe, za različne izpise in še v mnogih drugih primerih. Postopek bomo ilustrirali za mikrokontrolerje iz družin AVR in 8051, ki jih programiramo v Bascom-u, kot idejo pa ga lahko uporabimo tudi za programiranje v drugih programskih jezikih in celo z drugimi družinami mikrokontrolerjev je«, sestavljeno iz treh stikal ali mikro- stikal (S1, S2 in S3), ki omogočajo izbiro enega izmed osmih zapisanih programov v programskem pomnilni- ku mikrokontrolerja. V odvisnosti od naših potreb lahko to število še pove- čamo ali zmanjšamo: če dodamo le še eno stikalo, bomo lahko izbirali med 16-timi programi, kar pa bomo le red- ko potrebovali. Slika 2 prikazuje DIL-stikala (levo) in kodno stikalo (desno), ki sta primer- na za uporabo v vezju na sliki 1. V prikazanem stikalu so vgrajena po 4 mikrostikala. DIL-stikala proizvajajo v izvedbah z različnim številom vgra- jenih mikrostikal; za uporabo v vezju na sliki 1 bo najprimernejše trojno sti- kalo. Razen v heksadecimalni izvedbi s slike 2, so kodna stikala lahko še BCD (4 mikrostikala, 10 položajev) ali v ok- talni izvedbi (3 mikrostikala, 8 polo- žajev). Za uporabo v vezju na sliki 1 bi bilo najprimernejša oktalna izvedba, uporabimo pa lahko tudi vse ostale, če priključek mikrostikala, ki predstav- lja najpomembnejši bit, pustimo ne- priključen. V primerjavi z DIL-stikali, je kodno sti- kalo primernejša rešitev, saj je s polo- žajem vrtljivega dela nazorno prikazan izbrani program. Slaba stran kodnih stikal pa je, da imajo po en priključek vsakega od vgrajenih mikrostikal in- terno povezan na skupni izhodni pri- ključek stikala, zato ga v vseh primerih ne moremo uporabiti. DIL-stikalo je v tem smislu bolj prilagodljivo, saj ima- jo vsi priključki mikrostikal lastne pri- ključke tudi na ohišju. Slika 1 prikazuje tri različice, od kate- rih je leva (slika 1a) najenostavnejša. V tej vezavi lahko uporabimo DIL stika- lo ali kodno stikalo. Slabost te vezave je, da se priključki mikrokontrolerja, Slika 1: S priključitvijo stikal omogočimo izbiro programa

Upload: others

Post on 25-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROGRAMIRANJE Ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti

SVET ELEKTRONIKE 3111_2011

PROGRAMIRANJE

Ta koj na za čet ku naj opo zo ri mo na mo re bit no na pač no ra zu me va nje: po-sto pek, ki ga bo mo opi sa li ne omo go ča shra nje va nja ve čje ga šte vi la sa mo stoj-nih pro gra mov v pro gram ski pom nil-nik mi kro kon tro ler ja! Na me sto te ga bo mo po ka za li več mož no sti, ka ko zno traj ene ga pro gra ma »za pa ki ra ti« raz lič ne pro gra me ali nji ho ve raz li či ce, ka ko mo ra mo tak šen pro gram or ga-ni zi ra ti in že le ni pro gram ali nje go vo raz li či co iz bra ti, da ga bo mi kro kon-tro ler iz va jal. Iz bi ro pro gra ma lah ko na re di mo na več bolj ali manj za ple-te nih na či nov, iz bra li pa bo mo naj bolj pre pro ste ga, pri ka te rem pro gram iz-be re mo s kon fi gu ra cij ski mi sti ka li ali z mi kro sti ka li.

IZ BI RA PRO GRA MA – RE ŠI TEV Z VEZ JEMSli ka 1 pri ka zu je »kon fi gu ra cij sko vez-

Ka ko v pro gram ski pro stor mi kro kon-tro ler ja shra ni ti več pro gra mov

Av tor: mag. Vladimir MitrovićAv tor: mag. Vladimir MitrovićE-poš ta: [email protected]š ta: [email protected]

Ne ka te ri mi kro kon tro ler ji ima jo ve li ko več pro gram ske ga pom nil ni ka, kot ga za res po tre bu je mo za do lo če no opra vi lo. To nam po nu ja mož nost, da v mi kro kon tro ler isto ča sno vpi še mo ne kaj raz li čic iste ga pro gra ma, lah ko pa ce lo po pol no ma raz lič nih pro gra mov, ki se bo do iz va ja li na me sto glav ne ga. To je lah ko ko ri stno med raz hro-šče va njem, za de mo pro gra me, za raz lič ne iz pi se in še v mno gih dru gih pri me rih. Po sto pek bo mo ilus tri ra li za mi kro kon tro ler je iz dru žin AVR in 8051, ki jih pro gra mi ra mo v Ba scom-u, kot ide jo pa ga lah ko upo ra bi mo tu di za pro gra mi ra nje v dru gih pro gram skih je zi kih in ce lo z dru gi mi dru ži na mi mi kro kon tro ler jev

je«, se stav lje no iz treh sti kal ali mi kro-sti kal (S1, S2 in S3), ki omo go ča jo iz bi ro ene ga izmed osmih za pi sa nih pro gra mov v pro gram skem pom nil ni-ku mi kro kon tro ler ja. V od vi sno sti od na ših po treb lah ko to šte vi lo še po ve-ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti mi pro gra mi, kar pa bo mo le red-ko po tre bo va li.

Sli ka 2 pri ka zu je DIL-sti ka la (le vo) in ko dno sti ka lo (de sno), ki sta pri mer-na za upo ra bo v vez ju na sli ki 1. V pri ka za nem sti ka lu so vgra je na po 4 mi kro sti ka la. DIL-sti ka la pro iz va ja jo v iz ved bah z raz lič nim šte vi lom vgra-je nih mi kro sti kal; za upo ra bo v vez ju na sli ki 1 bo naj pri mer nej še troj no sti-ka lo. Ra zen v hek sa de ci mal ni iz ved bi s sli ke 2, so ko dna sti ka la lah ko še BCD (4 mi kro sti ka la, 10 po lo ža jev) ali v ok-tal ni iz ved bi (3 mi kro sti ka la, 8 po lo-ža jev). Za upo ra bo v vez ju na sli ki 1 bi

bi lo naj pri mer nej ša ok tal na iz ved ba, upo ra bi mo pa lah ko tu di vse osta le, če pri klju ček mi kro sti ka la, ki pred stav-lja naj po mem bnej ši bit, pu sti mo ne-pri klju čen.

V pri mer ja vi z DIL-sti ka li, je ko dno sti-ka lo pri mer nej ša re ši tev, saj je s po lo-ža jem vrt lji ve ga de la na zor no pri ka zan iz bra ni pro gram. Sla ba stran ko dnih sti kal pa je, da ima jo po en pri klju ček vsa ke ga od vgra je nih mi kro sti kal in-ter no po ve zan na sku pni iz ho dni pri-klju ček sti ka la, za to ga v vseh pri me rih ne mo re mo upo ra bi ti. DIL-sti ka lo je v tem smi slu bolj pri la god lji vo, saj ima-jo vsi pri ključ ki mi kro sti kal la stne pri-ključ ke tu di na ohi šju.

Sli ka 1 pri ka zu je tri raz li či ce, od ka te-rih je le va (sli ka 1a) naj e no stav nej ša. V tej ve za vi lah ko upo ra bi mo DIL sti ka-lo ali ko dno sti ka lo. Sla bost te ve za ve je, da se pri ključ ki mi kro kon tro ler ja,

Sli ka 1: S pri klju či tvi jo sti kal omo go či mo iz bi ro pro gra ma

Page 2: PROGRAMIRANJE Ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti

32 SVET ELEKTRONIKE 11_2011

ki so upo rab lje ni za bra nje sti ka la, ne mo re jo upo rab lja ti v dru ge na me ne. Ta ve za va je do be se dno po trat na z vi-ri mi kro kon tro ler ja: po lo žaj teh sti kal na mreč be re mo na za čet ku pro gra ma in mor da ob ča sno še med iz va ja njem pro gra ma, si cer pa so ti pri ključ ki po-pol no ma ne iz ko ri šče ni.

To lah ko po pra vi mo z do da ja njem treh MO SFET tran zi stor jev (sli ka 1b). Po tre bu je mo še če tr ti pri klju ček, s ka-te rim vkla plja mo in iz kla plja mo tran zi-stor je. Po lo ža je kon fi gu ra cij skih sti kal lah ko pre be re mo sa mo ta krat, ka dar so tran zi stor ji vklju če ni. Ko tran zi stor-je iz klo pi mo, osta ne jo pri ključ ki za bra nje sti kal pro sti i njih lah ko upo ra-bi mo kot obi čaj ne vho dne ali iz ho dne pri ključ ke (za dru ge na me ne osta ne ne u po ra ben le pri klju ček, s ka te rim vkla plja mo in iz kla plja mo tran zi stor je, na sli ki P3.3/PD3). Pred po goj pri tem je, da ele men ti ali vez ja, ki so pri klju-če na na te pri ključ ke, ne bo do vpli va li na re zul tat pri bra nju sti kal ali da po dru gi stra ni skle nje no mi kro sti ka lo ne bo vpli va lo na de lo va nje pri klju če ne ga vez ja. Pri po ro člji vo je, da te pri ključ-ke upo ra bi mo le za eno stav ne na lo ge, na pri mer za pri ži ga nje sig nal nih LED di od. Pa ven dar - če do bro poz na mo pro to kol ko mu ni ka ci je, jih lah ko upo-ra bi mo ce lo za po ši lja nje po dat kov na al fa nu me rič ni pri ka zo val nik ali za ko-mu ni ka ci jo z dru gi mi na pra va mi.

Za ra di le ene ga sku pne ga pri ključ ka ko dna sti ka la ni so pri mer na za upo-ra bo v vez ju na sli ki 1b. Lah ko jih bo-mo upo ra bi li z maj hno pre de la vo vez-ja, kar je pri ka za no na sli ki 1c. V tem vez ju so po lo ža ji tran zi stor jev in sti kal za me nja ni, ta ko da so sti ka la s svo jim sku pnim pri ključ kom se daj po ve za na na ma so.

Pri ključ ki mi kro kon tro ler ja, ki so na sli ki 1 upo rab lje ni za bra nje sta nja

sti kal in uprav lja nje s tran zi stor ji, so skla dni s pri me ri pro gra mov v na da-lje va nju. Z us trez ni mi spre mem ba mi v pro gra mih je mo go če na enak na čin upo ra bi ti ka te ro ko li dru go kom bi na-ci jo pri ključ kov.

IZ BI RA PRO GRA MA - PRO GRAM SKE RE ŠI TVEČe prav smo na sli ki 1 po nu di li več raz-lič nih ve zav, so pro gram ski pri me ri v na da lje va nju upo ra bni pri vseh. Z dru-gi mi be se da mi - struk tu ra pro gra ma se ne spre me ni, če prav se odlo či mo za dru go ve za vo. Edi na po dro bnost, ki je od vi sna od ve za ve, je bra nje sta nja sti-kal: v vez jih na sli kah 1b in 1c je po tre-bno pred bra njem vklo pi ti tran zi stor-je, če pa upo ra bi mo vez je s sli ke 1a, to se ve da ni po tre bno.

Če bo ste upo ra bi li ko dno sti ka lo, mo ra te naj prej pre ve ri ti, ka ko se obna ša vaš pri me rek: ne ka te ra sti ka-la ima jo v po lo ža ju »0« vsa mi kro sti-ka la skle nje na in jih mi kro kon tro ler be re kot »000«, pri dru gih so sti ka la v tem po lo ža ju raz kle nje na, za to jih mi kro kon tro ler vi di kot »111«. To se-ve da ve lja za vsa mi kro sti ka la v ko-dnem sti ka lu, za to je po jav pri so ten v vseh po lo ža jih ko dne ga sti ka la: po-lo žaj »1« je lah ko ko di ran kot »001« ali kot »110« in ta ko na prej. Raz li ka v ko di ra nju ne vpli va na struk tu ro pro gra ma, vpli va pa na uka ze raz ve-ja nja v pro gra mu.

Na za čet ku pro gra ma naj prej de fi ni-ra mo spre men ljiv ko »S321«, v ka te ro bo mo po bra nju za pi sa li sta nje sti kal in kon fi gu ri ra mo pri ključ ke vrat za nji-ho vo bra nje:

Dim S321 As Byte

Con fig Pind.0 = In putPortd.0 = 1Con fig Pind.1 = In putPortd.1 = 1Con fig Pind.2 = In putPortd.2 = 1

Če bo mo upo ra bi li ka te ro izmed ve zav s tran zi stor ji, bo mo kr mil ni pri klju ček na sta vi li kot iz hod in ga po sta vi li v sta-nje »0« (tran zi stor ji iz klo plje ni):

Con fig Pind.3 = Out putPortd.3 = 0

Na pi sa ti mo ra mo tu di pod pro gram za bra nje sti kal. V raz li či ci brez tran zi-stor jev sta nje sti kal pre be re mo z enim sa mim uka zom:

Be ri_s123: S321=Pind And &B00000111Re turn

V raz li či cah ve zij s tran zi stor ji mo ra-mo pred bra njem sti kal vklo pi ti tran-zi stor je:

Be ri_s123: Portd.3 = 1 Waitms 25 S321=Pind And &B00000111 Portd.3 = 0Re turn

Ko sti ka la pre be re mo, tran zi stor je spet iz klo pi mo (Portd.3 = 0). Ka dar za ra di dru gih za htev sti ka la be re mo na V/I pri ključ kih, ki ni so »drug po leg dru ge ga« ali ce lo pri pa da jo raz lič nim vra tom, bo mo ral bi ti pod pro gram za bra nje sti kal pri bliž no tak šen:

Be ri_s123: S321 = 0 S321.0 = Pinx.y S321.1 = Pinx.y S321.2 = Pinx.yRe turn

Na me sto »x.y« mo ra mo vpi sa ti re snič-na ime na V/I pri ključ kov, ki si pri klju-če ni na sti ka la. Se ve da mo ra mo pred tem te pri ključ ke de fi ni ra ti kot vho-dne in jim vklo pi ti no tra nje »pull-up« upo re, kot smo to uvo do ma na re di li pri PIND.0, PIND.1 in PIND.2. Ka dar ima mo prak tič no ve za vo s tran zi stor-ji, jih je tre ba pred bra njem se ve da še vklo pi ti in po bra nju iz klo pi ti.

PRI MER 1V naj pre pro stej šem pri me ru se sta nje sti kal pre be re le na za čet ku pro gra ma, po tem pa gle de na vre dnost spre men-ljiv ke »S321« sko či mo na ene ga od pro gra mov:

Do Go sub Be ri_s321 If S321 = &B00000000

Sli ka 2: DIL-sti ka la (le vo) in ko dna sti ka la (de-sno) so pri mer na za upo ra bo v vez ju na sli ki 1

PROGRAMIRANJE

Page 3: PROGRAMIRANJE Ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti

SVET ELEKTRONIKE 3311_2011

Then Go to Prog0 If S321 = &B00000001 Then Go to Prog1 If S321 = &B00000010 Then Go to Prog2 If S321 = &B00000011 Then Go to Prog3' ...Lo op

Šte vi lo »IF« uka zov bo od vi sno od šte-vi la pro gra mov, ki smo jih vklju či li. V na šem pri me ru ima mo šti ri pro gra me. Če je pre bra na tak šna kom bi na ci ja sti kal, ki še ni ma svo je ga pro gra ma, se bo mo vr te li v »iz lo či tve ni zan ki« in ča ka li to li ko ča sa, da se sta nje sti kal spre me ni. Ta koj, ko bo pre bra na kom-bi na ci ja, ki ji pri pa da ka te ri od pro-gra mov, sko či mo iz iz lo či tve ne zan ke na za če tek te ga pro gra ma. Če prav tak šen iz hod iz DO-LO OP zan ke ni do ku men ti ran, je v Ba sco mu do vo ljen in za sa bo ne pu šča no be nih ne re še nih skli cev.

Pro gram, na ka te re ga smo sko či li, ima lah ko obi čaj no struk tu ro; zač ne se z ini ci ja li za ci jo spre men ljivk, V/I pri-ključ kov in dru gih mi kro kon tro ler je-vih vi rov in se na da lju je z ne skon čno zan ko, v ka te ri se iz va ja jo pred vi de ne na lo ge:

Prog0:'...'ini ci ja li za ci ja'...

Do

'...'glav na zan ka Prog0'...Lo op

Na enak na čin de fi ni ra mo tu di osta le pro gra me.

PRE DNO STI TE RE ŠI TVE:re ši tev je ze lo »pre gle dna«, ker so »pro gra mi po pol no ma lo če ni eden od dru ge ga,vsak pro gram ima struk tu ro, ki je »ena ka ti sti, ki bi jo imel tu di v pri-me ru, da je v pro gram ski pom nil-nik vpi san sam,vsak pro gram lah ko iz ko ri šča vse »vi re mi kro kon tro ler ja ne od vi sno od osta lih pro gra mov v pom nil ni-ku (iz je ma so V/I pri ključ ki za bra-nje sta nja sti kal, kot smo po ja sni li prej),pro gra mi si lah ko de li jo isti RAM »pro stor za de fi ni ra nje spre men ljivk (Dim ... Overlay),pro gra mi ima jo lah ko sku pne pod- »pro gra me.

PO MANJ KLJI VOST TE RE ŠI TVE:ker se bra nje sta nja sti kal iz va ja le »en krat, či sto na za čet ku glav ne ga pro gra ma, bo mo spre mem bo sta-nja sti kal zaz na li le, če re se ti ra mo mi kro kon tro ler.

PRI MER 2V tem pri me ru se vsi pro gra mi na ha ja-jo zno traj »iz lo či tve ne zan ke«:

Do Go sub Be ri_s321 If S321=&B00000000 Then '* Prog0 * '... 'ini ci ja li za ci ja 'Prog0 '... While S321=&B00000000 '... 'glav na zan ka Prog0 '... Go sub Be ri_s321 Wend ' ' po či sti za sa bo ' End If

If S321=&B00000001 Then '* Prog1 * '... 'ini ci a li za ci ja Prog1 '... While S321=&B00000001 '... 'glav na zan ka Prog1 '... Go sub Be ri_s321 Wend ' 'po či sti za sa bo ' End If

' ...Lo op

Po uvo dnem bra nju sti kal sle di sku-pi na IF uka zov, s ka te ri mi pre ve ri mo

PROGRAMIRANJE

Page 4: PROGRAMIRANJE Ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti

34 SVET ELEKTRONIKE 11_2011

ka te re ga od pro gra mov mo ra mo pog na ti. V na šem pri me ru sta za ra di pre gle dno sti vklju če na le dva pro gra-ma, se ve da pa jih po ena kem pra vi lu do da mo še več. Ko je iz pol njen po goj v IF stav ku, se zač ne iz va ja ti iz bra ni pro gram. Pro gram zač ne z ini ci a li za-ci jo spre men ljivk, V/I pri ključ kov in dru gih vi rov mi kro kon tro ler ja, po tem pa na da lju je z WHILE-WEND zan-ko, v ka te ri pro gram iz va ja do lo če-ne ak tiv no sti vse do tre nut ka, ko se spre me ni sta nje kon fi gu ra cij skih sti-kal. Da bi pro gram zaz nal spre mem-bo sta nja sti kal, je po tre bno nji ho vo sta nje pre bra ti pri vsa kem pre ho du sko zi WHILE-WEND zan ko. V na šem pri me ru je klic pod pro gra ma »Be-ri_S321« po stav ljen či sto na ko nec zan ke. Če se je sta nje sti kal spre me-ni lo, bo pro gram za pu stil tre nut no WHILE-WEND zan ko in se »ujel« v na sled njo, v ti sto, ki us tre za no ve mu sta nju sti kal.

Da bi pre hod iz zan ke v zan ko ozi ro-ma za klju ček ene ga pro gra ma in za-če tek iz va ja nja dru ge ga po te kal brez te žav, je nuj no, da vsak za klju čen pro gram po za pu šča nju While-Wend zan ke »po či sti za sa bo«. To „či šče-nje“ bo od vi sno od te ga, ka te re vi re mi kro kon tro ler ja je prav kar za klju-če ni pro gram upo rab ljal: usta vi ti je tre ba ča sov ni ke, one mo go či ti ak tiv ne pre ki ni tve in po do bno. Vse bi ne spre-

men ljivk ni po tre bno či sti ti, če vsak od »ug nez de nih« pro gra mov na za-čet ku ini ci a li zi ra spre men ljiv ke, ki jih upo rab lja.

PRE DNO STI TE RE ŠI TVE:če je pri šlo do spre mem be sta nja »sti kal, se bo no vi pro gram za čel iz va ja ti ta koj, ko se iz ve de zad nji ukaz glav ne zan ke pro gra ma, ki se tre nut no iz va ja,vsak pro gram ima struk tu ro, ki je »ena ka ti sti, ki bi jo imel tu di v pri-me ru, da je v pro gram ski pom nil-nik vpi san sam,vsak pro gram lah ko iz ko ri šča vse »vi re mi kro kon tro ler ja ne od vi sno od osta lih pro gra mov v pom nil ni-ku (iz je ma so V/I pri ključ ki za bra-nje sta nja sti kal, kot smo po ja sni li prej),pro gra mi si lah ko de li jo isti RAM »pro stor za de fi ni ra nje spre men ljivk (Dim ... Overlay),pro gra mi ima jo lah ko sku pne pod- »pro gra me.

PO MANJ KLJI VO STI TE RE ŠI TVE:bolj za ple te na struk tu ra glav ne ga »pro gra ma,po tre bno je „či šče nje“ po za ključ- »ku pro gra ma.

PRI MER 3Po do bno kot smo vi de li v dru gem, tu-

di tre tji pri mer omo go ča »te ko či« pre-hod iz ene ga u drug pro gram, ne da bi bi lo po tre bno re se ti ra ti mi kro kon-tro ler. WHILE-WEND zank, zno traj ka te rih se je v dru gem pri me ru vr tel iz bra ni pro gram (do kler je bi lo ta ko na stav lje no s kon fi gu ra cij ski mi sti ka li) tu ni več, za to je pro gram po stal eno-stav nej ši:

'... 'sku pna ini ci a li za ci ja 'vseh pro gra mov'...

Do Go sub Be ri_s321 If S321=&B00000000 Then '* Prog0 * '... 'glav na zan ka Prog0 '... End If

If S321=&B00000001 Then '* Prog1 * '... 'glav na zan ka Prog1 '... End If

' ...Lo op

Vlo go glav ne DO-LO OP zan ke vseh pro gra mov (v tem pri me ru sta si cer

Dis

pleji

z osvetlit

vijo

1eld0071

1eld0073

www.svet-el.si 11e1e1e1eld00eld00

1el1el1eld0073eld0073lld0073

1eld0091

1eld0094

2 x

16 z

nako

v

128 x

64 p

ik

128 x 64 p

ik 4 x 20 znakov

2 x 8 znakov

1eld0051

www.svet-el.sivet-el.sit-vet-el

2 x

2 x

22 x

64 p

ikkpikk

1eld000051eld000051el

cenov

no

ugo

dni

PROGRAMIRANJE

Page 5: PROGRAMIRANJE Ka ko v pro gram ski pro stor mi kro kon- tro ler … · 2020. 5. 8. · ča mo ali zma njša mo: če do da mo le še eno sti ka lo, bo mo lah ko iz bi ra li med 16-ti

SVET ELEKTRONIKE 3511_2011

sa mo dva, ven dar jih lah ko na enak na čin do da mo še več) je pre vze la DO-LO OP zan ka glav ne ga (iz bir ne ga) pro-gra ma za to je pro gram ski tok se daj tak šen:

na za čet ku iz bir ne DO-LO OP zan- »ke glav ne ga pro gra ma pre be re mo sta nje sti kal in iz ve de mo ti sti IF-END IF ukaz, ki us tre za tre nut ne-mu sta nju sti kal,zno traj vsa ke ga IF-END IF pa ra se »na ha ja ce lo ten pro gram ali ena od raz li čic pro gra ma,po iz ho du iz tre nut no ak tiv ne IF- »END IF struk tu re bo pro gram pre-sko čil vse osta le IF stav ke, do kler ga LO OP ukaz ne vr ne na za če tek zan ke in po nov no bra nje sta nja sti-kal,do kler se sta nje sti kal ne spre me ni, »se bo ci klič no iz va ja la ista IF-END IF struk tu ra - iz va jal se bo isti iz-bra ni pro gram,ta koj, ko se bo sta nje sti kal spre- »me ni lo, se bo za če la iz va ja ti dru ga IF-END IF struk tu ra – te kel bo na no vo iz bran pro gram.

Ker v ta ko po e no stav lje ni re ši tvi pro-gra mi ne mo re jo ime ti la stne ru ti ne za ini ci a li za ci jo, am pak si vsi pro gra mi de li jo isto, bo ta re ši tev us trez na, če že li mo sku paj »za pa ki ra ti« ne kaj po-do bnih raz li čic iste ga pro gra ma. Če so pro gra mi raz lič ni, si sme jo iste vi re mi-kro kon tro ler ja (na pri mer ča sov ni ke)

de li ti sa mo ta krat, če jih upo rab lja jo na enak na čin. De li jo si lah ko tu di iste spre men ljiv ke, če se nji ho va vse bi na ne pre ne se v na sled nje iz vr še va nje glav ne pro gram ske zan ke.

PRE DNO STI TE RE ŠI TVE:bolj eno stav na in ob ma njši po ra bi »pom nil ni ka, kot v dru gem pri me-ru,če se je spre me ni lo sta nje na sti ka- »lih, se bo no vi pro gram za čel iz va-ja ti ta koj, ko se bo iz ve del zad nji ukaz IF-END IF struk tu re pro gra-ma, ki se tre nut no iz va ja,pro gra mi ima jo lah ko sku pne pod- »pro gra me.

PO MANJ KLJI VO STI TE RE ŠI TVE:vsi pro gra mi upo rab lja jo sku pno »ru ti no za ini ci a li za ci jo,pro gra mi si lah ko de li jo iste RAM »spre men ljiv ke sa mo v pri me ru, da pri vsa kem no vem vsto pu v IF-END IF struk tu ro iz ve de mo nji ho vo po-nov no ini ci a li za ci jo,po sa mez ni pro gram lah ko upo- »rab lja nek vir mi kro kon tro ler ja sa-mo ta krat, če je to v skla du z na-či nom, kot ga upo rab lja jo dru gi pro gra mi iz »pa ke ta« ali če se ob vsa kem no vem vsto pu v IF-END IF struk tu ro zno va iz ve de nje go va ini ci a li za ci ja.

PRI ME RI PRO GRA MOV ZA AVR IN 8051 MI KRO KON-TRO LER JEV ure dniš tvu re vi je lah ko do bi te ce lot-ne pri me re pro gra mov »Bku tak14_1.bas«, »Bku tak14_2.bas« in »Bku-tak14_3.bas«. V teh pri me rih je ce lot na struk tu ra pri me rov 1, 2 in 3 za po šti ri pro gra me, z mož nos tjo raz ši ri tve na še ve čje šte vi lo vgra je nih pro gra mov. Če upo rab lja te drug mi kro kon tro-ler na me sto ome nje ne ga ATtiny2313, mo ra te le spre me ni ti ukaz, ki do lo ča ci ljni mi kro kon tro ler ($reg fi le = »atti-ny2313.dat«), vse osta lo v pro gra mih osta ja ena ko. Če upo rab lja te dru ge V/I pri ključ ke za bra nje sta nja sti kal, na re di te ta ko, kot je po jas nje no v uvo-dnem de lu član ka.

Za upo ra bni ke mi kro kon tro ler-jev iz dru ži ne 8051 so pri prav lje ni pri me ri »Bku tak14_8051_1.bas«, »Bku tak14_8051_2.bas« in »Bku-tak14_8051_3.bas«. Pro gram ske struk tu re so sko raj ena ke, raz li ke so sa mo pri ime no va nju V/I pri ključ kov in nji ho vi kon fi gu ra ci ji (tu je po tre bno le po stav lja nje vho dne ga pri ključ ka v sta nje »1«). Ve lja jo iste pri pom be kot za AVR pro gra me. Tu di te pri me re pro gra mov lah ko do bi te v ure dniš tvu re vi je Svet elek tro ni ke.

www.svet-el.siwww.svet-el.si

PROGRAMIRANJE

MegaPinrAZVOJNO ORODJE

www.svet-el.si

programator AVR

JTAG programiranje

razhroščevalnik

SD kartica

Združenih več funkcij.

. . .

Razvojno Orodje Vsebuje:

- 8 tipk

-programator AVR

-razhroščevalnik

-USB napajanje

-SD podnožje

-JTAG programiranje (ni v verziji B)

MegaPin postrežemo

z vsem

proggy II