Sin hacer nada el servo tiene tics

Pues eso, que tengo todo montado el lcd 3310, un lector sd varios botones un joystick y todo va de fábula pero el servo tiene tics y se mueve solo hacia laizquierda como 1 o 2 grados y se pone en posicion otra vez cuando no tiene ninguna orden, se supone solo la declaración servo1.attach(6); en el setup.

He probado este script y parece q no pasa.

#include <Servo.h>
 
Servo servo1; 
void setup()  
{  
  servo1.attach(6);
}
void loop()  
{  
 servo1.write(90);

}

Me tiene a saco mosqueado. A alguien mas le ha pasado alguna vez? El código es un poco largo para pegarlo

Te comento según mi experiencia. Yo he probado con servomotores y cuando le he conectado un potenciómetro, al no encajar bien en la protoboard, se producia cierto nerviosismo en el servo. Comprueva que ninguno de tus botones o Jostik este mal conectado. ;)

Yo creo q es por la libreria del 3310,pero no se muy bien porque, hare pruebas a ver

Puede que sea eso, pero ahi yo me pierdo.

Dando palos de ciego he cambiado un 6 por un 8 y parece que se ha quitado, aunque no tengo ni idea de lo que hace exactamente ese cambio, aparentemente funciona igual, es algo del refresco del lcd y para leer el joystick.

// Timer2 interrupt routine - // 1/(160000000/256/(256-6)) = 4ms interval ISR(TIMER2_OVF_vect) { TCNT2 = 8; //cambiar 6 por 8 update_adc_key(); }

Hola,

Parece que estas usando varias cosas con interrupciones y a lo mejor no estas cumpliento el tiempo de “refresco” para los servos…
La libreria servo, no se si usa el timer 1. Segun la parte de tu codigo que has pegado, la libreria del lcd usa el timer 2… o… usan ambas librerias el mismo timer???

Son cosas a investigar…