El código de Visual Basic 2010 supone tienes Form1 con 2 botones Button1 y Button2 y SerialPort1 controla. Button1 envía un 1 y Button2 envía un 0 para el puerto serie COM10 (cambiar esto para que coincida con tu PC a la configuración del puerto Arduino)
Ver foto adjunta de mi diseño de formulario.
El código del Sketch de Arduino Uno simplemente espera y Lee del puerto serie. Si ves 1 activará 13 PIN y si ve 0 se apaga PIN 13. Si tienes un LED en el PIN 13, puede activar y desactivar. En el Arduino Uno, 13 PIN está conectado a un LED a bordo.
He utilizado COM10 como un puerto serie pero se puede (y debe) cambiar para que coincida con el puerto serie de Arduino.
El propósito de este código es simplificar la explicación de cómo conectar VB con Arduino. Usted puede Agregar error al procesar y más inteligencia, basado en sus necesidades particulares.
Asegúrese de que arrastra el icono de control de puerto serie de la caja de herramientas al formulario. Debe tener el nombre SerialPort1
ADVERTENCIA: En mi PC tuve para cerrar la ventana del IDE de Arduino Serial Monitor mientras se ejecute el programa VB, lo ejecuto en todo tipo de COM puerto acceso denegado mensaje de error y el programa fallarán.
Usted puede descargar Visual Basic Express 2010 gratis desde Microsoft
http://www.Microsoft.com/VisualStudio/en-US/products/2010-Editions/Visual-Basic-Express
'---INICIO DE CÓDIGO DE VB 2010---
' Nota: estoy usando COM10 por lo que necesitará cambiar el código de Visual Basic para que coincida con el puerto COM
Las importaciones de System.IO
Las importaciones System.IO.Ports
Las importaciones System.Threading
Public Class Form1
_Continue compartido como Boolean
Compartido _serialPort SerialPort
Privada Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) maneja MyBase.Load
SerialPort1.Close()
SerialPort1.PortName = "com10" ' cambiar el puerto com para que coincida con su puerto de Arduino
SerialPort1.BaudRate = 9600
SerialPort1.DataBits = 8
SerialPort1.Parity = Parity.None
SerialPort1.StopBits = StopBits.One
SerialPort1.Handshake = Handshake.None
SerialPort1.Encoding = System.Text.Encoding.Default ' muy importante!
End Sub
Privada Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) maneja Button1.Click
SerialPort1.Open()
SerialPort1.Write("1")
SerialPort1.Close()
End Sub
Privada Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) maneja Button2.Click
SerialPort1.Open()
SerialPort1.Write("0")
SerialPort1.Close()
End Sub
Clase final
'---FIN DE CÓDIGO DE VB 2010---
---INICIO DEL SKETCH DE ARDUINO---
//
Mezclado por: Hazim Bitar
Basado en: la ciencia Guy 14 youTube tutorial http://youtu.be/g0pSfyXOXj8
int ledPin = 13; el número de los pines del LED
void setup() {}
Serial.Begin(9600); velocidad serial
pinMode (ledPin, salida); conjunto LED como salida
digitalWrite (ledPin, LOW); Apagar LED
}
void loop() {}
mientras que (Serial.available() == 0); no hacer nada si no enviado
int val = Serial.read() - '0'; deducir el valor ascii de '0' para encontrar el valor numérico del número enviado
Si (val == 1) {/ / prueba de comando 1 luego enciende LED
Serial.println ("LED");
digitalWrite (ledPin, HIGH); enciende LED
}
else if (val == 0) / / prueba de comando 0 entonces apague el LED
{
Serial.println ("LED apagado");
digitalWrite (ledPin, LOW); Apagar LED
}
Else / / si no una de comando, no
{
Val = val;
}
Serial.println(Val);
Serial.Flush(); claro puerto serie
}
---FINAL DEL SKETCH DE ARDUINO---