Robus - Part 4: The physical driver interface
The Robus layer allows half-duplex wired communication between physical nodes and services. Robus deals with it as a multi-master communication where any node can initiate a transmission or receive a message at any time.
Receiving and sending on the same line requires a mechanism to enable and disable the reception and transmission.
- Rx enable/disable → avoid receiving what is sent.
- Tx enable/disable → avoid disturbing the line when in reception.
Many physical layers like RS485 or OneWire fit with Robus. The hardware abstraction layer (HAL) of Robus takes control of:
- USART for communication.
- CRC peripheral for reception (optional)
- DMA for transmission (optional)
- Timer for timeout
- 2 pinouts external interruption PTP