//PWM_32_ou_64_kHz_20017 //En standard la frequence de PWM est environ 500Hz soit une periode de 2ms //Si l'on veut augmenter cette frequence à 32 ou 64kHz //il faut modifier les registres des timers 2 ou 0 comme ci après void setup() { // Pour 32kHz, soit une periode de 31.3µs, sorties sur D3 et D11 TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM20);//Timer 2 TCCR2B = _BV(CS20);//Timer 3 analogWrite(11, 50);//On 50 sur 255 analogWrite(3, 200);//On 200 sur 255 //Preserve Timer0: par exemple delay(1000) = 1s, millis() reste OK //Pour 64 kKz, soit une periode de 15.6µs, sorties sur D5 et D6 TCCR0B = TCCR0B & 0b11111000 | 0x01;//Timer 0 analogWrite(6, 100);// On 100 sur 255 analogWrite(5, 10);// On 10 sur 255 //Accelère Timer1, attention!!! delay(100000) pour qq secondes! et oublier millis() } void loop() { }