[C con Clase] Enviar bytes puerto serie Visual C#

Miguel Eduardo Román Martínez miguelerm en gmail.com
Sab Abr 30 00:57:22 CEST 2011


que tal Hugo,

Espero que te sirva todavia la respuesta

fijate que .Net tiene una clase llamada BitConverter que te permite realizar
esta tarea:

int valor = 100000;
byte[] bytes = System.BitConverter.GetBytes(valor);

proba y cualquier duda nos comentas.

saludos.

2011/4/1 Hugo Rodríguez <hugorplp en gmail.com>

> Hola,
>
> Estoy creando una Aplicación WindowsForm para crear un programa con
> interfaz gráfica para el control de un motor paso a paso.
>
> Tengo que mandar la información bajo un protocolo de comunicación
> preestablecido que tiene una trama de 18 bytes.
>
> Mi principal problema es que quiero que el usuario introduzca un valor
> númerico (la distancia de movimiento del motor) en un TextBox   y luego ese
> valor númerico (pasado a número de pasos con 6 cifras) quiero enviarlo en
> una trama de 6 bytes. Es decir:
>
> Tengo un número entero: 100000
> y quiero enviar cada uno de esas cifras por separado en un byte en Código
> ASCII:
> byte[0]=0x30
> byte[1]=0x30
> byte[2]=0x30
> byte[3]=0x30
> byte[4]=0x30
> byte[4]=0x31
>
> El principal problema que tengo es que no se como teniendo un entero puedo
> meterlo en un byte ya codificado.
>
> He buscado y he visto muchas cosas parecidas en la web pero no soy capaz de
> hacerlo.
>
> ¿Me pueden dar alguna sugerencia?
>
> Gracias, saludos
>
> El 01/04/2011 13:22, unpocolocos escribió:
>
>> Estoy comenzando a con el curso y estoy tratando de resolver los problemas
>> propuestos con alguna que otra variante.
>>
>> Concretamente, estoy intentando (sin conseguirlo) detener la introducción
>> de caracteres (cuando se pulse la tecla "INTRO" sin haber introducido un
>> número o letra) en un array dinámico de caracteres. Es decir:
>>
>>
>>   char *numero; // Puntero "numero" a tipo char
>>   int i = 0, j;
>>
>>   // Declaración de prototipos
>>   bool Incrementa (char);
>>
>>   int main()
>>   {
>>       // Reservamos en memoria dinámica una cadena de caracteres
>>       // a la que apunta "numero"
>>       numero = new char [10];
>>
>>       // Inicializamos la cadena dinámica con caracteres '0'
>>       for (j = 0; j<  10; j++) numero [j] = '0';  numero [9] = '\0';
>>
>>       // Introducción del número de dígitos
>>       cout<<  "Introduce los digitos de un numero HASTA UN MAXIMO DE 8"<<
>>  endl;
>>       cout<<  "Para salir pulsar directamente [INTRO]"<<  endl;
>>
>>       // Introducción de los caracteres de "numero"
>>       while (i<  8) {
>>           cout<<  "  Introduce digito "<<  j-9<<  ": "; j++;
>>           cin>>  numero [i];
>>           if (numero [i] == '\n') break;
>>           i++;
>>       }
>>
>> ¿Qué es lo que estoy haciendo mal?
>>
>> _______________________________________________
>> Lista de correo Cconclase Cconclase en listas.conclase.net
>> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
>> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20110429/fa3cde2a/attachment.html>


Más información sobre la lista de distribución Cconclase