2016-03-21 26 views
-1

Evet, tiksinti refenrendum ile ilgili evet ve hayır için tweet sayısını sayan bir programımız var. Doğru bir biçimde biçimlendirmek için kodu alamadığım için bir pastebin bağlantısı: http://pastebin.com/G3v02KjFArduino işlemine geri gönderme verileri gönderiliyor

Her neyse, Twitter4j kütüphanesini kullanarak tweet'leri almak için işlemden arduinoya bilgi gönderiyoruz. Tweetleri saydık ve bir servo açısı olmak istediğimiz bir numara aldık. Ancak, bu sayıyı arduino'ya nasıl göndereceğimizi anlayamayız, böylece servoyu kontrol edebiliriz.

Bunu yapmak için nasıl giderdik?

cevap

1

Özellikle Serial library reference ve write() işlevine bir göz atın.

Tek bir değer geçtiğiniz için, açı (0 ile 180 arasında) bu tamsayı değeri tek bir bayt olarak gönderilebilir. calculateAngle() fonksiyonunda Örneğin Arduino gönderebilirsiniz:

if(myPort != null) myPort.write((int)angle); 

(Çıplak akılda, bir tam sayıya şamandıra değerini döküm olacak zemin/değer aşağı yuvarlak) Arduino tarafta

, size En az bir bayt varsa, değeri geri okumanız yeterlidir.

  • İşleme: Bu durumda sadece orada hatalardır (ve geçersiz servo pozisyonları kullanmak istemem) Aşağıdaki örnekler Kasaya git

    if(Serial.available() > 0){ 
        int angle = constrain(Serial.read(),0,180); 
        myservo.write(angle); 
    } 
    

    emin olun, değeri constrain() için iyi bir fikirdir > Örnekler> Kütüphane> seri>SimpleWrite

  • Arduino> örnekleri> 04.Communication>SerialEvent
  • (İşlem kroki alt kısmında bulunan çok çaba isteyen kodu kullanımı)