Introduction
EnDat is a bidirectional interface for position encoders. During EnDat operation the EnDat receiver receives position information from the EnDat position encoder.
Features Supported
- EnDat 2.2 command set
- EnDat 2.1 command set
- Interrupted and continuous clock mode
- Cable length up to 100m @8MHz
- Propagation delay compensation - Automatic estimation of propagation delay
- Receive on-the-fly CRC verification of position, parameters and additional information
- Two modes of operation - host trigger and periodic trigger
- Channel select
- Safety Readiness: Recovery time
- Clock up to 16MHz with single channel
- Note
- Receive (Rx) is oversampled at 8x of send(Tx). Therefore, the encoder interface frequency "f" should such that Tx source clock value is divisible by "f" and Rx source clock value is divisible by "8*f".
- Possible interface speeds with different source clock combinations.
Clock Source | Interface Speed
|
PRU UART Clock (192 MHz) | 1MHz, 2MHz, 4MHz, 6MHz, 8MHz, 12MHz, 16MHz |
PRU UART Clock (160 MHz) | 1MHz, 2MHz, 4MHz, 5MHz, 10MHz |
PRU Core Clock (200 MHz) | 1MHz, 5MHz
|
Features Not Supported
In general, peripherals or features not mentioned as part of "Features Supported" section are not supported in this release, including the below
- Independent clocks on multi channel mode.
Limitations
SysConfig Features
- Note
- It is strongly recommend to use SysConfig where it is available instead of using direct SW API calls. This will help simplify the SW application and also catch common mistakes early in the development cycle.
SysConfig can be used to configure things mentioned below:
- Selecting the ICSS instance.
- Selecting the ICSSM PRU slice. (Tested on ICSSM-PRU0)
- Configuring PINMUX.
- Channel selection.
- Selecting RX and TX source clock
ICSS PRU Resource Usage
Configuration | PRU Core | Memory Usage | IEP Usage | Other Peripheral Usage | Description |
Single Channel Configuration | PRUx | DMEM: 152 Bytes
IMEM: 5 KB | IEP0: CMP0 and CMP3 | INTC Signal No. 18 is used to trigger a R5 interrupt | IEP, CMP events and INTC signal are used only in periodic continuous mode.
|
- Note
- For pin usage, see Pin Multiplexing section.
ENDAT Design
EnDat Protocol Design explains the design in detail.
Example
EnDAT Diagnostic
API
APIs for ENDAT Encoder