# Rutinas de control - Puerto Serie - C# - .Net Framework



## MaMu (Jul 7, 2011)

Desde hace un tiempo me habian pedido en forma privada, vía mensaje privado, algún material útil que sirviera para controla el puerto serie desde una aplicación en C# .Net.
Aquí les dejo un txt, con el código para crear una DLL conteniendo dichas funciones.
Como verán, hay algunas líneas comentadas, a modo de ejemplo, que quizas les pueda ser útil según lo que estén desarrollando.
Esta librería, la uso para controlar un entrenador de pic, y hasta el dia de hoy nunca me ha dado problemas, incluso la utilizo desde la notebook, con un conversor USB-Serial, y funciona. (notebook hp).
Espero que se diviertan comunicando uC.

Saludos


----------



## Meta (Jul 10, 2011)

Hola:

Hice un manual y código fuente sobre ello. Vídeo incluido.

http://electronica-pic.blogspot.com/2008/11/electrnica-pic.html

Saludo.


----------



## Gabriel17a (Ago 27, 2014)

Buen día.
Estoy creando una pequeña  aplicación en C# que Escriba, lea e imprima los datos que le llegan a el puerto serial.
Ya he logrado que escriba, pero me falta que lea e imprima los datos.

El código es el siguiente:

```
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;
using System.IO;


namespace Bascula
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //configuring the serial port
            serialPort1.PortName = "COM2";
            serialPort1.BaudRate = 9600;
            serialPort1.DataBits = 8;
            serialPort1.Parity = Parity.None;
            serialPort1.StopBits = StopBits.One;

            //opening the serial port
            serialPort1.Open();

            //write data to serial port
            serialPort1.Write("******Prueba de Comunicacion******");

            //close the port
            serialPort1.Close();

        }

        private void button2_Click(object sender, EventArgs e)
        {
            //configuring the serial port
            serialPort1.PortName = "COM2";
            serialPort1.BaudRate = 9600;
            serialPort1.DataBits = 8;
            serialPort1.Parity = Parity.None;
            serialPort1.StopBits = StopBits.One;
        
            //opening the serial port
            serialPort1.Open();

            string lectura;

            //Creamos el archivo y le damos una ubicacion para ser guardado
            StreamWriter prueba = new StreamWriter(@"C:\Users\Sergio A\Desktop\texto.txt");  
         
            //write data to serial port
            lectura = serialPort1.ReadLine();
           
            
            //Cerramos el archivo
            prueba.Close();

            //close the port
            serialPort1.Close();

            this.listBox1.Items.Add(lectura);
            
        }

       
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
    }
}
```
Desde ya agradezco el apoyo ya que todavía me estoy formando en el área de aplicaciones y pues me falta mucho para dominarle.


----------

