Visualizza messaggio singolo
Vecchio 01 agosto 14, 09:57   #33 (permalink)  Top
trabo
User
 
Data registr.: 19-07-2014
Messaggi: 17
Citazione:
Originalmente inviato da romoloman Visualizza messaggio
premesso che il mikrobasic viene fornito di manuale e pertanto non dovrebbe essere di troppa difficoltà trovare i "types" e vedere che si chiamava "word"
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.
Hai ragione,comunque, niente, appena premo passa al secondo effetto e poi torna subito al primo.. non va oltre
trabo non è collegato   Rispondi citando