Vai al contenuto
PLC Forum


S7-226 - hEX TO ASCII


Messaggi consigliati

Inserito:

Chiedo gentilmente il vostro aiuto

Devo trasformare il contenuto di una word (es VW1000) in 4 byte ASCII

ES VW 1000 = 1388 (5000 decimale)

da trasformare in : vb 1100 = '1' ASCII

vb 1101 = '3' ASCII

vb 1102 = '8' ASCII

vb 1103 = '8' ASCII

Qualcuno ha qualche idea ?

Grazie in anticipo


Inserita:

Grazie all'aiuto di keosmm ho trovato la soluzione (nei link si parlava di BCD, il mio problema era con dati HEX).

Ho sviluppato una piccola routine per fare questa conversione e la metto a disposizione.

LB0 = Varibile in ingresso

LB1 = Variabile out 1

LB2 = Variabile out 2

Network 1

// Inizializza variabili

LD SM0.0

MOVW 48, LW7

MOVW 55, LW5

Network 2

// Leggi byte 1

LD SM0.0

MOVB LB0, LB3

SRB LB3, 4

BTI LB3, LW9

Network 3

// Test se maggiore di 9

LDW> LW9, 9

+I LW5, LW9

NOT

+I LW7, LW9

Network 4

//

// ----Uscita ASCII 1------

//

LD SM0.0

ITB LW9, LB1

Network 5

//

// ---Leggi byte 2---------

//

LD SM0.0

MOVB LB0, LB4

UNDB 16#0F, LB4

BTI LB4, LW11

Network 6

// Test se maggiore di 9

LDW> LW11, 9

+I LW5, LW11

NOT

+I LW7, LW11

Network 7

//

// ----Uscita ASCII 2------

//

LD SM0.0

ITB LW11, LB2

Matteo Montanari
Inserita:

scusa ma non fai prima ad utilizzare le funzioni di sistema:

HTA -> esadecimale in ASCII

ATH -> ASCII in esadecimale

presenti nelle funzioni di conversione?

Inserita:

azz....eccola la funzione che non trovavo....

Grazie keosmm

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