Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Shift Di Bit


Messaggi consigliati

Inserito:

Ciao a tutti,

sono nuovo del forum e nuovo anche di programmazione in linguaggio awl. Mi e stato chiesto di shiftare un bit verso sinistra di un array inizialmente vuoto( 8 bit a 0). Mi e stato chiesto inoltre di usare solamente un timer che mi dia la frequenza di clock e una parte di codice che "reagisce" ad ogni impulso di risalita. Come potrei fare? Il codice dell'impulso di risalita lo metto qui sotto:

u e 1.0

un m 2.0

= m 1.0

u e 1.0

= m 2.0

grazie a tutti!


Inserita:

A parte che in S7 c'è la funzione per rilevare fronti positivi (FP) e fronti negativi (FN), quello che devi fare, se non ho capito male, è generare un impulso a cadenza fissa utilizzando un timer.

Prova quindi a pensare cosa succede se utilizzi un timer che si autoresetta.

Per lo shift, guarda le istruzioni SLW e SRW per variabili da 16 bit (se i bit sono solo 8 va bene lo stesso), oppure SLD e SRD per variabili da 32 bit.

Inserita:

il fatto è che mi e stato proibito di usare le funzioni fp e fn e anche quelle sld e srd.

Inserita:

Ti vogliono fare soffrire.

UN T0 //GENERA 1 IMPULS0 DELLA DURATA DI 1CICLO OGNO 10 SECONDI

L S5T#10S

SE T0

U T0

= M50.0 //M50.0 è IL TUO CLOCK

u e 1.0

un m 2.0

= m 1.0

U M50.0

SPBN SALT // IL SALTO NON E' ESEGUITO QUANDO M50.0 E' ON

u e 1.0

= m 2.0

SALT: U M2.0

= A0.0

Non l'ho provato ma la strada dovrebbe essere giusta

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...