Arduino processing Android OSC


olá pessoal, sou novo aqui no fórum e pouca experiência com arduino.
alguns dias atrás comecei ler sobre protocolo osc, processing e comunicação entre eles e estou frente um problema que não consigo resolver.
código arduino: funciona legal, quando abro o monitor da serial, ele responde ascende e apagando o led conforme entrada teclado, 0 ou 1.
code: [select]

#define led1 11
int estadoled;
int leitura;

void setup() {
  serial.begin(9600);
  pinmode(led1,output);
}

void loop(){
  if (serial.available());
  { 
    leitura = serial.read();
    if (leitura == '1'){
      estadoled = 255;
    }
    if (leitura == '0'){
      estadoled = 0;
    }
  }
  analogwrite(led1, estadoled);
}


código processing: aqui o android conversa com o pc(win8 64bits), mas o pc não consegue conversar com o arduino.
code: [select]

import oscp5.*;         
import netp5.*;

oscp5 oscp5;
int button1;
int leitura;
void setup() {
  size(320,480);
  oscp5 = new oscp5(this, 8000);
}

void draw() {
  if (button1==0) {
    leitura=0;
  }
  if (button1==1) {
    leitura=255;
  }
  fill(leitura, 0, button1);
  rect(110, 120, 100, 150);
}

void oscevent(oscmessage theoscmessage) {
  string addr = theoscmessage.addrpattern();
  button1  = int(theoscmessage.get(0).floatvalue());
}


por favor, onde eu estou errando???

consegui outros códigos onde controlo o led, mas ele precisa estar com o firmata -> standartfirmata no arduino e implementar o código no processing. eu não gostaria desse modo, gostaria de fazer implementação normal código no arduino.

desde já obrigado.

boas  :)

eu, ainda sou novo no arduino, por isso ainda não tenho muitos conhecimentos... muito menos no processing...
mas olhando para os código e se dizes que o led acende e apaga conforme primas 0 e 1, o problema está no processing, que não está enviar os dados "1" e "0"... isso porque no teu codigo não inicias comunicação serial com o arduino

experimenta assim:

code: [select]
import processing.serial.*;
import oscp5.*;         
import netp5.*;
oscp5 oscp5;
int button1;
int leitura;
serial arduinoport;

void setup() {
  size(320,480);
  arduinoport = new serial(this, "com3", 9600);
  oscp5 = new oscp5(this, 8000);
}

void oscevent(oscmessage theoscmessage) {
  string addr = theoscmessage.addrpattern();
  button1  = int(theoscmessage.get(0).floatvalue());
}



void draw() {
  if (button1==0) {
    leitura=0;
    arduinoport.write("0");
  }
  if (button1==1) {
    leitura=255;
    arduinoport.write("1");
    rect(110, 120, 100, 150);
  }
}


Arduino Forum > International > Portugues > Arduino processing Android OSC


arduino

Comments

Popular posts from this blog

VIDIOC_S_FMT error 16, Device or resource busy - Raspberry Pi Forums

using a laptop skeleton to build a pi laptop - Raspberry Pi Forums

Forum for Joomla? - Joomla! Forum - community, help and support