Enviar cadena hexadecimal en c#

Mario me pregunta :
<Espero me puedas ayudar necesito escribir una cadena en un cuadro de texto en valores hexadecimales y enviarlos por un puerto serial y capturar la respuesta y convertirla en hexadecimal ejemplo: enviar 7E000408014E4464 (son valores hexadecimales) capturar la respuesta (también es una cadena)y convertirla a hexadecimal mostrándola en un texbox ya convertida. estoy utilizando C# con sharpdevelop.>

Respuesta : (C# Visual Studio) 🙂

using System;
using System.Windows.Forms;
 
namespace WindowsFormsApplication1
{
 
    public partial class Form1 : Form
    {
        System.IO.Ports.SerialPort port = new System.IO.Ports.SerialPort();
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            string toSend = "454647484950";
            for (int ndx = 0; ndx <= toSend.Length-1; ndx+=2)
            {
                byte asc = Convert.ToByte(toSend.Substring(ndx, 2), 16);
                char sendChar = Convert.ToChar(asc);
                port.Write(sendChar.ToString());
            }
            //
            // No olvideis que 'E' es '69' en decimal y '45' en Hex
            byte[] Recibidos = { 69,70,71,72,73};
            string hexInString = "";
            foreach (int val in Recibidos)
            {
                hexInString+=String.Format("{0:x2}",val);
            }
        }
    }
}

Saludos,
PepLluis,

One Reply to “Enviar cadena hexadecimal en c#”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.