Autor Tema: Como pasar un WORD a dos BYTE  (Leído 2836 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado David Met

  • Administrador
  • Stratus Cumulus
  • *****
  • Mensajes: 3039
  • Sexo: Masculino
  • Cumulonimbus
    • Meteorología
Como pasar un WORD a dos BYTE
« en: Agosto 02, 2012, 07:22:02 pm »
La manera de pasar un word a dos byte (o cualquier otro tipo de variable) es haciendo un ARRAY.
Supongamos que tenemos una variable llamado TOTALT (WORD) y otras dos variables más TOTALa y TOTALb (ambas BYTE); y deseamos pasar el valor TOTALT a las dos variables byte; ya que, por ejemplo, debemos enviarla por la USART de 8 bit (*). Como ven, TOTALT no entra en el registro de la USART.

¿Cómo debemos hacer? Definimos un ARRAY de la cantidad de byte a usar. En nuestro caso 2.

var word totalt
var byte total_temp[2] at totalt  -- Acabamos de definir un array de dos byte y está asociada a totalt que es un word.
var byte totala
var byte totalb

Luego recuperamos los valores utilizando el array.

totala = total_temp[1]  -- totala tiene la parte alta de TOTALT
totalb = total_temp[0]  -- totalb tiene la parte baja de TOTALT

(*) Nota: la librería que trae JALv2 para enviar datos por la USART, contempla la opción de enviar un WORD. Lamentablemente, esta opción la descubrí tarde; ya que manejaba por mi cuenta, a la USART y no usando la librería.
Él dijo: "destruyan a la Iglesia y yo la levantaré en tres días". Con esto definió que la Iglesia, somos nosotros; el cuerpo y alma, y no el edificio o templo.
-"Ámense los unos a los otros como yo los he amado" Nuestro Señor Dios hecho hombre: Jesús.
-Él, fue a la cruz, pagó nuestro pecado con un dolor increíble siendo inocente de lo que lo acusaban, para salvarnos.

Desconectado ruibal69

  • Neblina
  • *
  • Mensajes: 18
Re: Como pasar un WORD a dos BYTE
« Respuesta #1 en: Agosto 27, 2013, 10:18:20 am »
David , veo que el tema es antiguo, has probado como lo hace Jalv2 en la librerias.

var word dato
var bit * 8    dato_low    at  dato:0
var bit * 8    cato_high   at  dato:8

Desconectado David Met

  • Administrador
  • Stratus Cumulus
  • *****
  • Mensajes: 3039
  • Sexo: Masculino
  • Cumulonimbus
    • Meteorología
Re: Como pasar un WORD a dos BYTE
« Respuesta #2 en: Agosto 27, 2013, 11:16:04 am »
No, no lo he probado.
Habría que ver cual ahorra memoria o si es indistinto.
Él dijo: "destruyan a la Iglesia y yo la levantaré en tres días". Con esto definió que la Iglesia, somos nosotros; el cuerpo y alma, y no el edificio o templo.
-"Ámense los unos a los otros como yo los he amado" Nuestro Señor Dios hecho hombre: Jesús.
-Él, fue a la cruz, pagó nuestro pecado con un dolor increíble siendo inocente de lo que lo acusaban, para salvarnos.

Desconectado ruibal69

  • Neblina
  • *
  • Mensajes: 18
Re: Como pasar un WORD a dos BYTE
« Respuesta #3 en: Agosto 27, 2013, 12:59:40 pm »
Te indique esta forma, pues es la manera que definen los registros internos de los pic y de ahi saque la idea.

Desconectado David Met

  • Administrador
  • Stratus Cumulus
  • *****
  • Mensajes: 3039
  • Sexo: Masculino
  • Cumulonimbus
    • Meteorología
Re: Como pasar un WORD a dos BYTE
« Respuesta #4 en: Agosto 28, 2013, 03:54:17 pm »
Se me había pasado por alto, seguramente, porque desconocía como trabajan los lenguajes de alto nivel.
Él dijo: "destruyan a la Iglesia y yo la levantaré en tres días". Con esto definió que la Iglesia, somos nosotros; el cuerpo y alma, y no el edificio o templo.
-"Ámense los unos a los otros como yo los he amado" Nuestro Señor Dios hecho hombre: Jesús.
-Él, fue a la cruz, pagó nuestro pecado con un dolor increíble siendo inocente de lo que lo acusaban, para salvarnos.