[Info] Encender y apagar un Led con ARduino y Visual Studio 2015

Encender y apagar un Led con Arduino y Visual Studio 2015




​
​
Código Arduino​

​
Código Arduino IDE, encender y apagar el Led 13 que viene integrado en la placa Arduino UNO.


Código:
 pinMode(pinLed1, OUTPUT);  // Inicializa el pin del Led 1 como salida.
char caracter;
String comando;
  void setup()
  {
                Serial.begin(115200);
}
void loop()
  {
/* Voy leyendo carácter a carácter lo que se recibe por el canal
 *  serie (mientras llegue algún dato allí), y los voy concatenando
*  uno tras otro en una cadena. En la práctica, si usamos el
*  "Serial monitor" el bucle while acabará cuando pulsemos Enter.
*  El delay es conveniente para no saturar el canal serie y que la
*  concatenación se haga de forma ordenada.
*/

while (Serial.available() > 0)
{
     caracter= Serial.read();
     comando.concat(caracter);
     delay(10);
}
  /* Una vez ya tengo la cadena "acabada", compruebo su valor y hago
* que la placa Arduino reaccione según sea este. Aquí podríamos
* hacer lo que quiesiéramos: si el comando es "tal", enciende
* un Led, si es cual, mueve un motor... y así.
*/
  if (comando.equals("Led_ON") == true)
     {
          digitalWrite(pinLed, HIGH); // Enciende el Led.
          Serial.println("Led 13 encendido.");
     }
  if (comando.equals("Led_OFF") == true)
     {
          digitalWrite(pinLed, LOW); // Apaga el Led.
          Serial.println("Led 13 apagado.");
     } 

// Limpiamos la cadena para volver a recibir el siguiente comando.
 comando="";
  }
  // Fin del código.









Probando Monitor Serie

Probaremos los comandos establecidos en el código de Arduino, encender el Led corresponde al comando Led_ON y apagar el Led corresponde al comando Led_OFF.
Conectamos Arduino con el USB al ordenador o PC y probamos el código pulsando “Control + U” o en Programa -> Subir.
Abrimos el Monitor Serie de Arduino IDE, en Herramientas -> Monitor Serie.
Cuando tengamos la ventana abierta del Monitor Serie, introducimos Led_ON para encender el Led 13 de la placa Arduino UNO.
Como puedes ver en la imagen de arriba, al introducir el comando Led_ON, a parte que dice en el Monitor Serie el mensaje “Led 13 encendido”, comprueba en la placa Arduino UNO que dicho Led realmente esté encendido. Lo mismo probar el comando Led_OFF para apagar el Led. No olvidar que se usan los 115200 baudios tanto en el programa como en el Monitor Serie.



​



Comprueba que el Led del pin 13 lo puedes encender y apagar.
​









Visual C# AWF 2015

​
Creamos un proyecto nuevo con Visual C#.


​
Selecciona Entorno clásico en Visual C#, Aplicación de Windows Forms, he puesto como nombre del proyecto en este caso Arduino_Led, luego pulsar Aceptar.



​




Arrastramos dos botones en el formulario principal, en el cuadro de propiedades cambiamos los valores.
Botón Enceder:
Propiedad
Cambie a
Text
Encender
(Name)
button_Encender


Botón Apagar:
Propiedad
Cambie a
Text
Apagar
(Name)
button_Apagar




​



Revisa que puerto COM estás usando, en mi caso es el COM4, indicado en la parte de debajo de Arduino IDE.


Propiedades a cambiar del componente SerialPort.
Propiedad
Cambie a
(Name)
serialPort1
BaudRate
115200
PortName
COM4
StopBits
Two




Código Visual C# AWF.



Código:
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using System.IO.Ports; // No olvidar.

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

            // Abrir puerto mientras se ejecuta esta aplicación.
            if(!serialPort1.IsOpen)
            {
                try
                {
                    serialPort1.Open();
                }
                catch (System.Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
        }

        private void button_Encender_Click(object sender, EventArgs e)
        {
            byte[] mBuffer = Encoding.ASCII.GetBytes("Led_ON");
            serialPort1.Write(mBuffer, 0, mBuffer.Length);
        }

        private void button_Apagar_Click(object sender, EventArgs e)
        {
            byte[] mBuffer = Encoding.ASCII.GetBytes("Led_OFF");
            serialPort1.Write(mBuffer, 0, mBuffer.Length);
        }
    }
}

¿Cualquier sugerencia es bienvenida?

Sigo ampliando este documento....

Más información...
http://electronica-pic.blogspot.com.es/2015/11/encender-y-apagar-un-led-con-arduino-y.html

Saludos.
 
Atrás
Arriba