Lucos68 Inserito: 14 marzo 2018 Segnala Share Inserito: 14 marzo 2018 A volte per ignoranza o per virtuosismo mi trovo davanti a piccoli problemi insormontabili come quello questo: ad ogni pressione di un solo pulsante le out devono scambiare in 0-1; 1-1; 1-0; 0-0 Io sono riuscito in questo modo che però non mi soddisfa, lo trovo brutto e dispendioso di risorse. Vorrei sapere se ce n'è uno più semplice ed "elegante". grazie Link al commento Condividi su altri siti More sharing options...
ken Inserita: 14 marzo 2018 Segnala Share Inserita: 14 marzo 2018 se la sequenza può essere 00 01 10 11 è un semplice contatore.00=0 01=1 10=2 11=3 ti basterebbe sommare 1 sempre ad una variabile e prendere i due bit meno significativi. puoi poi azzerare quando il conteggio arriva a 4 o andare a vanti così. 4 sarà infatti 100, 5 101, 6 110, 7 111 Link al commento Condividi su altri siti More sharing options...
Lucos68 Inserita: 14 marzo 2018 Autore Segnala Share Inserita: 14 marzo 2018 Grazie Ken, purtroppo la sequenza dovrebbe essere proprio 00 01 11 10 questo perché così facendo entrambi i bit hanno un fronte di salita ogni 4 passi con la soluzione del contatore invece, il bit meno significativo ha due fronti di salita ogni 4 passi Considerando un carico/utilizzatore applicato all'uscita assegnata a tale bit, in questo modo ne dimezzerei la durata Link al commento Condividi su altri siti More sharing options...
batta Inserita: 14 marzo 2018 Segnala Share Inserita: 14 marzo 2018 Puoi sempre fare un ciclo di 4 passi. Secondo il passo attivo, abiliti le uscite a piacere. Link al commento Condividi su altri siti More sharing options...
JumpMan Inserita: 9 giugno 2018 Segnala Share Inserita: 9 giugno 2018 Il metodo che risulterà più leggibile è quello di batta. Mi sono divertito però a fare qualche "esperimento": Visto che in pratica tu vuoi fare un codice GRAY a 2 bit ho buttato giù questo listato AWL e funziona, non so però quanto risulti leggibile... U "Pulsante" FP "FP_Pulsante" SPBN _001 // Contatore 8 bit L MB 200 INC 1 T MB 200 // Codice GRAY a 2 bit _001: X M 200.0 X M 200.1 = "Out_A" U M 200.1 = "Out_B" 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