• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

arduino unity i niepotrzebny znak enter

Mały hosting, OGROMNE możliwości
0 głosów
365 wizyt
pytanie zadane 15 maja 2018 w C# przez Konrad Gałach Użytkownik (880 p.)

Witam ostatnio udało mi się skomunikować Arduino z Unity ale co zrobić , żeby nie musieć wysyłać znak enter z arduino?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO.Ports;

public class s : MonoBehaviour {

    SerialPort port = new SerialPort("COM8",9600);
    public string receive;
    public int mark1;
	void Start () {

        port.ReadTimeout = 1;// mili sekundy
	port.Open();
    
	}
	

	void Update () {
        try
        {
           receive = port.ReadLine();
            
            Debug.Log(receive);

        }
        catch
        {
            Debug.Log("ERROR");
        }	
	}
}

arduono :

 


int var=11;

void setup()
{
  pinMode(7,INPUT);
  pinMode(6,INPUT);
  
  digitalWrite(7,HIGH);
  digitalWrite(6,HIGH);
  Serial.begin(9600);
}
int i=4;
void loop()
{
  Serial.println(i);
  
  if(digitalRead(6)==0)  {
   i++; 
  }
  if(digitalRead(7)==0)
  {
    i--;
  }

  delay(20);
}

z góry dzięki za pomoc 

1 odpowiedź

0 głosów
odpowiedź 15 maja 2018 przez SimiVoid Pasjonat (19,790 p.)
wybrane 30 maja 2019 przez Konrad Gałach
 
Najlepsza

Po pierwsze zmienił bym sposób tworzenia klasy SerialPort:

SerialPort serialPort;

private void Start()
{
   InitSerialPort();
}

private void InitSerialPort()
        {
            string portName = "";
            int baudRate = 9600;

            foreach (string name in SerialPort.GetPortNames())
            {
                if (name.ToLower().StartsWith("com"))
                {
                    portName = name;

                    break;
                }
            }

            serialPort = new SerialPort(portName, baudRate);

            serialPort.Open();
        }

Pozwoli ci to podpiąć Arduino do dowolnego portu COM bez potrzeby zmiany kodu.

 

A co do twojego problemu nie do końca go rozumiem i czy możesz mi go jaśniej przedstawić

komentarz 15 maja 2018 przez Konrad Gałach Użytkownik (880 p.)
Komunikacja działa tylko wtedy kiedy arduino wysyła dane za pomocą funkcji println (chodzi mi o enter).

Podobne pytania

0 głosów
1 odpowiedź 3,022 wizyt
0 głosów
2 odpowiedzi 2,272 wizyt
0 głosów
2 odpowiedzi 743 wizyt
pytanie zadane 15 sierpnia 2019 w JavaScript przez Whereismycode Obywatel (1,710 p.)

93,718 zapytań

142,631 odpowiedzi

323,262 komentarzy

63,266 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...