Sandi  - inicializacija PIA umestnika, svetlobna signalizacija, stand-by, ter funkcija zelenega vala

Osnovni del moje naloge je bila svetlobna signalizacija v okviru katere sem realiziral tudi stand-by ter zeleni val. Za lazjo predstavo (lazje pisanje programa) pravilnega zaporedja preklapljanja luci, sem si narisal za vsako luc posebaj diagram preklapljanja.

V sklop mojega dela je sodila tudi inicializacija PIA vmestnika, pri kateri sem oba porta nastavil za izhodna. Poleg PIA-e sem v inicializacijsko rutino vstavil se vse spremenljivke, ki sem jih uporabil in jim predpisal zeljene zacetne vrednosti.

Sam program semaforja je enostaven in docela sledi narisanemu diagramu. Za krmiljenje vseh luci sem potreboval 10 linij, zato sem uporabljal cel port A in dve liniji porta B, PIA vmestnika. Port A je uporabljala samo moja rutina, zato mi ga ni bilo potrbno maskirati, med tem ko je port B uporabljal tudi sosolec (5. bit za piskanje), zato sem moral pri vsakokratni uporabi porta B maskirati 5. bit, da nisem motil delovanja sosolceve rutine.

Funkcijo stand-by se aktivira z vpisom vrednosti FF na lokacijo KMET, kar povzroci utripanje rumenih luci (semafor ne deluje). Deaktiviramo pa jo z vpisom vrednosti FF na lokacijo KMET2, kar sprozi tudi zeleni val (odpre smer v kriziscu, ki je zaporedna z drugimi krizisci v verigi zelenega vala). Vednosti na omenjeni lokaciji vpisuje sosolceva rutina serijskega komuniciranja.

Program semafor sem enkrat vpisal v urnik opravil, s cimer sem dolocil, da se program izvede 64 krat v sekundi in da PERIODA traja 0,5 sekunde (vsaka 32. ponovitev programa poveca PERIODO za 1). Trajanje periode 0,5 sek. sem dolocil zato, ker noben utrip luci ni krajsi od 0,5 sek. (glej diagram).

Tako kot je meni sosolceva rutina v dogovorjene lokacije vpisovala vrednosti za zagon z.v. in s.b. je tudi moja rutina na dolocene lokacije (GO1, GO2, STOP1) vpisovala vrednosti, ki so v rutini piskanja usklajevale svetlobno in zvocno signalizacijo (glej diagram).

Naloga je bila (glede luci, piskanka) omejena na ze izdelano maketo, vendar pa se delovanje zvocne in svetlobne signalizacije lahko dopolni s stevilnimi dodatnimi funkcijami, kot sta npr. zel. val in stand-by, ki smo ju mi dodali. Dodali bi lahko hardver ter softver za stetje prometa, ki bi mikrokrmilniskemu sistemu dajal informacijo o gostoti prometa v kriziscu, katera bi vplivala na casovno preklapljanje luci. Zlasti v casu "prometnih zamaskov", bi z omenjeno funkcijo pospesili promet, v nocnem casu pa bi zmanjsali nepotrebna cakanja v kriziscih, ki v nocnem casu delujejo kljub izredno redkemu prometu.

MOJ DEL NALOGE V EDITORJU