este programa lo usaremos para enviar salida del conversor A\D de la frdmkl25z por mensaje de texto esta probada OK se le ingresa la cadena de caracteres del voltaje en ciofra entera de 0 a 1000 y entrega octetos para SMS PDU

Dependencies:   mbed

Revision:
0:6522ce9773bb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon Nov 02 21:38:41 2015 +0000
@@ -0,0 +1,68 @@
+
+#include "mbed.h"
+Serial pc(USBTX, USBRX); // tx, rx
+/*
+ALGORITMO PARA PASAR DE SEPTETOS A OCTETOS en numeros solamente
+EN UNA MENSAJE DE TEXTO DE CELULAR EN FORMATO PDU
+USA DOS CADENAS UNA DE ENTRADA Y OTRA DE SALIDA
+LENIN ES LA LONGITUD DE ENTRADA
+LENOUT LA LONGITUD DE SALIDA
+SE USA PARA ENSAMBLAR UNA TRAMA PDU
+ESTA CADENA DE SALIDA SE ENVIA SOBRE LA TRAMA PDU COMPLETA
+VERIFIQUE CON EL DECODIFICADOR DE ESTA PAGINA::
+PROBADA PARA LONGITUD corta VER:oct 2 2015
+la cadena de entrada saquela con esta webb
+http://www.asciitohex.com/
+la de salida de movilon mandando mensaje
+esta pagina tiene errores  no la use mas!!  http://www.twit88.com/home/utility/sms-pdu-encode-decode
+*/
+char DE[30];
+char DS[30];
+char gi[30];
+char gs[30];
+char gr[30];
+int i,LENOUT,LENIN;
+void SepToOct(char *DE, char *DS);
+int main(){
+         ; //numero de caracteres de abajo
+         pc.printf("inicio\n");
+         char gr[]="v=12";  //F65E4C36A301   v=1234  entrando=76 3d 31 32 33 34
+         LENIN=strlen(gr); 
+         pc.printf("%d\r\n",LENIN);
+         for (i=0;i<LENIN;i++){
+         gi[i]=gr[i]&0x000000FF;    
+         pc.printf("%2X,%d\r\n",gi[i],i);
+                              }
+         SepToOct(gi,gs);
+         for (i=0;i<LENOUT;i++){
+         pc.printf("%2X,%d\r\n",gs[i]&0x000000FF,i);
+                               }
+         pc.printf("LENOUT:%d,LENIN:%d\r\n",LENOUT,strlen(gi));
+        
+         /*
+         los octetos ASI VIAJA POR LA RED GSM
+         EC 30 E8 1C 66 B3 D3 EE 30 68 1C 36 97 41 E5 39 A8 EE 0E 83 EC 65 39 39 4C 2E CB
+         C3 A0 B3 FC 3D 2F CB C3 A0 78 BD 0C 6A 97 E5 E5 71 19 34 2F CB 41 E3 F7 38 ED 0E 93 C3
+
+         y los septetos ASI HAGO VISIBLE EL MENSAJE RECIBIDO
+         6c 61 20 67 61 6c 6c 69 6e 61 20 63 61 66 65 20 65 73 20 75 6e 61 20 76 65 72 64 61 64
+         65 72 61 20 67 72 6f 73 65 72 61 20 71 75 65 20 6d 65 72 65 63 65 20 73 65 72 20 63 6f
+         63 69 6e 61 64 61
+         */
+         }
+        //----------------------------------- ---------------------------
+         void SepToOct(char *DE, char *DS)
+         {
+         LENIN=strlen(DE); //se mide el tamaño de la cadena
+         LENOUT=0;
+         for (i=0;i < LENIN;i++){
+         DS[i]=(DE[i]>>i|DE[i+1]<<(7-i));
+         LENOUT=i+1;
+         if(DS[i]==0){
+         DS[i]='\0';     
+         return;}
+                                }
+         return ;
+         }
+          
+         
\ No newline at end of file