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




Date And Time - Estrapolare il giorno della settimana


Messaggi consigliati

Inserito:

Avendo a disposizione un dato in formato Date and Time, vorrei estrapolare alcune informazioni.

Essendo organizzato in byte, risulta semplice ottenere, per esempio, l'anno, il mese ecc.

......ma come estrapolo il giorno della settimana? :blink:

Secondo il manuale, questo dato si trova nell'ultimo byte......ma questo byte contiene anche i millisecondi!!!

Come operare?

Grazie.


Inserita:
Secondo il manuale, questo dato si trova nell'ultimo byte......ma questo byte contiene anche i millisecondi!!!

tralasciando l'esposizione confusa,

esistono strumenti come lo "shift" e di filtro "and" con le quali risulta facile estrapolare i 3 bit del giorno per quanto riguarda i millisecondi se visualizzi da 0-999 stai sbagliando qualcosa.. perchè necessiti di 10 bit , quindi...non è compreso nel byte ma in una word...

Usando un vecchio slogan di MM.

DiD

Ciao, Irpick

Inserita:
tralasciando l'esposizione confusa....

Hai ragione irpik, cercherò di essere più chiaro.

Secondo il manuale, il dato in formato "date and time" si "spalma" in 8 byte. Ognuno di questi byte contiene un'informazione in BCD.

....fin qui nulla di strano, mi basta leggere i singoli byte per estrapolare l'informazione di interesse.

Il problema nasce se voglio ottenere il giorno della settimana (Lunedì....Domenica).

Dal manuale si evince che tale informazione è posta nel settimo byte ma, con mia sorpresa, scopro che in questo stesso byte sono memorizzate le "cifre meno significative di MSEC".

In particolare viene scritto:

7(4MSB) Cifre meno significative di MSEC

7(4LSB) Giorno settimanale 1 = Domenica 2 = Lunedì...7 = Sabato

Allora mi chiedo:

- Che significato hanno le sigle "4MSB" e "4LSB"?

- Come ricavo il giorno della settimana?

:blink:

Inserita:

MSB (Most Significant Bit, bit con peso maggiore)

LSB (Least Significant Bit, bit con peso minore)

normalmente a destra peso minore a sinistra del byte maggiore..

Inserita:

L DBx.dbby

SLW 12

SRW 12

ed hai solo i bit che ti interessano

Inserita:

Oppure:

L DBx.dbby

L B#16#F

UW

T DBn.DBBz

Se vuoi lavorare un pò con la variabile date_and_time dai un'occhiata qui

Inserita:

Di che PLC stai parlando? Hai una marca, una sigla, qualcosa?

DiD: DATE i DATI!!!!!

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...