--

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
dan_cuspi
Date:
Tue May 17 23:53:15 2016 +0000
Commit message:
Partes del Frame

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 288744c7febe main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue May 17 23:53:15 2016 +0000
@@ -0,0 +1,38 @@
+#include "mbed.h"
+Serial Pc(USBTX, USBRX); // tx, rx
+Serial Xb(p9, p10);
+DigitalOut myled(LED1);
+
+int i,tmp1,tmp2,Lenght; // Variables Int para el For, Primer Caracter, Segundo Caracter,Tamaño del Mensaje
+
+int msg[23]={0x7E,0x00,0x13,0x10,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x41,0x64,0x69,0x6F,0x73,0x02}; // Frame
+
+             
+char msgR[100]; // Arreglo para el Mensaje
+char Len[100]; // Arrelo para la longitud del Mensaje
+char Str[100]; // Arreglo para el primer y segundo caracter de cada posición del Frame
+char Str1[100]; // Arreglo para la escritura del Frame a ASCII
+int Dato; //Variable para la conversion de HEX a INT
+
+char* ch[16]={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};//Conversión de int a HEX
+int main() {
+     
+     for(i=0 ; i<23; i++) // Recorrido del Frame
+     {
+     
+            Xb.putc(msg[i]); // Lectura serial de cada caracter del frame
+            tmp1 = msg[i]/16; // División de la i Posicion del frame para el primer caracter 
+            tmp2 = msg[i]%16;  // Modulo de la i Posicion del frame para el segundo caracter 7E= 126  126/16 = 7  16*7= 112  126-112=14
+            Dato = msg[i]; // Asignacion a variable tipo int de para convertir HEX a int
+            Pc.printf("%02i ",Dato); // Impresion HEX a Int 
+            if (i>1 && i<3){snprintf(Len,90,"%s%d",Len,Dato);Lenght=atoi(Len);} // Condición para separar las partes del frame y conversión ej. Tamaño del mensaje
+            if (i>16 && i<(Lenght+3)){ snprintf(msgR,90,"%s%c",msgR,Dato);} // Condición para separar las partes del frame y conversión ej. Mensaje
+            snprintf(Str,90,"%s%s%s ",Str,ch[tmp1],ch[tmp2]); // Concatenacion del pimer y segundo caracter y formar el Frame Completo en ASCII
+           
+      }  
+     Pc.printf("\n\rMessage %s\n\r",msgR); // Impresión del Mensaje en ASCII
+     Pc.printf("\n\rLenght %i\n\r",Lenght);// Impresión del Tamaño del mensaje
+     Pc.printf("\n\r%s\n\r",Str);// Impresión del frame en HEX con ASCII
+
+    
+}
\ No newline at end of file
diff -r 000000000000 -r 288744c7febe mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Tue May 17 23:53:15 2016 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/7c328cabac7e
\ No newline at end of file