bueno, ya me he puesto nuevamente a molestar con los servos
primero hice pruebas con el codigo de redpic (el PWM se realiza desde un bucle en el main) pero leyendo el adc una vez que el pulso este bajo, para que no interfiera con el tiempo de la señal, pero no funciona... vibra...
asi que empece a hacer pruebas con la idea de manolo, poniendo el timer para que se desborde cada 100uS y mirando en cada interrupcion si hay que bajar o no el pulso de alguno de los servos...
las pruebas las empece directamente a 8mhz, ya que para esto seguramente iba a necesitar algo mas de velocidad de proceso.
las pruebas fueron genial! logre controlar 2 servos independientemente con su respectivo POT....
lo malo: al desbordarse el timer cada 100uS solo tenia 20 posiciones para el servo (2.5mS - 0.5mS = 2mS / 100uS = 20 Posiciones)
asi que baje el tiempo de desborde a 50uS. el codigo siguio funcionando correctamente, los servos se posicionaban correctamente y no vibraban, pero el POT se notaba un poco capado al tacto, ya que seguia teniendo solo 40 posiciones para el servo (2.5mS - 0.5mS = 2mS / 50uS = 40 Posiciones)
volvi a bajar el tiempo de desborde del timer, a 10uS.... la cosa fue FATAL!
los servos ya ni siquiera respondian al POT... con lo cual fui corriendo a CETRONIC (mi tienda amiga de electronica en coruña
) y compre un cristal de 20mhz...
asi que ahora me pondre a hacer las pruebas a altas velocidades
supongo que la cosa ira mejor... ya os contare
os dejo el codigo para dos servos funcionando perfectamente (con 40 posiciones), con un 12f683 a 8mhz
salu2
--- Edito ---
Al parecer el directorio para subir archivos esta lleno.... asi que no podre dejar el codigo colgado
lo pongo en un post....