Citazione:
Originalmente inviato da trabo Ciao.
per prima cosa vorrei ringraziarti per il tempo che mi stai dedicando.
Ma anche in questo modo , mi si impunta al secondo effetto.
Quindi mi chiedo, sto sbagliando a settare le porte del pic?
il pic è un 12f629 ho scelto questo perchè molto piccolo.
Allora ho deciso di ricominciare da zero.
ecco come ho scritto il programma:
program prova
while true
main:
trisio.0=1
trisio.1=0
trisio.2=0
gpio.0=0
gpio.1=0
gpio.2=0
while gpio.0=0
gpio.1=1
gpio.2=0
delay_ms(1000)
gpio.1=0
gpio.2=1
delay_ms(1000)
wend
while gpio.0=0
gpio.1=1
gpio.2=1
delay_us(1000)
gpio.1=0
gpio.2=0
delay_us(1000)
wend
wend
end.
in questo modo ho notato che 2 effetti me li fa perfettamente, non da problemi neanche il pulsante, cambia l'effetto immediatamente.
Non ho avuto bisogno di inserire nessun goto, perchè quando cambio lo stato di gpio.0, esce dal while e non so per quale profezia, va al while successivo, ho messo il while totale perchè superato l'ultimo while, non tornerebbe all'inizio.
HO il problema che quando aggiungo il 3 effetto, non me lo legge assolutamente,io non capisco dove sbaglio, cioè esegue perfettamente i primi 2 poi bam.... torna all'inizio.
Ho provato anche ad aggiungere al 2 while un goto, ma non legge nulla.
Come posso fare per eseguire 3 semplici effetti?
O hai qualche consiglio per modificare questo ultimo che ho fatto e che al 75% funziona?
Grazie ancora |
ciao,
non so che tipo di programmatore usi ma se hai la EasyPIC, "io ho la 5"
ha la possibilita del debag, in pratica controlli linea per linea in tempo reale il tuo programma variabili comprese.......
io di solito per i pulsanti uso la funzione case select
Flavio