Arduino Polska Forum
Arduino Mega Processing - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Instalacja i rozwiązywanie problemów (https://forum.arduinopolska.pl/dzial-instalacja-i-rozwi%C4%85zywanie-problem%C3%B3w)
+--- Wątek: Arduino Mega Processing (/watek-arduino-mega-processing)



Arduino Mega Processing - raadley - 25-04-2019

Witam,

zacząłem uczyć się komunikacji Arduino z Processing i korzystam z tej strony, na której podstawy są bardzo fajnie wytłumaczone.
Natknąłem się jednak na problem, którego nie jestem w stanie zdiagnozować ponieważ robię wszystko dokładnie jak w poradniku.

Pierwsza zadanie z poradnika gdzie wysyłam wiadomość z Arduino do Processing'u działa w porządku. Nie działa mi natomiast komunikacja w drugą stronę. Otóż wgrywam program na Arduino, wszystkie diody na płytce Arduino Mega gasną, ale gdy odpalam program napisany w Processing zapala się wbudowana dioda do pinu 13 oraz pulsuje dioda TX. Niezależnie od tego czy klikam w puste pole w Processingu, żeby wysyłać ciąg jedynek czy też nie ciągle świeci wbudowana dioda oraz dioda TX.
Nie rozumiem co może być nie tak.

Arduino:
Kod:
#define onBoardLed 13

char val;

void setup() {
 Serial.begin(9600);
 pinMode(onBoardLed, OUTPUT);
}

void loop() {
 if(Serial.available() > 0) {
   val = Serial.read();
 }
 if(val == '1') {
     digitalWrite(onBoardLed, HIGH);
   }
   else {
     digitalWrite(onBoardLed, LOW);
   }
delay(50);
}

Processing:
Kod:
import processing.serial.*;

Serial myPort;
String portName;

void setup() {
 size(200, 200);
 
 portName = Serial.list()[0];
 myPort = new Serial(this, portName, 9600);
}

void draw() {
 if(mousePressed == true) {
   myPort.write('1');
   println('1');
 }
 else {
   myPort.write('0');
 }
}


Prosiłbym o pomoc.


RE: Arduino Mega Processing - kaczakat - 26-04-2019

Niestety nie zamierzam się zagłębiać w processing, tak ogólnie patrząc na drugi kod to 1 jest wysyłana gdy mysz jest "kliknięta", nie ma warunku, że ma być gdzieś konkretnie - i tak nikt nic nie napisał, to sobie tak strzelę... Gdyby to był jakiś program na PC to działanie wychodziłby z obiektu klikanego, a nie klikającego.