Ciao a tutti, continuando con qualche esperimento, ho deciso di voler controllare il colore di un LED RGB tramite PC.. In rete ho trovato questo:
http://makesomecode.com/2008/09/06/rgb-led-processing-firmata-and-arduino/
Ora se no ho capito male, abbiamo due parti, una relativa allo sketch da caricare su arduino, che sarebbe questo:
/* Supports as many analog inputs and analog PWM outputs as possible.
*
* Written by Hans-Christoph Steiner
*/
#include
byte analogPin;
void analogWriteCallback(byte pin, int value)
{
pinMode(pin,OUTPUT);
analogWrite(pin, value);
}
void setup()
{
Firmata.setFirmwareVersion(0, 1);
Firmata.attach(ANALOG_MESSAGE, analogWriteCallback);
Firmata.begin();
}
void loop()
{
while(Firmata.available()) {
Firmata.processInput();
}
for(analogPin = 0; analogPin < TOTAL_ANALOG_PINS; analogPin++) {
Firmata.sendAnalog(analogPin, analogRead(analogPin));
}
}
nel tutorial poi si continua parlando della libreria firmata, che ho scaricato e messa nella cartella libreries dell'IDE.
dopo di che dice "Now for the processing code. This will draw a 512×200 box. When we move our mouse in this box it will use the coordinates of the mouse to change the color of the background and the rgb led hooked up to the arduino.."
quindi questa dovrebbe essere la seconda parte che dicevo.. e cioè quella che si dovrebbe occupare di mandare i valori dei colori via seriale ad arduino.. la parte è questa:
import processing.serial.*;
import cc.arduino.*;
Arduino arduino;
int red;
int green;
int blue;
void setup() {
size(512, 200);
arduino = new Arduino(this, Arduino.list()[2], 115200);
}
void draw() {
red = constrain(mouseX/2, 0, 255);
green = constrain(255 - mouseY, 0, 255);
blue = constrain(255 - mouseX/2, 0, 255);
background(red, green, blue);
arduino.analogWrite(9, red);
arduino.analogWrite(10, green);
arduino.analogWrite(11, blue);
}
Qui sto incontrando difficoltà. In quanto non ho capito se bisogna scarcare qualche altra libreria sul processing o altro.. Praticamente al momento della compilazione del codice sopra.. mi da un errore come questo:
" 'Import' does not name a type "
Ce bisogno di modificare qualcosa negli sketch sopra giusto? Io ho collegato i 3 led rgb ai pin digitali 9, 10 e 11.
Grazie mille a tutti della disponibilità!!