dudas con dimeo

Hola amigos espero que esten muy bien

vi este vídeo

https://www.youtube.com/watch?v=Z12nwK3dZvA&t=285

habla de que el dimeo no puede ser menor a 50hz en arduino uno, solo con el due,

mi pregunta sigue siendo así como el arduino uno r3?

otra pegunta ese ruido agua de donde salia? salia del tip120 o del ventilador?

No recuerdo cual es la frecuencia por defecto del arduino pero no es 50 Hz.
Me expreso mejor.
Este es el código que tiene el video.

#include <Arduino.h>

int led        = 6;
int brightness = 0;
int Dimeo      = 0;

// ***************************
void setup()  {
  pinMode(led, OUTPUT);
  Serial.begin(9600);
}

// ***************************
void loop()  {
  // analogWriteResolution(12);
  brightness++;
  if (brightness>255){
      brightness=0;
  }
  analogWrite(led, brightness);
  Serial.println(brightness);
  if (brightness==0){
      delay(7000);
  }
  delay(150);
}

Este código no esta trabajando a 50Hz, es una salida PWM cuya frecuencia esta dada por el timer en uso.
En este caso EL DICE que es de 500Hz no 50 Hz.
Ver comentario.

El código correcto es este el de 16 hz

#include "DueTimer.h"

int PeriodMcrS=62500;  // Para 16 Hz son 62.5 Ms 
int CountPwm=0;

// La resolucion en un Arduino UNO es 255 nosotros podemos elegir un valor
// arbitrario ya que se trata de un PWM propio. 
int Resolution=2500;
int ValPWM;

// ***********************
void HandPeriod(){
    CountPwm=0;
}

// **************************************************************************
//  Se ejecutará cada: PeriodMcrS/Resolution = 62500/2500 = 25 MicroSegundos
// **************************************************************************
void HandCountPWM(){
    CountPwm++; 
    if (CountPwm<ValPWM){
    digitalWrite(13, HIGH); digitalWrite(6, HIGH);
    }
    else{
    digitalWrite(13, LOW); digitalWrite(6, LOW);
    }
}

// **********************************************
void setup(){
    pinMode(13, OUTPUT); pinMode(6, OUTPUT);
    Timer7.attachInterrupt(HandPeriod);
    Timer7.start(PeriodMcrS);  
    Timer8.attachInterrupt(HandCountPWM);
    Timer8.start(PeriodMcrS/Resolution);  
}

// ******************************************
void loop(){
    for (int i=0; i<Resolution; i++){
        ValPWM=i;
        delay(10);
    }
    Timer8.stop();
    digitalWrite(13, LOW); digitalWrite(6, LOW);
    delay(7000);
    Timer8.start(PeriodMcrS/Resolution);  
}

segun el dice que no puede usarse en el uno por la libreria, pero no se si en el uno r3 si se pueda usar u.u

Prueba y asunto resuelto.