stefano_ Inserito: 13 dicembre 2004 Segnala Inserito: 13 dicembre 2004 ciao a tutti,sto realizzando un programmino con un pic16f84 e picbasic pro V 7.1Il programma è costituito da un ciclo che si ripete all'infinito che aspetta la pressione di un tastodopodiche incrementa di una unita un display a 7 segmenti per poi attendere nuovamente la pressionedel pulsante per poi incrementare ancora, il problema è che parallelamente a questo ciclo infinito vorrei ci fosse un secondo ciclo infinito che mi setti e resetti un uscita a distanza di 1 secondo per esempioCome posso fare ??Ancora una cosa:poò essere che in pic basic pro V7 non ci sia l'istruzione select case ???come sempre ringrazio anticipatamente tutti ciao ciao
Gianmario Pedrani Inserita: 13 dicembre 2004 Segnala Inserita: 13 dicembre 2004 se utilizzai un linguaggio ad alto livello come il basic, puoi implementare le tue funzioni in un unico ciclo infinito verificandole con degli if es:while condizione if tasto premuto = vero incrementi , fai quello che devi fare end if if tempo = 10 sec if uscita = 1 resett uscita else uscita = 0 setti uscita end ifdonon badare a come ho scritto non so se la sistassi è corretta ma spero di averti dato un idea ciaooooooooooooo
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 se scrivo if a = 3 then a = a+1 else a = a - 1 end ifmi da il seguente errore "IF A = 3 THEN assignment operator missing"e"ELSE assignment operator missing"come mai ???? la sintassi dovrebbe essere corretta !??!?!?!!grazie ancora per la tua risposta
wnc Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 if a ==3?Differenza tra confronto e assegnamento
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 nel manuale l'operazione di confronto è = l'operazione == non esiste comunque per sicurezza ho fatto delle prove ma non funzia ugualmente !!!!!!Aiutooooooooooooo ?!?!!!!!!!!!!!!!!Grazie 1000 ragazzi per il vostro interesse
Gianmario Pedrani Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 Credo che ci sia qualcosa che non quadra, anche perche' nel tuo pezzetto di codice fai un confronto if=3 then e poi sotto fai un assegnazione a=a+1 credo che sia un po strano che l'operando di assegnazione sia uguale a quello di confronto Prova a controllare l'help interno e poi facci sapere credo che il confronto sia a= 3 then e poi devi scrivere a:= a+1 i := sono l'assegnazione in visualbasic
giacomo56 Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 prova a terminare l'if con endif invece di end if.Ciao.
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 ciao,ho visto l'. interno ed utilizza = sia per il confronto che per l'assegnazione, poi ho provato a terminare con endifma non c'è niente da fare proprio non vuole andare !!!!!!!!!!!!!!!!!Se vi viene in mente qualcosa fatemi sapere !!!!!!
giacomo56 Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 Allora forse c'è un errore a monte.Prova a postare un programmino completo.Ciao.
Gianmario Pedrani Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 (modificato) Per assegnare una variabile devi mettere := mentre = lo usi per confrontare, prova!!!!! se deriva da vb e' per forza cosi' ciaooooooooooo Modificato: 14 dicembre 2004 da Gianmario Pedrani
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 device 16f84define portb = %00000000 'tutta la portb come uscitedefine porta = %11100 'RA0 e RA1 come uscite RA2 RA3 RA4 come ingressilow a.0 ' disattivo RA0low a.1 ' disattivo RA1outb (67) ' Attivo le uscite in modo tale da visualizzare il numero 7 sul display' creo un ciclo infinito che mi controlla se schiaccio il pulsante presente su RA2' se lo trova schiacciato (livello logico 0) attivo RA1 ( fino a quando tengo premuto il pulsante )loop:IF INPORTA & 2=0 Then high a.1 'se il il bit 2 di RA ( e quindi RA2) vale 1 ( livello logico alto ) attivo RA1 goto loopendil circuito non dovrebbe avere problemi perche se utilizzo l'istruzione "button" come per esempiobutton B.2gosub okok:set a.1returntutto funziona a meraviglia.Grazie 1000 ancora a tutti
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 un'altra cosa,moi capita spesso di leggere che l'ultima versione di pic basic da provare e scaricare è la 2.4 io hopic basic V 7.1 !!!!!!!!!!!!!!!!!parliamo dello stesso programma ??!?!?!?! non vorrei che fosse questo l'inghippo !!!!
giacomo56 Inserita: 14 dicembre 2004 Segnala Inserita: 14 dicembre 2004 E allora non è PicBasic Pro! Latest Release: 2.45Basta andare nel suo sito.Ciao.
stefano_ Inserita: 14 dicembre 2004 Autore Segnala Inserita: 14 dicembre 2004 scusate ma il prg che ho si chiama let picbasic e pensavo fosse il picbasic di cui sento tanto parlare !!!!!Se non è così sapete qualcosa su questo programma ???Grazie ancora e scusate di nuovo se vi ho fatto penare !!!
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora