Data Fields | |
uint16_t | FrameReference |
uint16_t | FrameLength |
uint32_t | FrameSendOffset |
uint16_t | FrameId |
uint8_t | FrameFlags1 |
uint8_t | FrameIndex |
uint16_t | RR |
uint16_t | Phase |
uint16_t t_ppmDesc::FrameReference |
Lower 16 bit of byte address for the PPM buffer. It includes offset for current triple buffer.
uint16_t t_ppmDesc::FrameLength |
11 bits of frame length, set by host only. Frame length has total number of bytes without 4 bytes of CRC which are generated by hardware. Bit 12 to 15 must be 0. Used by PRU to fill in cycle counter and status towards the end of frame.
uint32_t t_ppmDesc::FrameSendOffset |
Send in RED period: FSO as provided by engineering and limited to 22 bits, i.e. 4.1ms. Set by host only. Higher bits must be set to 0. FSO =0 indicates green phase packet.
uint16_t t_ppmDesc::FrameId |
FrameID as provided by engineering. Not used for PPM.
uint8_t t_ppmDesc::FrameFlags1 |
TODO
uint8_t t_ppmDesc::FrameIndex |
Index is already considered in FrameReference. Used by host which first reads BufferLock register to get the ppm# and then looks up descriptor to read FrameIndex currently used
uint16_t t_ppmDesc::RR |
Reduction Ratio for red period is in (RR-1) where RR is 1,2,4,8,16. Reduction Ration for green period is (RR-1) where RR is 1,2 ,4 …512.
uint16_t t_ppmDesc::Phase |
used for sendlist generation. Phase starts from 1 .. RR