Incluso con un procesador RISC como este, donde todas las instrucciones toman la misma cantidad de ciclos, será difícil, si no imposible, determinar la cantidad exacta de ciclos (y, por lo tanto, el tiempo) de una rutina de biblioteca determinada. Especialmente considerando que cada decisión condicional dentro de cada llamada de biblioteca puede introducir más o menos instrucciones (y tiempo) en la ruta de ejecución. Si estuviera trabajando con un sistema completo de depuración y simulaciones (que Atmel puede ofrecer a un precio), sería posible establecer puntos de interrupción y medir el tiempo preciso de cada caso posible de cada rutina. Pero sospecho que sería frustrante a menos que las funciones de la biblioteca estuvieran diseñadas para garantizar que todos los casos resultaran en el mismo momento.
Siendo ese el caso, si fuera usted y tuviera estas inquietudes, emplearía un osciloscopio con al menos doble trazo y capacidad de activación para probar el tiempo y la sincronización, de una manera más determinista. Es decir, puedo iniciar cualquier número de secuencias de prueba y alternar varios pines digitales para cambiar el estado de salida cuando se completa una tarea determinada. Esto me permitiría ver claramente tanto el tiempo total para completar varias tareas, como las diferencias entre varios casos. El resultado que espera, que creo que obtendrá dada la velocidad de las CPU, es que tendrá tiempo adicional más que suficiente, y todas sus tareas se completarán en un tiempo que es insignificante en comparación con la velocidad mucho más lenta de las palabras seriales reales de 9 bits.
Por supuesto, si resulta que incluso con un tiempo de procesamiento insignificante, todavía no está satisfecho con estar limitado por la velocidad de la transmisión en serie, entonces tendrá que usar una velocidad de bits / baudios mucho más rápida, o Tendrá que usar varios procesadores (cada uno con su propia E / S en serie). luego, todos pueden preparar sus datos y ser activados para enviarlos simultáneamente, desde un solo comando (como un solo punto de E / S digital que indica a todas las CPU que deben enviarse).
¡Buena suerte! Esperamos que encuentre que la velocidad de Arduino no es un problema, y el envío de datos a todos sus servos uno por uno sigue siendo adecuado.
Y no sé si importa, pero todos los procesadores de arduino que conozco tienen varias salidas PWM directas.
Pero también tenga en cuenta que probablemente haya mejores foros que el foro de ingeniería eléctrica para preguntas específicas sobre codificación o capacidad del procesador.