here some delay while i pressed btn, unity responded after five or six second later
plz help me some one...
this is arduino sketch
int led = 13;
int btn = 4;
int btn2 = 3;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
pinMode(btn, INPUT);
pinMode(btn2, INPUT);
}
void loop() {
if(digitalRead(btn) == HIGH)
{
digitalWrite(led, HIGH);
Serial.write(1);
Serial.flush();
delay(20);
Serial.println("1");
}
else
{
digitalWrite(led, LOW);
}
//////////////////////////////////
if(digitalRead(btn2) == HIGH)
{
digitalWrite(led, HIGH);
Serial.write(2);
Serial.flush();
delay(20);
Serial.println("2");
}
}
this is unity script that receive data from arduino
uusing UnityEngine;
using System.IO.Ports;
using UnityEngine.UI;
using System.Collections;
public class InComing : MonoBehaviour {
SerialPort sp = new SerialPort("COM7", 9600);
//public Text rArduino;
void Start ()
{
sp.Open();
sp.ReadTimeout = 1;
}
//////////////////////////////
void Update () {
try
{
string st = ""+ sp.ReadByte();
Debug.Log(st+"");
moveObject(st);
}catch(ExitGUIException)
{}
}
void moveObject(string dir)
{
if(dir == "1")
{
transform.Translate(2 * Time.deltaTime, 0, 0, Space.World);
//transform.Translate(Vector3.right * 5 * Time.deltaTime, Space.World);
}
if(dir == "2")
{
transform.Translate(2 * -Time.deltaTime, 0, 0, Space.World);
//transform.Translate(Vector3.left * 5 * Time.deltaTime, Space.World);
}
}
}