My Arduino part:
<pre>int number[3];
int n;
int i = 0;
int led = 12;
int led2=7;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
}
void loop() {
if (Serial.available() > 0) {
n = Serial.read();
if (i < 3)
{
number[i] = n;
switch (number[0])
{
case 1:
openClose();
break;
case 2:
openCloseTwice();
break;
case 3:
if (i == 2)
{
for (int j = 0; j < number[1]; j++)
{
delay(500);
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
}
delay(500);
for (int k = 0; k < number[2]; k++)
{
delay(500);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
}
}
break;
default:
break;
}
i++;
}
else
{
i = 0;
}
}
}
void openClose()
{
for (int i = 0; i < 1; i++)
{
delay(500);
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
}
}
void openCloseTwice()
{
for (int i = 0; i < 2; i++)
{
delay(500);
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
}
}
My c# part:
if (serialPort1.IsOpen)
{
int MyInt = Convert.ToInt32(textBox1.Text);
byte[] b = BitConverter.GetBytes(MyInt);
serialPort1.Write(b, 0, 1);
int MyInt2 = Convert.ToInt32(textBox2.Text);
byte[] z = BitConverter.GetBytes(MyInt2);
serialPort1.Write(z, 0, 1);
int MyInt3 = Convert.ToInt32(textBox3.Text);
byte[] p = BitConverter.GetBytes(MyInt3);
serialPort1.Write(p, 0, 1);
}
else
{
MessageBox.Show("Please control your connection");
}