Tengo la idea de crear un dispositivo con un zócalo ZIF genérico que pueda usarse para identificar cualquier chip que coloques en él y, una vez identificado, realizar una serie de pruebas para verificar que el chip funciona. Espero apuntar a la mayor parte de la línea 74xx de circuitos integrados.
Mi idea es básicamente conectar cada pin del zócalo a un pin IO en mi MCU. Los chips de la serie 74xx no deben consumir suficiente corriente como para que no pueda alimentarlos desde un puerto de E / S decente, por lo que los arreglos de pines de alimentación impares o el diferente número de pines no debería ser un problema. Para los chips simples, debería ser bastante trivial conduzca los pines de entrada y verifique los pines de salida, una vez que sepa qué chip es. Surgen complicaciones adicionales cuando entro en salidas de colector abierto, salidas de tres estados, activadores de schmitt, etc ..., pero tal vez necesiten preguntas por separado.
Aquí es donde estoy atascado ahora: ¿Hay una buena manera de detectar qué pines son entradas y salidas sin conducir más líneas de las necesarias? Lo más probable es que comience con todos mis pines IO como entradas. Puedo usar las débiles flexiones del microcontrolador para impulsar las líneas flotantes hacia arriba, así que sé que cualquier pin que sea cero es definitivamente una salida del IC. Puedo usar esa información para limitar mis posibilidades, pero dudo que sea suficiente. Cualquier adivinanza conduciendo los pines sin saber qué son las entradas y salidas parece ser una buena manera de causar un cortocircuito.
Estaba pensando que tal vez si añadiera un pulldown externo un poco más fuerte detrás de un interruptor analógico en serie o algo así, podría activar los controles desplegables y comprobar cuáles son ahora altos para obtener una mejor imagen de lo que son entradas y salidas, pero No sé qué tan bien funcionaría, ya que podría cambiar las entradas al IC bajo prueba.
Leí en alguna parte aquí que la forma tradicional de detectar alta impedancia es poner a tierra resistencias iguales y potencia y medir el centro con adc, pero no tengo suficientes entradas analógicas para que parezca factible.