No veo que exista ningun problema.
Lo que si yo cambiaria 2 cosas,
1- Seria no tener un array de 255 valores, sino tomar el dato y enviarlo. Asi los 250 valores.
2- En la interrupcion, preguntar tambien si RUN esta en 0 antes de cambiarle de valor. Lo que me parece es que esta tardando muchisimo en enviar esas 250 muestras a traves de la UART.
Ahora vienen las preguntas
El otro pin que es C0 cambia de estado ?. O tambien queda fijo ? Aunque el programa haria que jamas cambie de estado ya que siempre al salir del IF es 0, y nunca se pondria en 1, ya que si esta en 1 RUN entraria al if.
Podrias ponerlo en distintos lugares, por ejemplo cuando entra en la interrupcion para ver si entra y sale y no vuelve a entrar continuamente
ponerlo dentro del for cuando envia para ver si sigue enviando, etc.