IrDA usa un pulso de transmisión corto (2uS de la memoria) que es la forma principal en que varía a los datos seriales normales en el nivel físico. Por ejemplo, puede ver lo siguiente en la hoja de datos:
Esta entrada Schmitt-Trigger se usa para transmitir datos en serie cuando SD está bajo. Un circuito de protección en chip desactiva el controlador de LED si el pin TXD está activado durante más de 50 μs (máx. 300 μs).
Además de poder enviar y recibir datos que se ajustan aproximadamente a eso, no son específicos del protocolo y he usado una parte similar de un fabricante diferente en el pasado con un protocolo no estándar. No parece estar documentado en la hoja de datos, pero hay que tener en cuenta que debido a que IrDA es semidúplex, algunos módulos desactivan el receptor mientras se transmite para evitar que se devuelva una señal reflejada, por lo que esto puede poner fin a la capacidad de utilizar uno para la detección de proximidad.
No estoy seguro de si los módulos de Vishay hacen eso, pero si no obtiene una respuesta de alguien que sabe a ciencia cierta, podría hacer una prueba bastante simple al alimentar, por ejemplo, una señal de 10 kHz en TXD
y verifique con una interrupción del alcance o del microcontrolador si obtiene algo en RXD
cuando apunta a una superficie reflectante. Lo ideal es que la señal tenga una duración de pulso corta, aunque para una prueba rápida probablemente pueda confiar en la protección incorporada. Además, asegúrese de tomar nota de la información sobre la selección de condensadores y la ubicación de los componentes, ya que pueden ser bastante exigentes en este sentido.
Como ha confirmado que puede recibir datos reflejados de nuevo, puede usarlos para la detección de proximidad al limitar la corriente a través del pin VCC2
para reducir el rango. La hoja de datos menciona el uso de una resistencia externa cuando se requieren menos de 300 mA, por lo que una forma simple podría ser incluir una resistencia y luego usar un relé Reed para reducirla y volver a su máxima potencia mientras se transmiten datos. Si quisiera algo programable, probablemente podría echar un vistazo a algunos controladores LED de corriente constante programables.
Debido a que la salida de datos es estrictamente digital y no tiene ningún otro acceso a la salida del fotodiodo, el único método que puedo pensar para la detección de proximidad es variar la potencia de salida para controlar el rango y utilizar el hecho de que está recibiendo de vuelta la misma señal para indicar que hay un objeto en frente. Suponiendo que los datos reflejados sean el resultado de que la luz se refleje desde otro objeto, de lo contrario, es posible que deba agregar una barrera física entre el LED y el fotodiodo para intentar aislarlos. También tienden a tener lentes de ángulo bastante amplio, por lo que es posible que desee agregar algo para reducir el haz, independientemente de que no esté detectando el piso, etc.