2016-04-05 39 views
0

İşlemden arduinoya bir dize göndermek istiyorum. ama arduino seri gelen herhangi bir veri almaz ... işleme kodu için aşağıya bakınız: Bu komut hiçbir şey çalıştırdığınızdaarduino seri veri almıyor

String serialData; 

String serialDataRed; 
String serialDataGreen; 
String serialDataBlue; 

void setup(){ 
    Serial.begin(9600); 

} 

void loop(){ 

    if (Serial.available()) { 
     serialData = Serial.readString(); 

     serialDataRed = serialData.substring(0, 5); 
     serialDataGreen = serialData.substring(9, 16); 
     serialDataBlue = serialData.substring(20, 26); 
    } 

} 

arduino kokan olur:

import processing.serial.*; 
Serial myPort; 

void setup(){ 
    String portName = Serial.list()[2]; 
    myPort = new Serial(this, portName, 9600); 
} 

void draw(){ 

    myPort.write(parseRed + " | " + parseGreen + " | " + parseBlue); 

} 

benim arduino kodunu buraya bakınız Herhangi bir veri almayı görüyorum ... Birisi bana yanlış yaptığımı söyler mi? D tür aptalca bir hata hamur ...

String portName = Serial.list()[2]; 

olmalıdır:

+0

ParseRed', parseGreen' nedir, ve 'parseBlue'? Nerede tanımlanmış ve değerleri nelerdir? Arduino 'loop()' işlevi hiç çağrıldı mı? İfadede yazıyor mu? [Mcve] yüklerseniz ve bize zaten yaptığınız hata ayıklama adımlarını söylerseniz daha iyi şansınız olur. –

+0

parseRed, parseGreen, parseBlue dizeleridir. aşağıdaki gibi görünürler: "minRed" veya "neuGreen" veya "maxBlue" vb. ve evet loop() işlevi çağrılır, çünkü işleme sırasında draw() işleviyle aynıdır. – FutureCake

+0

Ama aslında çağrıldığını nereden biliyorsun? Durumun garanti altına alınması için hata ayıklama yaptınız mı? Sorunu, kodun gerçek uygulamasının beklediğinizden farklı olduğu belirli bir yere kadar daraltmanız gerekir. Çalıştığınız kodu gösteren bir [mcve] yayınlamadığınız sürece gerçekten yardımcı olamayız. –

cevap

0

iyi benim hata buldu

benim arduino sonra önce farklı usb bağlantı noktasına bağlı olan
String portName = Serial.list()[3]; 

çünkü. .. dersi: Doğru portu kullanıp kullanmadığınızı kontrol edin ... yardım hamuruna teşekkür ederiz. :)