¿Qué puedo hacer si quiero probar el microcontrolador?
¿Qué puedo hacer si quiero probar el microcontrolador?
En general, en los sistemas integrados que diseño, primero intento agregar tantos circuitos como sea necesario para probar el sistema en general, además del microcontrolador en sí, sin agregar un costo adicional (podría agregar un LED de diagnóstico para la salida básica en un costo de unos pocos centavos.) Por lo general, esto significa usar cualquier canal analógico sobrante que tenga disponible para revisar el sistema y verificar que todo esté bien, como diferentes rieles de alimentación, etc.
Luego escribo un firmware de prueba de fabricación especial que se carga primero en el microcontrolador después de que la placa se haya llenado con partes, pero antes de que se coloque en su caja final. Obviamente, si el programador no puede cargar el firmware de prueba en el micro y ejecutarlo, entonces tiene un problema. Pero como la mayoría de los microcontroladores usan solo un par de pines para la programación, además de restablecer, la alimentación y la conexión a tierra, incluso si hay algún otro problema en la placa, generalmente se puede encender el micro.
Si el micro se inicia, entonces se pueden realizar algunas pruebas simples, como varias pruebas de RAM y un CRC a través del código para asegurarse de que la memoria RAM está bien y el programa está correctamente flasheado. Aunque sería posible realizar una prueba de varias instrucciones, generalmente no me molesto en hacer eso.
Por lo general, parpadeo el LED una vez al iniciar, y luego quizás dos veces después de completar una serie de pruebas básicas. Si los destellos están separados por un segundo, esto da una prueba aproximada de que el circuito del temporizador está funcionando. Si hay un fallo, parpadeo el LED en un patrón específico, es decir, un destello largo, seguido de un par de destellos "n" que indican un código de error.
Luego trato de verificar tantos puertos periféricos como sea posible. La forma en que haga esto depende, por supuesto, del micro específico y su circuito en particular. Por lo general, puede probar el I2C, SPI y otros buses simplemente accediendo a varios periféricos en la placa. Se puede probar un UART externo conectándolo a una PC con un programa terminal. La prueba de la UART suele ser una buena prueba de la frecuencia del oscilador, ya que el reloj de la UART suele estar vinculado al reloj del sistema.
Incluso puede escribir un programa en la PC que se interconecta con el micro a través de UART para controlar el programa de prueba y registrar los resultados.
Intento tener una referencia de voltaje separada en el circuito, que se puede usar para probar contra los otros rieles de alimentación. Me gustan las referencias de voltaje de 4.096, ya que al usar un ADC de 12 bits, un bit = 1 mV. Luego se puede usar para verificar otros rieles de potencia. Para voltajes superiores a 4.096, como +5, necesitará un divisor de voltaje. Si el dispositivo funciona con batería, querrá hundir el divisor de voltaje con un puerto de salida para evitar un agotamiento constante de la batería.
Depende de lo que estés tratando de lograr.
Si es grave.
Proporcionar:
Appartus que puede establecer la tensión de alimentación en cualquier lugar dentro del rango legal.
Capacidad de controlar el reloj en todo el rango útil en los modos en que lo usarás.
Cámara de temperatura controlada en todo el rango.
Capacidad para aplicar estímulos a los pines de E / S en los rangos de legasl.
Resistencia de carga de E / S y capacitiva.
Tiempos de subida / caída / espera cuando sea relevante.
Pruebas de ESD para cumplir con las especificaciones permitidas
Cualquier otro parámetro físico o eléctrico que pueda modificarse dentro del rango especificado que le interesa.
Entonces:
Escriba un conjunto de pruebas para ejercer funciones clave en varias combinaciones mientras varía todos los parámetros con rangos legales en todas las combinaciones.
Realistically:
Establezca el suministro y la temperatura en el peor de los casos que espera, cargue la E / S al máximo esperado. Ejecutar programas de prueba inteligentes.
Si desea probar su controlador, la forma más sencilla es escribir un programa de prueba, como hacer algunos pines altos y otros bajos. Ahora deje que el procesador ejecute y pruebe los pines utilizando LED o multímetros.
Desde mi experiencia, el procesador / controlador está dañado solo por un cortocircuito en los pines o por algunos problemas con la fuente de alimentación
En una configuración de producción, escribe y ejecuta una autoprueba en su controlador. Pusiste el dispositivo en una plantilla con pogo pines, o te conectas a través del puerto USB (o algún otro puerto).
Una plantilla es más esfuerzo, básicamente construyes un dispositivo de prueba con su propio controlador que prueba tu producto. La ventaja de usar una plantilla es que puede medir señales que no están disponibles para el mcu.
Lea otras preguntas en las etiquetas test