Hola:
Lo pregunto porque me he llevado sorprecillas. Pensé que el println te envía el \n, para mi sorpresa envía el \r. en el cual me dice recibe esto en C#.
635\r.
Debo usar delimitadores.
Volviéndome loco de la cabeza con el \n y es \r. Se puede mirar el cuadro aquí para los curiosos.
Como estoy acostumbrado aún con los PIC que envían mucho en hex si o si trabajando en asm, aquí me olvidé de muchas cosas.
En algunos casos sobre tu pregunta si he usado codificación, pues si y no, depende. Si se usa para PIC de forma interna o algo específico como comandos, hay que usar hexadecimales siguiendo esta norma en C#.
private void button_t_Click(object sender, EventArgs e)
{
byte[] mBuffer = new byte[5];
mBuffer[0] = 0x74;
mBuffer[1] = 0x75;
mBuffer[2] = 0x89;
mBuffer[3] = 0x20;
mBuffer[4] = 0x6C;
serialPort1.Write(mBuffer, 0, mBuffer.Length);
}
Como puedes ver arriba, usa el código exacto, sin problemas si no sabes que codificación usar.
Dentro de la codificación hay varios tipos. Si quiero enviar codificación ASCII, tengo que saber que en el otro lado recibe ASCII también, no UTF8 por poner un ejemplo, sobre todo si se envías tramas de bytes para textos. Para asegurarse, hacer pruebas. Lo comento porque hay dispositivos cerrado por fabricantes que debes saber como es, haciendo pruebas con codificaciones o con un datalogger o simplemente con un analizador lógico.
Ejemplo enviar codificación en ASCII en este caso.
private void button_b_Click(object sender, EventArgs e)
{
byte[] mBuffer = Encoding.ASCII.GetBytes("Hello World");
serialPort1.Write(mBuffer, 0, mBuffer.Length);
}
También a la hora de recibir puedes usar codificación usando C# para este caso.
Aunque no lo parezca, estoy hasta con pequeños problemas que tengo que resolver antes de hacer el siguiente tutorial sobre el puerto serie y entradas analógicas con Arduino, me lo piden por todas partes a pesar que ejemplos hay también, por todas partes.
Mientras hsgo pruebas y pruebas con C#, compraré un servo motor para hacer otros ejemplos, a parte del brillo del led. Como recibe datos constantemente, me da problemas en algunas cosas que antes debo resolver sin problemas para luego plasmar estos conocimentos en un pdf. Todo lo que sea entrada analógico como usar sensores de humedad por poner ejemplo, habrá tutorial entrada analógica y en otro tutorial a parte como salida analógica, lo mismo hice con entrada digital y salida digital.
Saludos.