Implementación de bus 1-Wire en la serie PIC18F para sensores Parallax ColorPAL # 28380

2

He comprado un sensor de color Parallax ColorPal 28380, enlace

En la documentación anterior, han utilizado un microcontrolador Basic Stamp, y quiero usar este sensor con la serie de microcontroladores 18F (18F2550 o 18F4550) de Microchip.

El problema que he estado experimentando es que el sensor se comunica en un rango de 2400-7200 bps. No puedo usar la propia unidad UART de PIC porque el sensor solo tiene 1 pin. Lo primero que me vino a la mente es usar el protocolo de 1 cable, pero funciona a 15400 bps, lo cual es demasiado rápido.

Ahora me pregunto, si coloco un diodo frente a la línea TX y lo fusiono con la línea RX, ¿funciona esta configuración? ¿O hay alguna forma de controlar la velocidad de transmisión del protocolo 1-Wire?

Gracias de antemano,

    
pregunta JuniorDev

1 respuesta

2

En primer lugar, no debe usar un UART porque es una interfaz de colector abierto: el pin que se usa para los datos en serie nunca debe ser alto. Debe establecerse en tres estados (entrada de alta impedancia) para transmitir un bit "uno" y en una salida con un nivel bajo para transmitir un bit "cero", y estos datos deben enviarse a una velocidad de baudios prescrita. Estoy bastante seguro de que cualquier UART por sí solo conducirá la señal tanto alta como baja. Entonces, si desea usar un UART para implementar esta interfaz, necesita introducir algún hardware externo. El siguiente circuito se toma de un

Creo que el módulo al que te has vinculado proporciona el (equivalente a) el pullup de 4.7kOhm, pero es difícil de decir.

    
respondido por el vicatcu

Lea otras preguntas en las etiquetas