Structure defining BiSS-C position data per channel.
Contains raw data, CRC error counts, and calculated CRC for each encoder in the daisy chain. Updated by PRU firmware after each BiSS-C transaction.
Data Fields | |
| bissc_raw_data | raw_data [BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
| volatile uint32_t | pd_crc_err_cnt [BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
| volatile uint8_t | pos_data_otf_crc [BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
| bissc_raw_data bissc_pos_data_res::raw_data[BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
Raw position data received from each encoder in daisy chain. Stored as two 32-bit words before parsing into angle/turns
| volatile uint32_t bissc_pos_data_res::pd_crc_err_cnt[BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
Cumulative position data CRC error count for each encoder. Incremented by PRU firmware whenever received CRC doesn't match calculated CRC
| volatile uint8_t bissc_pos_data_res::pos_data_otf_crc[BISSC_NUM_ENCODERS_IN_DAISY_CHAIN_MAX] |
On-the-fly calculated 6-bit CRC for position data of each encoder. Computed by PRU firmware during data reception for comparison with received CRC