[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