मैंने एक ऐसा एप्लिकेशन विकसित किया जो धारावाहिक बंदरगाह द्वारा एक Arduino के लिए डेटा भेजता है, लेकिन मुझे समझ में नहीं आता कि मैं इसे Arduino पर कैसे प्राप्त कर सकता हूं। मैं Arduino के लिए सीरियल पोर्ट द्वारा एक स्ट्रिंग भेजता हूं और Arduino इसे प्राप्त करता है, लेकिन यह मेरे कोड में काम नहीं करता है (Arduino पर, मुझे एक समय में एक बाइट प्राप्त होता है)।मैं पीसी से एक Arduino में डेटा कैसे प्राप्त कर सकता हूं?
अद्यतन: यह काम कर रहा;)
सी # में कोड है कि भेजता डेटा:
using System;
using System.Windows.Forms;
using System.Threading;
using System.IO;
using System.IO.Ports;
pulic class senddata() {
private void Form1_Load(object sender, System.EventArgs e)
{
//Define a serial port.
serialPort1.PortName = textBox2.Text;
serialPort1.BaudRate = 9600;
serialPort1.Open();
}
private void button1_Click(object sender, System.EventArgs e)
{
serialPort1.Write("10"); //This is a string. The 1 is a command. 0 is interpeter.
}
}
Arduino कोड:
मैं अद्यतन कोड
#include <Servo.h>
Servo servo;
String incomingString;
int pos;
void setup()
{
servo.attach(9);
Serial.begin(9600);
incomingString = "";
}
void loop()
{
if(Serial.available())
{
// Read a byte from the serial buffer.
char incomingByte = (char)Serial.read();
incomingString += incomingByte;
// Checks for null termination of the string.
if (incomingByte == '0') { //When 0 execute the code, the last byte is 0.
if (incomingString == "10") { //The string is 1 and the last byte 0... because incomingString += incomingByte.
servo.write(90);
}
incomingString = "";
}
}
}
है
शायद एक बेहतर जगह पूछने के लिए: http: //electronics.stackexchange।कॉम/ – vikingosegundo