[Processing e Arduino] Esempio Dimmer non funzionante!!

Ciao a tutti, come da titolo, non riesco a far funzionare lo sketch d’esempio del dimmer… di sicuro sbaglio qualcosa… QUI il link di tutto l’esempio…

const int ledPin = 9;     
const int ledPin = 9; 
void setup()
{
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
}
void loop() {
  byte brightness;
  if (Serial.available()) {
  brightness = Serial.read();
  analogWrite(ledPin, brightness);
  }
}
/* Processing code for this example
 // Dimmer - sends bytes over a serial port
 // by David A. Mellis
 //This example code is in the public domain.
 
 import processing.serial.*;
 Serial port;
 
 void setup() {
 size(256, 150);
 
 println("Available serial ports:");
 println(Serial.list());
 
 // Uses the first port in this list (number 0).  Change this to
 // select the port corresponding to your Arduino board.  The last
 // parameter (e.g. 9600) is the speed of the communication.  It
 // has to correspond to the value passed to Serial.begin() in your
 // Arduino sketch.
 port = new Serial(this, Serial.list()[0], 9600);  
 
 // If you know the name of the port used by the Arduino board, you
 // can specify it directly like this.
 //port = new Serial(this, "COM1", 9600);
 }
 
 void draw() {
 // draw a gradient from black to white
 for (int i = 0; i < 256; i++) {
 stroke(i);
 line(i, 0, i, 150);
 }
 
 // write the current X-position of the mouse to the serial port as
 // a single byte
 port.write(mouseX);
 }
 */

/* Max/MSP v5 patch for this example
 
----------begin_max5_patcher----------
1008.3ocuXszaiaCD9r8uhA5rqAeHIa0aAMaAVf1S6hdoYQAsDiL6JQZHQ2M
YWr+2KeX4vjnjXKKkKhhiGQ9MeyCNz+X9rnMp63sQvuB+MLa1OlOalSjUvrC
ymEUytKuh05TKJWUWyk5nE9eSyuS6jesvHu4F4MxOuUzB6X57sPKWVzBLXiP
xZtGj6q2vafaaT0.BzJfjj.p8ZPukazsQvpfcpFs8mXR3plh8BoBxURIOWyK
rxspZ0YI.eTCEh5Vqp+wGtFXZMKe6CZc3yWZwTdCmYW.BBkdiby8v0r+ST.W
sD9SdUkn8FYspPbqvnBNFtZWiUyLmleJWo0vuKzeuj2vpJLaWA7YiE7wREui
FpDFDp1KcbAFcP5sJoVxp4NB5Jq40ougIDxJt1wo3GDZHiNocKhiIExx+owv
AdOEAksDs.RRrOoww1Arc.9RvN2J9tamwjkcqknvAE0l+8WnjHqreNet8whK
z6mukIK4d+Xknv3jstvJs8EirMMhxsZIusET25jXbX8xczIl5xPVxhPcTGFu
xNDu9rXtUCg37g9Q8Yc+EuofIYmg8QdkPCrOnXsaHwYs3rWx9PGsO+pqueG2
uNQBqWFh1X7qQG+3.VHcHrfO1nyR2TlqpTM9MDsLKNCQVz6KO.+Sfc5j1Ykj
jzkn2jwNDRP7LVb3d9LtoWBAOnvB92Le6yRmZ4UF7YpQhiFi7A5Ka8zXhKdA
4r9TRGG7V4COiSbAJKdXrWNhhF0hNUh7uBa4Mba0l7JUK+omjDMwkSn95Izr
TOwkdp7W.oPRmNRQsiKeu4j3CkfVgt.NYPEYqMGvvJ48vIlPiyzrIuZskWIS
xGJPcmPiWOfLodybH3wjPbMYwlbFIMNHPHFOtLBNaLSa9sGk1TxMzCX5KTa6
WIH2ocxSdngM0QPqFRxyPHFsprrhGc9Gy9xoBjz0NWdR2yW9DUa2F85jG2v9
FgTO4Q8qiC7fzzQNpmNpsY3BrYPVJBMJQ1uVmoItRhw9NrVGO3NMNzYZ+zS7
3WTvTOnUydG5kHMKLqAOjTe7fN2bGSxOZDkMrBrGQ9J1gONBEy0k4gVo8qHc
cxmfxVihWz6a3yqY9NazzUYkua9UnynadOtogW.JfsVGRVNEbWF8I+eHtcwJ
+wLXqZeSdWLo+FQF6731Tva0BISKTx.cLwmgJsUTTvkg1YsnXmxDge.CDR7x
D6YmX6fMznaF7kdczmJXwm.XSOOrdoHhNA7GMiZYLZZR.+4lconMaJP6JOZ8
ftCs1YWHZI3o.sIXezX5ihMSuXzZtk3ai1mXRSczoCS32hAydeyXNEu5SHyS
xqZqbd3ZLdera1iPqYxOm++v7SUSz
-----------end_max5_patcher-----------
 */

Il led è collegato al pin 9… cosa sbaglio?! :drooling_face:

Cos'è che non ti funziona esattamente? Nell'esempio devi inviare ad arduino un valore compreso tra 0 e 255 attraverso la porta seriale per controllare la luminosità del led.

@maggio93: intanto il tuo codice non compila neanche dato che hai messo una doppia definizione della costante ledPin in cima allo sketch ;) E poi perché usare un tipo "int" quando puoi usare un tipo "byte"?

const byte ledPin=9;

No, la doppia definizione è solo un errore fatto mentre lo scrivevo qui… da quello che ho capito io, la luminosità la regolo tramite la finestra di processing, giusto?? mi spiegate un po’ come fare??

leo72:
@maggio93:
E poi perché usare un tipo “int” quando puoi usare un tipo “byte”?

const byte ledPin=9;

Non lo so :smiley: io ho preso il codice dagli esempi di arduino… :smiley:

Ho riprovato a fare qualcosa, ma secondo me non comunicano le porte seriali... cioè, processing deve comunicare con arduino, ma come?? come faccio a fare questa cosa qui?? Qualcuno ne sa qualcosa?? :S

maggio93:

leo72: @maggio93: E poi perché usare un tipo "int" quando puoi usare un tipo "byte"?

const byte ledPin=9;

Non lo so :D io ho preso il codice dagli esempi di arduino... :D

Ah... :sweat_smile:

maggio93: Ho riprovato a fare qualcosa, ma secondo me non comunicano le porte seriali... cioè, processing deve comunicare con arduino, ma come?? come faccio a fare questa cosa qui?? Qualcuno ne sa qualcosa?? :S

Non so aiutarti con Processing, non lo uso.

Risolto!! :D Non so per quale motivo, era un problema della porta COM di Arduino... Adesso va tutto bene ed è una figata!! :D