Skip to content

Instantly share code, notes, and snippets.

@juanchehin
Created April 15, 2024 22:33
Show Gist options
  • Save juanchehin/23d9f96c69b16d0c5e2f5aa8f58068c3 to your computer and use it in GitHub Desktop.
Save juanchehin/23d9f96c69b16d0c5e2f5aa8f58068c3 to your computer and use it in GitHub Desktop.
private void conectar_metodo_uno()
{
Parity parity_bit = Parity.None;
StopBits stop_bit = StopBits.One;
try
{
alta_log("clic Conectar metodo dos");
if (cbParityBit.Text == "Si")
{
parity_bit = Parity.Mark;
}
if (cbParityBit.Text == "2")
{
stop_bit = StopBits.Two;
}
//spPuertos = new SerialPort(puertoSeleccionado, Int32.Parse(dupBaudRate.Text), parity_bit, Int32.Parse(dupDataBits.Text), StopBits.One); // ver manual de la balanza para estos parametros
SerialPort port = new SerialPort(
cbPuertos.Text,
int.Parse(dupBaudRate.Text),
parity_bit,
Int32.Parse(dupDataBits.Text),
stop_bit
);
port.Open();
alta_log("Puerto " + cbPuertos.Text + " abierto , dupBaudRate : " + dupBaudRate.Text);
alta_log("Configuracion del puerto ");
// Muestra la configuración del puerto en la consola
alta_log("Configuración del puerto serie:");
alta_log($"Nombre del puerto: {port.PortName}");
alta_log($"Velocidad de transmisión: {port.BaudRate} baudios");
alta_log($"Bits de datos: {port.DataBits}");
alta_log($"Paridad: {port.Parity}");
alta_log($"Bits de parada: {port.StopBits}");
int contador_limite = 10;
port.ReadTimeout = 1000;
while ((btnConectar.Text == "Desconectar") && (contador_limite > 0))
{
alta_log("Pasa while - contador : " + contador_limite);
try
{
// Intentar leer una línea del puerto serie
string data = port.ReadLine();
alta_log("Data recibida - metodo 1 : " + data);
lblDatosRecibidos.Text = data;
// Manejar los datos recibidos
}
catch (TimeoutException)
{
// Manejar el tiempo de espera alcanzado
alta_log("Se alcanzó el tiempo de espera al leer del puerto serie.");
Console.WriteLine("Se alcanzó el tiempo de espera al leer del puerto serie.");
}
catch (Exception ex)
{
// Manejar otras excepciones
alta_log("Se produjo un error al leer del puerto serie: " + ex.Message);
Console.WriteLine("Se produjo un error al leer del puerto serie: " + ex.Message);
}
//string data = port.ReadLine();
contador_limite -= 1;
}
}
catch (Exception ex)
{
MessageBox.Show("Problema con conexion metodo dos : " + ex.Message.ToString(), "Problema StoreSoft");
alta_log(ex.Message.ToString());
btnConectar.Text = "Conectar";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment