Za IR upravljanje paralelnim portom koristit ćemo poznatu shemu interfejsa koji se priključuje na serijski port PC računara a koja je prikazana na donjoj slici.
Program za kontrolu svih 8 pinova na Data portu napisan je u Visual Basic-u i njegovim pozivom dobiti ćemo sljedeću sliku.
Pritiskom na neki od programiranih tipkala na daljinskom upravljaču mijenjamo stanje odgovarajuće led diode od D0 – D7. Prije nego upotrebimo daljinski neophodno je da preuzmemo odgovarajuće IR kodove za pojedine diode a što se dobije pritiskom na Setup. Ekran za prijem IR kodova dan je na donjoj slici.
Pritiskom mišom na neku od dioda tipkala Preuzmi kod kod biti će dostupan. Pritiskom na njega program čeka da pritisnete odgovarajuću tipku na daljinskom kojim će te upravljati sa diodom D0. Nakon prijema IR koda ta dioda dobiti će plavu boju što znači da smo njen kod preuzeli. Postupak ponavljamo i za ostale led diode. Pritiskom na tipku Povratak vraćamo se u program kontrole. Jednom preuzeti kodovi biti će stalno zapamćeni u datotetci diode.dat. Pozivom Setup-a svi prethodni kodovi biti će automatski brisani pa ako ste eventualno ušli u njega tada treba da sve kodove ponovo preuzmete.
Ovim programom možete kontrolirati trokanalni interfejs ili neki njemu sličan koji koristi Data port. Glavni dio koda programa je onaj koji preuzima IR signal i on je sljedeći.
' ' _____________________________________________________ . Private Sub MSComm1_OnComm() Shape1(8).BackColor = RGB(0, 255, 0) While (MSComm1.InBufferCount > 0) Text5.Text = Text5.Text + MSComm1.Input Wend kod_txt = Text5.Text Postavi_diodu Shape1(8).BackColor = RGB(240, 122, 122) End Sub _____________________________________________________ Private Sub Postavi_diodu() For i = 0 To 7 If Diode_kod(i) <> kod_txt Then GoTo 10 End If If Stanje_dioda(i) = 0 Then Call SetPortBit(LPTadresa, i) Stanje_dioda(i) = 1 Shape1(i).BackColor = RGB(255, 0, 0) Else Call ClrPortBit(LPTadresa, i) Stanje_dioda(i) = 0 Shape1(i).BackColor = RGB(255, 255, 255) End If DoEvents 10: Next i End Sub . |
Čitanje IR signala vršimo u podprogramu MSComm1_OnComm(). Nakon preuzimanja signala pozivamo podprogram Postavi_diodu() u kojem ispitujemo da li je primljeni IR kod neki od kodova led dioda. Ako jes onda taj bit komadom SetPortBit(LPTadresa, i) postavljamo na 1, odnosno ako je bio na 1 vraćamo ga na nulu komandom ClrPortBit(LPTadresa, i). Također promijenimo i boju dane diode za koju je primljen signal.