Hola Quiero mostrar un simple analizador lógico USB que se puede ensamblar en cualquier placa de depuración con un microcontrolador STM32F042, por ejemplo, NUCLEO-F042K6 de ST. Sin embargo, encontrará los códigos fuente de los enlaces y los convertirá fácilmente a cualquier otro de esta familia. Hay 8 canales en este diseño. Debajo de ellos, los puertos PA0-PA7 están involucrados en el microcontrolador. La velocidad máxima de muestreo es de 8 MHz. La frecuencia de entrada máxima es de 2 MHz. El número máximo de muestras por canal es 4096.
Aquí debe tenerse en cuenta que el analizador lógico es
hardware y software para capturar la señal y su posterior investigación, medición, análisis de interfaces.

El shell de PC permite después de la captura analizar las señales en los 8 canales, así como
Mida la frecuencia de las señales, el período y la duración de los pulsos. Cuente el número de frentes en la sección seleccionada, la duración de esta sección.
Y si se adhiere a la interfaz I2C en serie y activa el analizador, todos los componentes I2C se descifrarán, teñirán y marcarán automáticamente en una forma conveniente para el análisis.
El funcionamiento del analizador lógico comienza haciendo clic en el botón "Iniciar captura". Entonces sucede lo siguiente:
1) Los parámetros de captura se transfieren al dispositivo.
2.a) Si el disparador no está configurado, la captura de señal comienza inmediatamente después de recibir los parámetros de captura.
2.b) Si se establece el disparador, el dispositivo analiza la señal de entrada sin realizar una captura. La captura de señal comienza después de que se detectan las condiciones especificadas por el activador establecido.
3) El buffer de captura se llena de acuerdo con un número dado de muestras.
4) El dispositivo transfiere datos a una PC.
5) El software procesa y muestra los datos recibidos.
Se puede instalar un disparador en uno o más canales. Si los disparadores están configurados para varios canales, la captura de señal comienza cuando todas las condiciones especificadas por los disparadores configurados, es decir, Hay una conexión AND lógica entre los desencadenantes.
Puede cambiar el nombre y el color de cada canal. El área de visualización de la forma de onda se puede desplazar o escalar.
Con la herramienta de medición, puede medir la duración de la sección seleccionada, el período, la frecuencia, la duración del pulso y contar el número de frentes.
La herramienta Regla dibuja una línea vertical que abarca las señales de todos los canales en la ubicación especificada con el tiempo. La "regla" es conveniente cuando se evalúa la ubicación de los frentes de diferentes canales entre sí y con respecto a la marca de tiempo cero.
En este video, con un simple ejemplo, puedes ver cómo funciona todo:
En conclusión, quiero agregar que el shell está escrito en Visual Studio, software para el microcontrolador en IAR. En un futuro próximo daré un analizador lógico de más de 16 canales con I2C, SPI, UART, I2S. Se consideran dos microcontroladores para la construcción: stm32f730, stm32f446.
¡Gracias a todos, usen su salud!
→
Descargue instrucciones, firmware y boceto.
→
Descargar proyecto IAR
→
Descargar proyecto de Visual Studio