texano Inserito: 10 aprile 2015 Segnala Inserito: 10 aprile 2015 Salve. non riesco a far andare lo shift register, dove sbaglio??
batta Inserita: 10 aprile 2015 Segnala Inserita: 10 aprile 2015 Prima di tutto, bisognerebbe capire cosa intendi per "arreto in fase". Da quello che vedo, il bit "Arresto in fase" setta M100.0. Col fronte di salita di M100.0 effettui lo shift a sinistra di un bit della doppia word MD100 (però nell'istruzione SHL hai impostato WORD e non DWORD). Lo stato di M100.0 verrà quindi spostato in M100.1 e M100.0 assumerà lo stato del bit M101.7 (tieni presente che nella DWORD MD100 i byte sono disposti come segue: MB100-MB101-MB102-MB103). Insomma, non mi pare un "arresto in fase", ma solo un pasticcio.
texano Inserita: 10 aprile 2015 Autore Segnala Inserita: 10 aprile 2015 Grazie per l'attenzione, l'arresto in fase non è altro che un marker che si setta in una determinata posizione della macchina, posizione data da un encoder, quindi mi basta selezionare nell'istruzione dword? Grazie se ho capito bene ogni volta che ho il fronte di salita, mi dovrebbe spostare un bit da m100.1 a m100.2 e così via, ma non va
batta Inserita: 10 aprile 2015 Segnala Inserita: 10 aprile 2015 Comincia a correggere gli errori che ti ho segnalato nel precedente post (MD100 è una DWORD ma hai configurato SHL per lavorare con una WORD). Poi metti in una tabella di variabili i byte MB100, MB101, MB102 e MB103 impostando la visualizzazione in binario, e vedi cosa succede.
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