De 2010 van de Visual Basic-code wordt ervan uitgegaan dat u Formulier1 hebt met 2 knoppen Button1 en Button2 en SerialPort1 regelt. Button1 stuurt een 1 en Button2 stuurt een 0 op de seriële poort COM10 (veranderen zodat deze overeenkomen met uw PC naar de instelling van de poort van de Arduino)
Zie bijgevoegde foto van mijn eenvoudige formulierontwerp.
De Arduino Uno schets code gewoon wacht en leest de seriële poort. Het zal PIN 13 uitzetten als het ziet 1 die zal het PIN 13 inschakelen en als het ziet 0. Hebt u een LED op PIN 13, kunt u het in- en uitschakelen. Op de Arduino Uno, PIN 13 is gekoppeld aan een een ingebouwde LED.
Ik gebruikte COM10 als een seriële poort, maar u kunt (en moet) wijzigen zodat het overeenkomt met uw seriële poort van de Arduino.
Het doel van deze code is te vereenvoudigen uitleg van de werking VB verbinden met Arduino. U kunt de foutverwerking en meer intelligentie op basis van uw specifieke behoeften.
Zorg ervoor dat u het pictogram van de seriële poort-besturingselement uit de werkset op het formulier sleept. Het moet de naam SerialPort1
Waarschuwing: Op mijn PC die ik had om te sluiten van het venster van de Arduino IDE seriële Monitor terwijl runing de VB-programma, anders ik lopen in alle soorten foutmelding over COM poort toegang geweigerd en het programma zal mislukken.
U kunt Visual Basic Express 2010 kostenloos downloaden van Microsoft
http://www.Microsoft.com/VisualStudio/en-us/Products/2010-Editions/Visual-Basic-Express
'---BEGIN VAN 2010 VBCODE---
' Opmerking: Ik ben met behulp van COM10 dus u de Visual Basic-code moet zodat deze overeenkomen met de COM-poort wijzigen
Invoer System.IO
Invoer System.IO.Ports
Invoer System.Threading
Public Class Form1
Gedeelde _continue As Boolean
Gedeeld _serialPort als SerialPort
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) verwerkt MyBase.Load
SerialPort1.Close()
SerialPort1.PortName = "com10" ' com-poort zodat deze overeenkomen met de Arduino-poort wijzigen
SerialPort1.BaudRate = 9600
SerialPort1.DataBits = 8
SerialPort1.Parity = Parity.None
SerialPort1.StopBits = StopBits.One
SerialPort1.Handshake = Handshake.None
SerialPort1.Encoding = System.Text.Encoding.Default ' heel belangrijk!
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) behandelt Button1.Click
SerialPort1.Open()
SerialPort1.Write("1")
SerialPort1.Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) verwerkt Button2.Click
SerialPort1.Open()
SerialPort1.Write("0")
SerialPort1.Close()
End Sub
Einde klasse
'---EINDE VAN VB 2010 CODE---
---BEGIN VAN ARDUINO SKETCH---
//
Gemengde door: Hazim Bitar
Op basis van: Science Guy 14 youTube tutorial http://youtu.be/g0pSfyXOXj8
int ledPin = 13; het nummer van de LED-pin
VOID Setup {}
Serial.begin(9600); seriële snelheid instellen
pinMode (ledPin, OUTPUT); LED stellen als uitvoerapparaat
digitalWrite (ledPin, laag); LED uitschakelen
}
void loop {}
terwijl (Serial.available() == 0); niets als er niets verzonden
int val = Serial.read() - '0'; aftrek van de ASCII-waarde van "0" vindt u numerieke waarde verzonden aantal
Als (val == 1) {/ / testen voor opdracht 1 dan LED inschakelen
Serial.println ("LED op");
digitalWrite (ledPin, hoge); LED inschakelen
}
anders als (val == 0) / / testen opdracht 0 vervolgens zwenking vandoor LED
{
Serial.println ("LED uitschakelen");
digitalWrite (ledPin, laag); LED uitschakelen
}
anders / / als niet een van bovenstaande commando, niets doen
{
Val = val;
}
Serial.println(val);
Serial.Flush(); Schakel seriële poort
}
---EINDE VAN ARDUINO SKETCH---