Paso 2: PC - miniterm (primer contacto)
En 214 Tutorial; Utilizar una UART para implementar un Bus 1-Wire Master se describe cómo generar o recuperar secuencias de pulso de autobús 1-wire. Lamentablemente los pulsos RESET & presencia tienen que generarse a 9.600 baudios Considerando que todos los demás (lectura, escritura de 0 y 1) deben crearse utilizando 115.200 baudios. Como señala en Nota de aprox. 74; Lectura y escritura de los dispositivos 1-Wire a través de Interfaces Seriales: "Aunque eficiente bajo sistemas operativos como DOS, los sistemas operativos modernos hacer el acceso a los registros de la UART absolutamente ineficiente." y como no queremos utilizar un DS2480B, tenemos que vivir con el hecho de que un interruptor rápido de la velocidad en baudios en una posición de búfer controlado es imposible.
Para el sistema de esto no era un problema, ya que pude detectar confiablemente RESET y presencia de los pulsos en una velocidad en baudios de 115200 como secuencia de 0x00 0x00. En realidad va de 9600 a 115200 daría lugar a 12 bytes en lugar de 1, pero en este caso tenemos sólo 2 bits de comienzo - así 2 bytes sólo. A pesar de 0 x 00 podría ser una escritura 0 - nunca vi a valores por debajo de 0 x 80 en el autobús y así podría discriminar entre escribir 0 y RESET y presencia. En el caso de otros sistemas (maestro y esclavos) podrían cambiar la sincronización exacta y así esta hecho.
(Yo usé un OW servidor 2 ENET con 1 DS2438 como un sistema para estas pruebas.)
Todo dicho, para un primer contacto que realmente no tenemos que cuidar demasiado, solo tenemos que decidir lo que queremos ver y luego seleccione la velocidad apropiada. Utilicé el script de Python miniterm.py que viene con el módulo pySerial (usado más adelante-la interfaz de Python y Arduino con pySerial es muy útil en general) con el fin de abrir el puerto y ver el tráfico entrante:
$ miniterm.py -D -D -D /dev/ttyACM0 9600
$ miniterm.py -D -D -D /dev/ttyACM0 115200
(La configuración del puerto es: 8 bits, sin paridad, 1 bit de parada que se encuentra por defecto en miniterm.)
Una vez que tenemos una conexión establecida y ver en los datos, podemos empezar a analizar el tráfico de autobús. Mira los valores hexadecimales que aparecen (debe ser aproximadamente 5 valores diferentes sólo viene una y otra vez), convertir el hex para secuencias de bits y estudiar el tiempo de autobús, tratar de distinguir entre las operaciones de escritura y lectura, etc..
Si quieres echar un vistazo a un script ("prueba de estado de concepto como") muy cutre, temprano y simple para tener una idea de cómo continuar desde aquí, proceda al siguiente paso.