Diseño para prueba: ¿Cuáles son las diferentes formas en que se hace esto?

4

Sé que cuando diseñamos circuitos digitales podemos agregarle una posición que ayude a probarlo. Esto puede ir más allá de la mera prueba de exploración de límites. ¿Qué recurso puedo usar para comprender esta metodología y dónde puedo encontrar ejemplos de ella?

Sé que esta pregunta se marcará como demasiado amplia. Solo necesito algunos ejemplos de todas formas.

    
pregunta quantum231

2 respuestas

1

He diseñado la accesibilidad de prueba en varios tableros que se han fabricado y se están probando automáticamente. Por lo general, estas pruebas se realizan a nivel de placa, antes de agregar la caja y cualquier otro componente externo (teclado, LCD, altavoz, etc.).

Las cosas son más simples si puede enlistar un microcontrolador incorporado, que eventualmente se usará para ejecutar el código de la aplicación, para poder ejecutar la mayor parte de su código de prueba. Sin embargo, esto no es absolutamente necesario si agrega suficientes puntos de acceso externo para permitir pruebas externas. Si usa un microcontrolador incorporado, es posible que desee obtener uno con más pines GPIO o ADC que el código de su aplicación (por ejemplo, un dispositivo de 100 pines en lugar de 64 pines) para permitir entradas de prueba adicionales.

El siguiente paso depende si tiene acceso externo a un UART en el microcontrolador incorporado. Esto se puede usar para proporcionar acceso al equipo de prueba externo. El último puede ser un cuadro de prueba dedicado, que puede estar conectado a una PC para iniciar un script de prueba y resultados de registro, o simplemente una interfaz UART-USB para hablar directamente con un programa de PC.

Si no tiene un UART externo, es como si tuviera una interfaz de programación de algún tipo. Digamos que tiene cuatro cables: monitor VCC, reloj, datos y tierra. Suponiendo que el monitor VCC esté conectado a VCC en la placa a través de una resistencia, digamos 100 ohmios, puede agregar otra resistencia de 100 ohmios y hacer que el VCC externo sea VCC / 2 conectando a tierra el pin externo. Esto se puede detectar mediante un comparador agregado a la placa, y se usa para habilitar un mux que conmuta los datos de programación y los cables del reloj a los cables TX y RX del UART. Así que tienes acceso al tablero sin agregar ningún pin extra.

Con el monitor VCC, puede verificar si el VCC en la placa es correcto, por ejemplo, 3.3v o 5.0v. Si es así, puede programar el controlador de a bordo con un código de prueba. Lo siguiente que debe hacer es verificar todos los rieles de voltaje, usando el ADC integrado en el microcontrolador. Tuve un proyecto que tenía 12 carriles diferentes (!), La mitad de ellos dedicados a un LCD. Por lo tanto, si solo tiene un ADC de 10 canales, es posible que tenga que agregar un mux para cambiar entre las entradas y dejar que su ADC realice una doble función. Las entradas ADC también se pueden usar para verificar cualquier otra salida analógica, como los amplificadores operacionales.

Las pruebas adicionales que se ejecutarán incluyen todos los buses y los periféricos a los que están conectados, como I2C, SPI, UARTs y USB.

Si no tiene un microcontrolador incorporado o no desea usarlo para ejecutar el código de prueba por alguna razón, puede agregar cualquier número de almohadillas de prueba a las que se pueda acceder a través de pogo-pins, y conéctese a una caja de prueba externa que realice las mismas pruebas que se describieron anteriormente.

Una vez que se hayan completado todas las pruebas, puede actualizar el código de producción en el dispositivo y conectar la caja y otros componentes externos como se mencionó anteriormente.

    
respondido por el tcrosley

Lea otras preguntas en las etiquetas