| |||||||
| Registrazione | FAQ | Lista utenti | Social Groups | Calendario | Cerca | I messaggi di oggi | Segna forums come letti |
![]() |
| | Strumenti discussione | Visualizzazione |
| |
| | #1 (permalink) Top | |
| Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.070
| Citazione:
Codice: sub function controlla_gpio() as integer
dim count as long
count=0
'semplice procedura di debouncing....
while ((gpio.0=1))
delay_ms(1)
count=count+1
wend
if (count>200) then
result=1
else
result=0
end if
end sub ps non sono sicuro di long... ma count deve essere dichiarato in modo da supportare un valore di almeno 65000 (unsigned integer ??) Non ho il mikrobasic sottomano...
__________________ Vivere in qeusto mondo e molto belo belo e vale la pena starci ma a volte in questa UNICA vita che ci apartiene posono succedere cose brute brute alora mi chiedo perche siete incazziati domani pole esere anche lultimo Grazie "TRANQUILLO" FAI 15766 | |
| | |
| | #2 (permalink) Top | |
| User Data registr.: 19-07-2014
Messaggi: 17
| Citazione:
grazie per l'aiuto che mi dai | |
| | |
| | #3 (permalink) Top | |
| Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.070
| Citazione:
Capisco che sei alle prime armi... ma leggere i manuali aiuta... Codice: program MyProject
' Declarations section
sub function controlla_gpio() as integer
dim count as word
count=0
while ((gpio.0=1) )
delay_ms(1)
count=count+1
wend
if (count>200) then
result=1
else
result=0
end if
end sub
main:
' RIMUOVERE I COMMENTI SUcCESSIVI IN CASO DI OSCILLATORE INTERNO
'asm
' bsf status,RP0;
' call 0x3FF
' movwf osccal
' bcf status,RP0
'end asm
TRISIO.1=0
TRISIO.2=0
TRISIO.0=1
cmcon=7
fissa:
while true
gpio.1=1
gpio.2=1
if controlla_gpio()=1 then
goto inizio
end if
wend
inizio:
delay_ms(100)
while true
GPIO.1=1
gpio.2=1
delay_us(50)
GPIO.2=0
gpio.1=0
delay_us(50)
IF controlla_gpio()=1 THEN
GOTO mezzo
end if
wend
mezzo:
delay_ms(100)
while true
gpio.2=1
delay_ms(500)
if controlla_gpio()=1 then
goto strobo
end if
gpio.2=0
delay_ms(500)
if controlla_gpio()=1 then
goto strobo
end if
gpio.1=1
delay_ms(500)
if controlla_gpio()=1 then
goto strobo
end if
gpio.1=0
delay_ms(500)
if controlla_gpio()=1 then
goto strobo
end if
wend
strobo:
delay_ms(100)
while true
gpio.1=1
gpio.2=1
delay_ms(50)
gpio.1=0
gpio.2=0
delay_ms(50)
if controlla_gpio()=1 then
goto fissa
end if
wend
end.
__________________ Vivere in qeusto mondo e molto belo belo e vale la pena starci ma a volte in questa UNICA vita che ci apartiene posono succedere cose brute brute alora mi chiedo perche siete incazziati domani pole esere anche lultimo Grazie "TRANQUILLO" FAI 15766 | |
| | |
| | #4 (permalink) Top | |
| User Data registr.: 19-07-2014
Messaggi: 17
| Citazione:
| |
| | |
| | #5 (permalink) Top | |
| Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.070
| Citazione:
Nei PIC esistono gli interrupt.... http://www.freeinfosociety.com/media/pdf/3134.pdf
__________________ Vivere in qeusto mondo e molto belo belo e vale la pena starci ma a volte in questa UNICA vita che ci apartiene posono succedere cose brute brute alora mi chiedo perche siete incazziati domani pole esere anche lultimo Grazie "TRANQUILLO" FAI 15766 | |
| | |
![]() |
| Bookmarks |
| Strumenti discussione | |
| Visualizzazione | |
| |
Discussioni simili | ||||
| Discussione | Autore discussione | Forum | Commenti | Ultimo Messaggio |
| pic 12F629 | faustog_2 | Circuiti Elettronici | 2 | 07 ottobre 13 11:52 |
| ESC con PIC | Italia | Circuiti Elettronici | 4 | 23 marzo 13 16:27 |
| Problema con programma MPX per aggiornamento Royal PRO | picman | Radiocomandi | 0 | 29 agosto 10 20:27 |
| Programma facile per pic | Orso82 | Circuiti Elettronici | 20 | 27 febbraio 05 16:44 |
| Regolatore con PIC | rapis | Circuiti Elettronici | 1 | 26 novembre 01 11:15 |