- Codice: Seleziona tutto
struct Zone{
public:
Zone(int pin0, int pin1, int pin2, int AnalogPin);
void setPinMatrix(int pin0, int pin1, int pin2, int AnalogPin);
void initialize();
void readInput();
boolean comp();
private:
int AnalogPin;
int pinMatrix[3];
int firstRead[8];
int AnalogRead[8];
static int Matrix[8][3];
};
int Zone::Matrix[8][3]= {
{LOW, LOW, LOW },
{LOW, LOW, HIGH},
{LOW, HIGH, LOW },
{LOW, HIGH, HIGH},
{HIGH, LOW, LOW },
{HIGH, LOW, HIGH},
{HIGH, HIGH, LOW },
{HIGH, HIGH, HIGH}
};
Zone::Zone(int pin0, int pin1, int pin2, int AnalogPin){
pinMatrix[0] = pin0;
pinMatrix[1] = pin1;
pinMatrix[2] = pin2;
AnalogPin = AnalogPin;
}
void Zone::setPinMatrix(int pin0, int pin1, int pin2, int AnalogPin){
pinMatrix[0] = pin0;
pinMatrix[1] = pin1;
pinMatrix[2] = pin2;
AnalogPin = AnalogPin;
}
void Zone::initialize(){
for(int i=0; i<3; i++){
pinMode(pinMatrix[i], OUTPUT);
}
readInput();
for(int j=0; j<8; j++){
firstRead[j] = AnalogRead[j];
}
}
void Zone::readInput(){
for(int i=0; i<8; i++){
for(int j=0; j<3; j++){
digitalWrite(pinMatrix[j], Matrix[i][j]);
}
AnalogRead[i] = analogRead(AnalogPin);
}
}
boolean Zone::comp(){
int f=0;
for(int i = 0;i < 8; i++){
if(firstRead[i] == AnalogRead[i])f++;
}
return (f==8);
}
Questo è il codice un po' riordinato nel suo complesso. Ho scritto un costruttore in base al tuo codice preesistente ma nulla ti vieta di avere un comportamento di default differenziato.

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)



