stavo provando a fare una libreria che dati in input i pin di output e il valore di hue, "scrivesse" il colore in RGB
naturalmente non compila
ho seguito il tutorial che tempo fa si trovava in vetrina.
il file header:
#ifndef RGB.h
#define RGB.h
#include "Arduino.h"
class RGB
{
 public:
  RGB(unsigned int hue);
  RGB(byte red);
  RGB(byte green);
  RGB(byte blue);
  void out();
 private:
  int _hue;
  byte _RED;
  byte _GREEN;
  byte _BLUE;
};
#endif
mentre il file cpp:
#include "Arduino.h"
#include "RGB.h"
RGB::RGB(unsigned int hue,byte red,byte green,byte blue)
{
  pinMode(red, OUTPUT);
  pinMode(green, OUTPUT);
  pinMode(blue, OUTPUT);
  _RED = red;
  _GREEN = green;
  _BLUE = blue;
  _hue = hue;
}
void RGB::out()
{
  if (_hue <= 60) {
  analogWrite(_RED,255);
  analogWrite(_GREEN,map(hue, 0, 60, 0, 255));
  analogWrite(_BLUE,0);
 }
 else if (_hue <= 120) {
  analogWrite(_RED,map(hue, 60, 120, 255, 0));
  analogWrite(_GREEN,255);
  analogWrite(_BLUE ,0);
 }
 else if (_hue <= 180) {
  analogWrite(_RED,0);
  analogWrite(_GREEN,255);
  analogWrite(_BLUE,map(hue, 120, 180, 0, 255));
 }
 else if (_hue <= 240) {
  analogWrite(_RED,0);
  analogWrite(_GREEN,map(hue, 180, 240, 255, 0));
  analogWrite(_BLUE,255);
 }
 else if (_hue <= 300) {
  analogWrite(_RED,map(hue, 240, 300, 0, 255));
  analogWrite(_GREEN,0);
  analogWrite(_BLUE,255);
 }
 else if (_hue <= 359) {
  analogWrite(_RED,255);
  analogWrite(_GREEN,0);
  analogWrite(_BLUE,map(hue, 300, 359, 255, 0));
 }
}
mentre il codice che carico sulla scheda è questo:
#include <RGB.h>
RGB RGB(100,6,5,3);
void setup() {
 // put your setup code here, to run once:
}
void loop() {
 // put your main code here, to run repeatedly:
RGB.out();
}
durante il vano tentativo di compilare come errore mi da: "sketch_jan13a.ino:11:1: note: in expansion of macro 'RGB'"
i file sono in una cartella chiamata RGB dentro alla cartella librerie, e si chiamano RGB.h e RGB.cpp (non credo che il problema sia questo poiche la libreria viene vista nell elenco librerie dell ide)
probabilmente è una cosa stupida, ma al momento da solo non riesco a venirne fuori...
attendo con ansia le vostre correzioni