Problema impostazione frequenza personalizzata su PWM Arduino mega.

Salve,
Avrei bisogno per un progetto di impostare i pin pwm di arduino mega a 400Hz (2-3-4-5),

  • Primo passo mi accontenterei che i 4 pin indicati abbiano almeno la stessa frequenza.
  • Secondo passo se possibile li metterei tutti a 400Hz.

Il problema principale è che il pin 4 è sul timer0 a 16 bit e per ora ho visto solo il metodo dei prescaler ma non riesco ad avere la stessa frequenza.

Grazie.

Non é possibile.
La frequenza del PWM deriva dal clock e sono solo alcuni divisori possibili.
vedi Arduino Playground - TimerPWMCheatsheet

Ciao Uwe

Stellasl:
Salve,

Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento se non lo hai già fatto: Regolamento
Qui una serie di link utili, non inerenti al tuo problema:

Dovresti usare i pin della UNO 3, 9, 10 e 11 che hanno una frequenza di 490Hz.

Se invece vuoi proprio 400Hz, la cosa è un pochino più complicata.

Diciamo che mi accontento di 490Hz ma per forza devo averla anche sul pin 4 a 16bit.

Se non c'é non c'é
Ciao Uwe

Scusami, mi era sfuggito che hai una MEGA.

Comunque non puoi usare il pin 4 ed il 13 che sono collegati al timer 0 ad 8 bit con frequenza di 977 Hz.

Tra l'altro modificando il prescaler del Timer 0 potresti avere problemi con il millis ed il delay.

"ATmega1280/2560
Mega1280-Mega2560"
Pin Timer Reg. Hz
2 3 OC3B 490
3 3 OC3C 490
4 0 OC0B 977
5 3 OC3A 490
6 4 OC4A 490
7 4 OC4B 490
8 4 OC4C 490
9 2 OC2B 490
10 2 OC2A 490
11 1 OC1A 490
12 1 OC1B 490
13 0 OC0A 977
44 5 OC5A 490
45 5 OC5B 490
46 5 OC5C 490