да, и выход с exit'а сделал через RETURN-эффект тот же..Добавлено (13.01.2015, 18:07)
---------------------------------------------
ADMIN, а в каком месте sv0 постоянно сбрасывается в 0? чет не вижу..
Добавлено (13.01.2015, 18:37)
---------------------------------------------
чет ваще понять не могу откуда такая последовательность получается....
нажимаю для запуска butt, на выходе sv0, появляется плюс-мотор крутит, магнит 3 раза замыкает геркон на выводе sens, вывод sv0 в лог нуль,...это выполняется нормально...но почему дальше при нажатии butt нет такого же цикла?!! причем на макетке видно, что PORTB.0 иедва заметно мерцает,когда нажимаешь butt, как будто прога сбрасывает этот вывод или не дает поменять состояние...
вот как этот цикл с условиями должен выглядеть?....
Добавлено (14.01.2015, 03:22)
---------------------------------------------
все оказалось просто!
вот в чем разница:
TRISB = %00000110
ADCON1 = 6
TRISA = %111111
butt var PORTB.1
butt2 var PORTB.2
sens VAR PORTA.0
SV0 VAR PORTB.0
X VAR BYTE
CLEAR
PAUSE 100
portb=0
X = 0
main:
if butt=1 then gosub loop
if butt=0 then gosub exit
goto main
LOOP:
if butt=1 then
pause 100
high sv0
endif
IF sens=1 THEN
pause 80
X=X+1
ENDIF
IF X=3 THEN
GOSUB ACT
ENDIF
goto loop
ACT:
low SV0
pause 200
x=0
RETURN
exit:
low sv0
return
Добавлено (14.01.2015, 03:22)
---------------------------------------------
напрочь забыл про то,что нужно обнулить переменную в конце!
Добавлено (16.01.2015, 17:36)
---------------------------------------------
это снова я...,подслажите, плиз, что не тау в этом коде
TRISB = %11111110
do var PORTB.1
res var PORTB.2
sens VAR PORTB.3
mot VAR PORTB.0
X VAR BYTE
CLEAR
PAUSE 100
portb=0
X = 0
chek:
if do=1 then gosub act
if do=0 then gosub sb
if res=1 then gosub act2
if res=0 then gosub sb
goto chek
act:
if do=1 then
high mot
endif
IF sens=1 THEN
pause 100
X=X+1
ENDIF
IF X=3 THEN
low mot
pause 200
x=0
ENDIF
goto act
act2:
high mot
pause 4000
low mot
return
sb:
pause 200
return
Добавлено (16.01.2015, 17:37)
---------------------------------------------
не хочет, зараза нормальнл обслуживать кнопки...