TIVA TM4C123G comprobar frecuencia de reloj con osciloscopio

Estoy intentando configurar el reloj del sistema en la placa TIVA TM4C123g. Soy consciente de que esta señal de reloj va a un pin llamado OSC0que, según this , es el pin número 41 (ver página 22). Según el mismo documento, se supone que ese pin está en el U1módulo de la PCB, que se puede encontrar en Component Locations.

He encontrado el módulo en mi tablero:

este.

Sin embargo, no hay pines de depuración conectados a él. ¿Se supone que debo medir directamente los pines que salen del chip? ¿No es peligroso? (podría tocar dos de ellos con la sonda, provocando un corto).

¿Cómo puedo medir la frecuencia del reloj del sistema para estar seguro de que lo he configurado correctamente?

Necesita ubicar el diagrama esquemático de su placa de circuito.
@Andyaka FYI, la pregunta contenía un enlace al esquema desde el principio, pero el autor de la pregunta lo leyó mal.

Respuestas (2)

Ha leído mal el esquema que vinculó.

La parte que ha marcado con un círculo es en realidad U2, la interfaz de depuración compuesta por una MCU adicional, con su propio circuito de reloj, mientras que U1 es la MCU de destino colocada en orientación diagonal en el medio que ejecuta su programa.

Si bien algunas placas similares ahorran un poco de dinero al alimentar una salida de reloj de la MCU de depuración al objetivo, el esquema que vinculó muestra que la suya no lo hace.

Más bien, en su placa, el objetivo U1 está sincronizado desde su propio cristal externo de 16 MHz, o un cristal de reloj de frecuencia más baja, o probablemente osciladores internos, probablemente comenzando desde este último y luego cambiando a otra opción bajo el control del software. Más importante aún, en el uso común, en realidad no sería cronometrado directamente por estos, sino por la salida de un multiplicador PLL interno configurado por su código.

En términos generales, si realiza las opciones de configuración correctas (es decir, utiliza una biblioteca de proveedores) y no hace nada inesperado (como llamar a la rutina de configuración cuando ya se está ejecutando en el PLL), estas "simplemente funcionan" y normalmente verificará que están operando leyendo bits de estado con software.

Si realmente desea observar la frecuencia del reloj externo con un osciloscopio, intente sondear C32 o tal vez C31 con una sonda 10x para minimizar la interrupción del circuito. En general, sería mejor configurar alguna salida dependiente del reloj y medir la frecuencia de eso; un caso muy obvio es un UART en serie que desea usar para mensajes de depuración de todos modos, o tal vez un temporizador periférico. Por lo general, esto también es posterior al PLL, aunque los árboles de reloj en las MCU modernas pueden ser bastante complejos.

¿Puede darme más detalles sobre cómo medir una salida dependiente del reloj? No veo como medir la frecuencia del reloj a través de la UART
Con un UART, transmitiría algo como 0x5A que tiene muchas transiciones de bits en un bucle eterno estrecho, miraría la señal con un osciloscopio y vería si la velocidad en baudios es la esperada. Dado que la tasa de baudios se divide de un reloj, esto le permite determinar la frecuencia de ese reloj. Por supuesto, podría ser un reloj periférico que puede tener una pequeña relación de relación con cualquier fuente del reloj central. Una vez más, probablemente no necesite "medir" esto. ¿Qué le hace pensar que está mal?
¿Por qué en última instancia te importa lo que es el reloj? Si tiene una respuesta a eso, es probable que el motivo de su preocupación sugiera el mejor reloj para medir y el método para medirlo.
En realidad estoy tratando de configurar y usar un PWM (que por supuesto no funciona) y sospecho que el problema puede ser la señal del reloj que está recibiendo.
Debe asegurarse de que el temporizador que produce el PWM y probablemente el banco GPIO por el que saldría estén cronometrados y configurados. Si están cronometrados pero a la velocidad incorrecta , probablemente obtendrá PWM a una frecuencia diferente a la deseada, y de eso podría deducir el problema del reloj. ¿Por qué no comienza con algún buen ejemplo conocido de PWM y luego lo migra gradualmente hacia su necesidad específica?
Tengo un ejemplo de PWM que funciona, pero usa una API proporcionada por Texas (que es 'compleja', por así decirlo), pero quiero hacerlo yo mismo. Estoy intentando averiguar el problema por mis propios medios ya que mi objetivo es 100% académico. Por cierto, terminé midiendo el reloj con mi reloj (agregando grandes retrasos)

El procesador que encerraste en un círculo es parte de la interfaz de depuración. No es el procesador lo que puedes programar. El procesador que puede programar es el que se muestra a continuación, montado en ángulo.

El procesador de depuración implementa la interfaz USB para esta placa Launchpad, por lo que es probable que cambiar su frecuencia de reloj rompa las comunicaciones USB.