CDR Inserito: 27 ottobre 2005 Segnala Share Inserito: 27 ottobre 2005 sto programmando un microcontrolore pic della microchip e devo fare uno start/stop con 1 solo pulsante ma non ho a disposizione nessun contatore, non sapendo come fare ho provato a farlo con un plc utilizzando soltanto memorie.... :ph34r: :ph34r: :ph34r: ....non ci riesco.come posso fare?grazie a tutti. Link al commento Condividi su altri siti More sharing options...
sergiogiorgi Inserita: 27 ottobre 2005 Segnala Share Inserita: 27 ottobre 2005 Ti devi creare una derivata sul fronte di salita del pulsante:u "pulsante"un "aux derivata"= "derivata pulsante"u "pulsante"= "aux derivata"In questo modo quando premi il pulsante, il flag "derivata pulsante" rimane alta solo per un loop!Con queste righe di programma dovresti avere la memoria "flip flop" che và su e giu ogni volta che premi il "pulsante"u "derivata pulsante"u "flip flop"R "flip flop"u "derivata pulsante"un "flip flop" s "flip flop"Prova e dimmiCiaoSergio Link al commento Condividi su altri siti More sharing options...
CDR Inserita: 27 ottobre 2005 Autore Segnala Share Inserita: 27 ottobre 2005 domani provo poi ti faccio sapere,grazie Link al commento Condividi su altri siti More sharing options...
ken Inserita: 27 ottobre 2005 Segnala Share Inserita: 27 ottobre 2005 C'è una discussione lunghissima sui vari metodi nel forum Plc&Didattica Link al commento Condividi su altri siti More sharing options...
Claudio Monti Inserita: 28 ottobre 2005 Segnala Share Inserita: 28 ottobre 2005 La discussione era questa Link al commento Condividi su altri siti More sharing options...
RESNIC Inserita: 28 ottobre 2005 Segnala Share Inserita: 28 ottobre 2005 Primas routine Gestione tasti//---GESTIONE TASTI ---void Gestione_tasti (char PORTC_Tasti){unsigned char debounce; if ((PORTC_Tasti!=0xFF) && (Status_Tasti.B6==0)) { debounce++; if (debounce>20) { Status_Tasti.byte=(PORTC_Tasti^0xFF); // NEGAZIONE PORTC Status_Tasti.B6=1; debounce=0; } }; if (PORTC_Tasti==0xFF) { Status_Tasti.B6=0; debounce=0; } }POI IL SUO UTILIZZOif ((Status_Tasti.B1==1)&&( LATAbits.LATA4==0)) { LATAbits.LATA4=1; Status_Tasti.B1=0; }if ((Status_Tasti.B1==1)&&( LATAbits.LATA4==1)) { LATAbits.LATA4=0; Status_Tasti.B1=0; } Link al commento Condividi su altri siti More sharing options...
CDR Inserita: 9 novembre 2005 Autore Segnala Share Inserita: 9 novembre 2005 grazie a tutti, fuziona con tutti i vs consigli Link al commento Condividi su altri siti More sharing options...
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