[ Struja01 @ 21.05.2008. 23:30 ] @
Pozdrav svima,

Napisao sam (skromni) program koji bi trebao da simulira semafor. Radim ga za PIC 16F627. Razmisljao sam da postavim potenciometar koji bi skracivao ili povecao vremenski interval sa prelaska crveno na crveno,zuto pa na zeleno.. znaci kada skracivam vreme npr za 20 % ili za 50%...
Radim u PBP-u. Zna li neko kako bi se to moglo izvesti?

Evo programa:

i var byte
B0 VAR BYTE
B1 var byte

TRISB = 0 'Postavi sve pinove porta B kao izlazne

Pocetak:
B0 = 1 'Promenljivu B0 postavi na visoki nivo
B1 = 0 'Promenljivu B1 postavi na niski nivo
PORTB.0 = B0 'Vrednost B0 posalji na pin RB.0 - pali se crvena led
PORTB.1 = B0 'Vrednost B0 posalji na pin RB.1 - pali se zuta led
PORTB.5 = B1 'Vrednost B1 posalji na pin RB.5 - zelena ugasena
pause 100 'Zadrzi program 100 ms tj. 0.1 sekunda

B0 = 1
B1 = 0
PORTB.5 = B0 ' zelena
PORTB.0 = B1 'crvena
PORTB.1 = B1 'zuta
PAUSE 1000

B0 = 1
B1 = 0
PORTB.1 = B0
PORTB.0 = B1
PORTB.5 = B1
PAUSE 100

B0 = 1
B1 = 0
PORTB.0 = B0
PORTB.1 = B1
PORTB.5 = B1
PAUSE 1000


GOTO POCETAK 'Vrati se na pocetak programa
END
[ Sepa011 @ 22.05.2008. 07:05 ] @
Evo ti nesto sto je po tvojim zeljama:
Code:
Zuto   var PORTB.1
Crveno var PORTB.0
Zeleno var portb.5
Brzina var PORTA.0      ' Ovo promeni u pin kontrolera koji tebi odgovara
                        ' samo da nije RA.4

Kasnjenje var word

PORTB = 0   ' Svi pinovi PORTB na log. 0

PromenaBrzine:
    POT Brzina, 120, Kasnjenje
    Kasnjenje = Kasnjenje * 6
    if Kasnjenje < 800 then
        Kasnjenje = 800
    endif
Return


Pocetak:
' Da krenemo od crvenog na semaforu
GoSub PromenaBrzine
High Crveno
Pause Kasnjenje

' Dodacemo i zuto
High Zuto
pause 100

' Prelazimo na zeleno
Low Crveno
GoSub PromenaBrzine
Low Zuto
High Zeleno
pause Kasnjenje

' Vracamo se unazad paljenjem zute
High Zuto
Low Zeleno
pause 100
goto Pocetak

end
[ Struja01 @ 22.05.2008. 09:00 ] @
Hvala na programu, ali kada ga ubacim na simulator i startujem ga pojavi mi se prozorcic na kom pise "Hardware Stack Underflow". Je li to znaci da smo premasili flash memoriju mikrokontrolera ili sta vec?
[ Sepa011 @ 22.05.2008. 15:43 ] @
Promeni simulator
[ Struja01 @ 22.05.2008. 20:32 ] @
Koji simulator koristite Vi, ja kako god da ovde napravim on nece:S?
[ Sepa011 @ 22.05.2008. 20:59 ] @
Ja ne koristim simulatore, sve proverim na konkretnom hardveru.
[ Struja01 @ 22.05.2008. 21:48 ] @
Blago vama , onda ako kod vas radi to je extra . Hvala jos jednom.
Ovaj sitni projekat mogu da ponovim samo jednom, pa cu postaviti shemu i ako neko ima vremena da pogleda da li je ispravna, ovo mi je prvi projekat koji cu uraditi, pa zato.

Jedan potenciometar sluzi za regulaciju brzine crvenog i zelonog svjetla, a drugi za regulaciju zutog svjetla. I je li ne mogu staviti vrednosti potenciometra ispod 5 kilooma???

JP1 je ulazni napon 5V tokoliko sam planirao, na JP1 1 nozica je minus a 2 nozica je plus.

JP2 zelena, zuta, crvena, minus (masa)

E sad zanima me dali sam dobro prikopcao otpornik R1, taster S1 koji bi trebali da mi sluze za reset MCU-a, i potenciometre?

Ja se izvinjavam ako vas davim ovim glupim pitanjima, ali meni je potrebno da budem siguran.



[ Sepa011 @ 23.05.2008. 10:11 ] @
Kao prvo, gornji krajevi potenciometara NE IDU na napajanje!

Sto se reseta tice, to je OK.

Zasto ti je RA7 na masi?

Evo ti ispravljena sema toga sto ti hoces da napravis.

[ Struja01 @ 23.05.2008. 10:49 ] @
Citat:
Sepa011: Kao prvo, gornji krajevi potenciometara NE IDU na napajanje!
Zasto ti je RA7 na masi?


E hvala na shemi i na svemu, to sam ja umislio nesto sa RA7/OSC1/CLKIN .

A gornje krajeve potenciometra sam video na nekoj shemi da idu, al to sam ja garant pogresno vidio.