Hola:
Con este código puedo enviar un caracter en hexadecimal por el puerto serie, me funciona.
Code Snippetbyte[] miBuffer = newbyte[1];
miBuffer[0] = 0x74; // Letra "t" del ASCII.
this.serialPort1.Write(miBuffer, 0, miBuffer.Length);
Al recibir un caracter hexadecimal que ejecute una instrucción del C#. Por ejemplo:
Un label1 quiero que se muestre un mensaje desde el _Visual C# "Activado" o "Desactivado" depende de losd atos a recibir en modo hexadecimal.
Si en una variable hay al macenado un valor por ejemplo el 0x16. Llega el dato 0x74, como no son iguales aparece un mensaje del label1 en "Desactivado". Si son iguales 0x74 == 0x74 entonces se activa el mensaje "Activado".
Espero que se entienda lo que quiero decir. Ejemplo abajo pero gobertado por un button1. En realidad quiero que sea mediante el db9 RS232.
using
System;using
System.Collections.Generic;using
System.ComponentModel;using
System.Data;using
System.Drawing;using
System.Linq;using
System.Text;using
System.Windows.Forms;using
System.IO.Ports;namespace
Leer_PIC{
publicpartialclassForm1 : Form{
public Form1(){
InitializeComponent();
}
privatevoid button1_Click(object sender, EventArgs e){
int Entrada_de_datos = 0x16;if (Entrada_de_datos == 0x74) // 0x74 es una 't' en ASCII.{
label1.Text =
"Activado";}
else{
label1.Text =
"Desactivado";}
}
}
}
Saludos.