Soy un ingeniero de software que juega con PIC y tengo un mouse PS / 2 antiguo que estoy usando (con éxito), que tiene conexiones CLK y DATA como colectores abiertos.
Así que he configurado los pullups internos en los pines PIC relevantes y estoy configurando TRIS en 1 para que las líneas se vuelvan altas y configurando TRIS en 0 y escribo 0 en el bit PORT correspondiente para forzarlo.
Sin embargo, he visto varias implementaciones similares de ratón PIC a PS / 2 que, al escribir en el mouse, establecen TRIS en 0 y escriben 1 en el bit PORT en lugar de configurar TRIS en 1.
Tal como lo entiendo, cualquiera de estos factores hará que la línea sea alta (¿es correcto?), pero no estoy claro si uno es de alguna manera "mejor / más seguro" que el otro.
¿Debería seguir los ejemplos de las implementaciones (presumiblemente) más experimentadas y escribir 1 en el PORT cuando el PIC está en control del bus, o debo siempre hacer que la línea esté alta por tri -estando a alta impedancia y dejando que el pullup lo haga?
Espero que tenga sentido y no he mezclado ninguna terminología; cualquier consejo general sobre las mejores prácticas para conexiones de colector abierto sería bienvenido.