PicBasic Pro problem sa dugmetom

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
User avatar
Elektronicar
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 467
Joined: 19-01-2008, 17:05
Location: Balkan

PicBasic Pro problem sa dugmetom

Post by Elektronicar »

Nekoristim picbasic vec mikrobasic ali ovaj prvi mi povremeno zatreba.
Problem je dugme (button).
Potrebno je da imam prekidac sa pull up otpornicima.
Koristim razvojni sistem easy pic 5
B1 = 0
button Taster,1,255,0,B1,1,Proba
pause 50
goto Pocetak

Ako je ovako podeseno dugme radi ali u tom slucaju moram da podesim prekidac na pull down rezim rada.
Prema onome sto sam procitao u help fajlu i nasao na netu trebalo bi da radi ovako

button Taster,0,255,0,B1,0,Proba

Medjutim neradi. Da nesreca bude jos veca probao sam neke kodove iz knjige Programiranje mcu Picbasic-om desava se isto. Ukoliko je kod pisan u MB sve radi kako treba.
Primer u knjizi za taster1 je dat ovako sa pull up otpornicima.

button T1,0,255,0,B1,1,Ledon

Verovatno sam nesto propustio ali nevidim sta bi to moglo da bude.
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: PicBasic Pro problem sa dugmetom

Post by WhiteHead »

Nisam koristio tu naredbu, nego možda ovo pomogne (detaljno objašnjenje funkcije)

Code: Select all

BUTTON
BUTTON pin, down, delay, rate, bvar, action, label
  Ova naredba čita 'pin' i opciono izvodi debounce i autorepeat, a pin se automatski postavlja kao ulaz. 'Pin' može da bude konstanta, od 0 do 15, ili promenljiva koja sadrži broj od 0 do 15, ili naziv pina (npr. PORTA.0).
'down'    stanje pina kada je taster pritisnut.
'delay'   broj ciklusa pre početka autorepeat funkcije (0 - 255). Ako je 0, ne izvodi se ni
          autorepeat ni debounce. Ako je 255, izvodi se debounce, ali ne autorepeat.
'rate'    autorepeat (0 do 255).
'bvar'    bajt promenljiva koja se interno koristi za delay/repeat odbrojavanje. Mora da se
          postavi na 0 pre početka i ne sme se nigde drugde koristiti u programu.
'action'  stanje pina koje prouzrokuje delovanje (0 za "nepritisnuto", 1 za "pritisnuto").
'label'   labela na koju program skače ako je 'action' istinito.
    button portb.2, 0, 100, 10, b2, 0, nijepritisnuto 'skok na labelu "nijepritisnuto" ako
                                                      'taster na portb.2 nije pritisnut
Naredba BUTTON mora da se upotrebi u petlji da bi autorepeat radio kako treba. Ova naredba izvršava debounce sa malim kašnjenjem izvršenja od par milisekundi da bi sačekala da prestane treperenje kontakata. Predefinisano vreme je 10 ms, ali može da se promeni upotrebom DEFINE:
    DEFINE BUTTON_PAUSE 50 'kašnjenje od 50 ms
BUTTON_PAUSE mora da bude napisano velikim slovima. Generalno, lakše je jednostavno očitati stanje pina u IF ... THEN naredbi:
 if portb.2=1 then nijepritisnuto 
Ako kaniš pobijediti, ne smiješ izgubiti
bonn
Posts: 23
Joined: 21-03-2011, 16:20
Location: Sarajevo

Re: PicBasic Pro problem sa dugmetom

Post by bonn »

Jesi li podesio otpornike za PULL UP i PULL DOWN?
User avatar
Elektronicar
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 467
Joined: 19-01-2008, 17:05
Location: Balkan

Re: PicBasic Pro problem sa dugmetom

Post by Elektronicar »

Detaljno sam procitao kako se koristi ova naredba i nisam uspeo da resim problem.

Otpornici su postavljeni u pull up
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: PicBasic Pro problem sa dugmetom

Post by WhiteHead »

Ne bih ti moga pomoći, nisam koristio naredbu. Čini mi se da je Peđa (ili neko drugi) u PBP-kursu pomenuo da ta naredba nije baš...tako da sam uvijek radio sa drugim metodama.
Ako kaniš pobijediti, ne smiješ izgubiti
Post Reply