Go Down

Topic: PWM (Read 1 time) previous topic - next topic

simulatorhck

Ho capito quello che hai detto ma non so metterlo in pratica hahah
io sto usando questo stupidissimo codice
//pwm.ino
const short pwm=9;
//Sensore analogico per variare il duty cycle
const short sensore=0;
void setup() {
   pinMode(pwm, OUTPUT);
}
void loop() {
   //Variabile che contiene il valore proporzionato letto dal sensore analogico
   byte valore=map(analogRead(sensore),0,1023,0,255);
   //Il valore viene attuato sul piedino PWM
   analogWrite(pwm,valore);
   //Piccola pausa
   delay(10);
}

tra l altro scopiazzato.
Suppongo dovrei aggiungere due pulsanti : uno per avere una frequenza fissa (100hz) e uno per sbloccare un secondo potenziometro che mi variasse la frequenza...

leo72


Ho capito quello che hai detto ma non so metterlo in pratica hahah

Allora ti prendi il datasheet e ti studi i registri per configurare il timer.
;)

Poi ne riparliamo. Se ti do il codice pronto non ti serve a nulla. :P

simulatorhck

ahahah hai anche ragione. Solo che avercelo il tempo :). MI mettero sotto. Curiosità...Vedevo che esiste anche
Timer 4
#bits = 10
Clock speed = 64 MHz
Default prescale = 64
Pins D6, D13

sarebbe possibile utilizzare questo per avere il range piu ampio di cambiamento?

leo72

Per gli usi che ne devi fare tu va bene un qualunque timer a 16 bit, che ti permette inoltre di avere una risoluzione maggiore del timer 4, che è a 10 bit.

BrainBooster

ma usare un semplice ne555 come generatore non và bene? :smiley-roll-blue:

Go Up