pilotare uno dimmer

Visto che le regole, (anche se non le condivido sempre!) ci sono, e quindi il mio topic è stato rimosso perchè conteneva cose pericolosissime... propongo solo se qualcuno mi riesce a spiegare queste poche righe di codice e se vanno insrite in un punto specifico di uno progetto , perchè ho notato che in base ha dove inserisco questo codice fornito dal costruttore dello shield mi rallenta il funzionamento di tutto il progetto:

int AC_LOAD = 3; // Output to Opto Triac pin
int dimming = 128; // Dimming level (0-128) 0 = ON, 128 = OFF

void setup()
{
pinMode(AC_LOAD, OUTPUT);// Set AC Load pin as output
attachInterrupt(0, zero_crosss_int, RISING); // Choose the zero cross interrupt # from the table above
}

// the interrupt function must take no parameters and return nothing
void zero_crosss_int() // function to be fired at the zero crossing to dim the light
{
// Firing angle calculation : 1 full 50Hz wave =1/50=20ms
// Every zerocrossing thus: (50Hz)-> 10ms (1/2 Cycle) For 60Hz => 8.33ms (10.000/120)
// 10ms=10000us
// (10000us - 10us) / 128 = 75 (Approx) For 60Hz =>65

int dimtime = (75*dimming); // For 60Hz =>65
delayMicroseconds(dimtime); // Off cycle
digitalWrite(AC_LOAD, HIGH); // triac firing
delayMicroseconds(10); // triac On propogation delay (for 60Hz use 8.33)
digitalWrite(AC_LOAD, LOW); // triac Off
}

void loop() {
for (int i=5; i <= 120; i++){ // We use 120 as the lowest and 5 as the highest brightness setting. May be adjusted depending on the lamp used.
dimming=i;
delay(20);
}
for (int i=120; i >= 5; i--){ // Same as above
dimming=i;
delay(20);

in conformità al suddetto regolamento, punto 7, devi editare il tuo post (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More -> Modify che si trova in basso a destra del tuo post) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag:

[code] _il _tuo_ codice_ [/code]

così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati o cattiva formattazione del testo.

... e non c'è nulla da fare ... il REGOLAMENTO probabilmente non lo hai letto. Purtroppo però qui, prima delle domande, viene il rispetto della comunità e delle sue regole.

Ricapitolando, prima di tutto, ma è la cosa meno importante (si corregge facilmente), come ti è stato fatto notare, NON hai rispettato il punto 7, ma hai anche violato il punto 13 ... il cross-posting è difatti proibito (anche tra lingue diverse) e tu hai già posto la stessa/simile domanda QUI.

Debbo quindi pregarti di proseguire nella sezione di lingua inglese dove hai aperto l'altro thread e sono purtroppo costretto a chiudere questo. :confused:

Guglielmo

P.S.: Mi pare che nel tuo post in lingua inglese manchi in modo chiaro la domanda ... ti consigli di correggerlo ... ::slight_smile: