I want to develop Flexray, Flexray bitrate is 5M bit/s, but NXP provide sample code is 10M bit/s.
So the program executes here and it loops indefinitely.
/* Wait till the FR CC is not in the FR_POCSTATE_NORMAL_ACTIVE */
while(Fr_get_POC_state() != FR_POCSTATE_NORMAL_ACTIVE)
protocol_state = Fr_get_POC_state(); /* Current POC state */
I know I should modify the parameters in Fr_low_level_cfg_set_00
/* Structure of this type contains configuration
information of the one low level parameters set */
const Fr_low_level_config_type Fr_low_level_cfg_set_00 =
{
10, /* G_COLD_START_ATTEMPTS */
3, /* GD_ACTION_POINT_OFFSET */
83, /* GD_CAS_RX_LOW_MAX */
0, /* GD_DYNAMIC_SLOT_IDLE_PHASE */
40, /* GD_MINISLOT */
3, /* GD_MINI_SLOT_ACTION_POINT_OFFSET */
50, /* GD_STATIC_SLOT */
13, /* GD_SYMBOL_WINDOW */
11, /* GD_TSS_TRANSMITTER */
59, /* GD_WAKEUP_SYMBOL_RX_IDLE */
50, /* GD_WAKEUP_SYMBOL_RX_LOW */
301, /* GD_WAKEUP_SYMBOL_RX_WINDOW */
180, /* GD_WAKEUP_SYMBOL_TX_IDLE */
60, /* GD_WAKEUP_SYMBOL_TX_LOW */
2, /* G_LISTEN_NOISE */
5000, /* G_MACRO_PER_CYCLE */
10, /* G_MAX_WITHOUT_CLOCK_CORRECTION_PASSIVE */
14, /* G_MAX_WITHOUT_CLOCK_CORRECTION_FATAL */
22, /* G_NUMBER_OF_MINISLOTS */
60, /* G_NUMBER_OF_STATIC_SLOTS */
4920, /* G_OFFSET_CORRECTION_START */
16, /* G_PAYLOAD_LENGTH_STATIC */
5, /* G_SYNC_NODE_MAX */
2, /* G_NETWORK_MANAGEMENT_VECTOR_LENGTH */
FALSE, /* G_ALLOW_HALT_DUE_TO_CLOCK */
20, /* G_ALLOW_PASSIVE_TO_ACTIVE */
FR_CHANNEL_AB, /* P_CHANNELS */
300, /* PD_ACCEPTED_STARTUP_RANGE */
1, /* P_CLUSTER_DRIFT_DAMPING */
56, /* P_DECODING_CORRECTION */
1, /* P_DELAY_COMPENSATION_A */
1, /* P_DELAY_COMPENSATION_B */
401202, /* PD_LISTEN_TIMEOUT */
601, /* PD_MAX_DRIFT */
0, /* P_EXTERN_OFFSET_CORRECTION */
0, /* P_EXTERN_RATE_CORRECTION */
1, /* P_KEY_SLOT_ID */
TRUE, /* P_KEY_SLOT_USED_FOR_STARTUP */
TRUE, /* P_KEY_SLOT_USED_FOR_SYNC */
242, /* P_KEY_SLOT_HEADER_CRC */
21, /* P_LATEST_TX */
5, /* P_MACRO_INITIAL_OFFSET_A */
5, /* P_MACRO_INITIAL_OFFSET_B */
23, /* P_MICRO_INITIAL_OFFSET_A */
23, /* P_MICRO_INITIAL_OFFSET_B */
200000, /* P_MICRO_PER_CYCLE */
1201, /* P_OFFSET_CORRECTION_OUT */
600, /* P_RATE_CORRECTION_OUT */
FALSE, /* P_SINGLE_SLOT_ENABLED */
FR_CHANNEL_A, /* P_WAKEUP_CHANNEL */
16, /* P_WAKEUP_PATTERN */
40, /* P_MICRO_PER_MACRO_NOM */
8 /* P_PAYLOAD_LENGTH_DYN_MAX */
};
But I don't know how to fill in the correct parameters.
Is there any tool that can help me set the parameters, for example, is the oscilloscope necessary?
Thanks.