De acuerdo en que la señal de control de RC, si nos ceñimos a las definiciones establecidas, es una señal PWM de 50Hz.
El utilizar los pines de arduino con salida PWM es por simplificar el código, el atmega lo genera por hardware, de esa manera nos despreocupamos en el código de calcular tiempos y poner a 0 o 1 los pines, pero claro está que lo puedes hacer con cualquier salida digital.
Utilizar los pines PWM no tiene ningún sentido para manejar servos por que no les puedes mandar un analogWrite(), por que la señal PWM que Arduino les va a mandar no va a ser a 50Hz, va a ser a 16MHz. Haz la prueba, conecta la entrada de señal de un servo al pin 10 (que está marcado como PWM) y mandale un "analogWrite(255); " a ver si se pone en la posición de 180º. Te digo yo que no.
Para controlar elementos de RC con Arduino hay que utilizar la librería servo.h que sirve, precisamente, para generar una señal PWM de 50Hz en cualquier pin digital de la placa. Esta librería permite utilizar hasta 12 servos (no hay tantas salidas PWM) y deshabilita la función PWM de los pines 9 y 10, haya o no un servo conectado a ellos.
Relacionar los pines marcados con la serigrafía PWM en la placa con control de mecanismos para RC solo crea confusión entre los novatos. O entre los que no han conectado nunca un servo a una placa Arduino.
De la misma forma, no se puede leer la señal que un receptor de RC le manda a un servo o a un variador mediante una entrada analógica. Prueba a medir tensión entre el pin de señal de un receptor y GND, el multímetro te marcará 0v hagas lo que hagas con la emisora. La forma de leer la señal que un receptor manda a un servo o a un variador se lee con el comando pulseIn().
Una vez más os recomiendo hacer pruebas y lo vereis por vosotros mismos. Toda la información erronea que circula por el foro acerca de este tema solo contribuye a que de tanto en tanto aparezca un disparate: hace unos meses un chaval quería convertir un coche RC en un robot y quería mandarle las señales desde el mando, pues hubo un iluminado que le recomendó que conectara la antena de la emisora a un pin PWM.
En electrónica todo el tema de modulación, pulsos, frecuencia y todo lo que tiene que ver con señales es complejo y la mayoría de gente que lee este foro no tiene conocimientos de electrónica suficientes, precisamente vienen aquí para aprender. Vamos a simplificar las cosas para no marear: los pines PWM de Arduino simulan señales analógicas, el que luego quiera profundizar en este tipo de señal y modificar su frecuencia (que se puede) investigará por su cuenta.
El que quiera controlar mecanismos de RC sin complicarse la vida puede generar las señales de control con la librería servo.h en cualquier pin digital y puede leer estas mismas señales con el comando pulseIn().
El que quiera profundizar en el control de tiempos y generar una señal cuadrada de amplitud variable y una frecuencia de 50Hz puede hacerlo por software y comprobar si lo hace bien o mal con un simple servo.
...por lo menos nadie a dicho que sea PPM, algo hemos avanzado.