Arduinonun analogWrite fonksiyonu kompleks işler için değil led yakma gibi basit işler için tasarlanmıştır. Senn loop içersinde arduinoya sürekli yeni frekans ayarlama işini yaptırdığın için işlemci bir miktar zaman kaybediyor. Bu yüzden parazitler görmen mümkün. analogWrite fonksiyonunu loop içerisinden alıp setup içerisine taşırsan daha düzgün sinyal formu alabilirsin. Eğer çok daha iyisini almak istersen analogWrite yerine register seyesinde doğrudan avr komutları kullanman gerekiyor. Başka bir arkadaş için geçmişte yapmıştım. Aşağıdaki videonun açıklama kısmında kodları var kullanabilirsin.