查看: 4302|回复: 1

[求助] MFR 4310 FLexRay A信道和B信道能单独接入集群吗?

[复制链接]

该用户从未签到

2

主题

4

帖子

0

新手上路

Rank: 1

积分
35
最后登录
2020-3-12
发表于 2020-3-12 10:44:32 | 显示全部楼层 |阅读模式
20NXP金币
最近测试官方代码,发现不管是设置A信道唤醒,还是B信道唤醒,正常通信后,只要A信道断开连接,整个节点与集群同步失败。而且单独B信道接入,不能与集群建立同步。哪位大神能指点一下,这是我配置那你出现问题。


const Fr_low_level_config_type Fr_low_level_cfg_set_00 =
{
      10,         /* G_COLD_START_ATTEMPTS */   
                        7,          /* GD_ACTION_POINT_OFFSET */   
                        91,         /* GD_CAS_RX_LOW_MAX */        
                        0,          /* GD_DYNAMIC_SLOT_IDLE_PHASE */
                        6,          /* GD_MINISLOT */               
                        2,          /* GD_MINI_SLOT_ACTION_POINT_OFFSET */   
                        62,         /* GD_STATIC_SLOT */   
                        0,          /* 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 */   
                        8,          /* G_MAX_WITHOUT_CLOCK_CORRECTION_PASSIVE */   
                        6,          /* G_MAX_WITHOUT_CLOCK_CORRECTION_FATAL */
                        0,          /* G_NUMBER_OF_MINISLOTS */   
                        79,         /* G_NUMBER_OF_STATIC_SLOTS */
                        4920,       /* G_OFFSET_CORRECTION_START */   
                        16,         /* G_PAYLOAD_LENGTH_STATIC */   
                        10,         /* G_SYNC_NODE_MAX */   
                        0,          /* G_NETWORK_MANAGEMENT_VECTOR_LENGTH */  
                        FALSE,      /* G_ALLOW_HALT_DUE_TO_CLOCK */  
                        20,         /* G_ALLOW_PASSIVE_TO_ACTIVE */
                        FR_CHANNEL_AB,  /* P_CHANNELS */  
                        212,        /* PD_ACCEPTED_STARTUP_RANGE */
                        2,          /* 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 */     
                        0,          /* P_LATEST_TX */               
                        9,          /* P_MACRO_INITIAL_OFFSET_A */
                        9,          /* P_MACRO_INITIAL_OFFSET_B */
                        23,         /* P_MICRO_INITIAL_OFFSET_A */
                        23,         /* P_MICRO_INITIAL_OFFSET_B */
                        200000,     /* P_MICRO_PER_CYCLE */      
                        140,        /* P_OFFSET_CORRECTION_OUT */
                        601,        /* P_RATE_CORRECTION_OUT */  
                        FALSE,      /* P_SINGLE_SLOT_ENABLED */  
                        FR_CHANNEL_B,/* P_WAKEUP_CHANNEL */   
                        33,         /* P_WAKEUP_PATTERN */     
                        40,         /* P_MICRO_PER_MACRO_NOM */
                        8           /* P_PAYLOAD_LENGTH_DYN_MAX */
};


const Fr_HW_config_type Fr_HW_cfg_00 =
{
    0x000400,     // FlexRay module base address
    0x0FF000,//0x0FF000     // FlexRay memory base address (MB headers start at this address)
    FR_MFR4310,     // Type of Freescale FlexRay module
    FALSE,          // Synchronization filtering
    //FR_EXTERNAL_OSCILLATOR,
    FR_INTERNAL_SYSTEM_BUS_CLOCK,
    0,              // Prescaler value
    16,             // Data size - segment 1
    8,              // Data size - segment 2
    30,             // Last MB in segment 1 (Number of MB in Segment1 - 1)
    30,             // Last individual MB (except FIFO); (Number of MB in Segment1 + Number of MB in Segment2 - 1)
    31,             // Total number of used MB (Last_individual_MB + 1 + FIFO)
    TRUE,           // Allow coldstart
    0,              // The value of the TIMEOUT bit field in the SYMATOR register - not implemented for all FlexRay modules
    0,              // Offset of the Sync Frame Table in the FlexRay memory
    FR_DUAL_CHANNEL_MODE    // Single channel mode disabled
};

const Fr_transmit_buffer_config_type Fr_tx_buffer_slot_01_cfg =
{
   1,                           // Transmit frame ID
   242,                         // Header CRC
   16,                          // Payload length
   FR_DOUBLE_TRANSMIT_BUFFER,   // Transmit MB buffering
   FR_STATE_TRANSMISSION_MODE,  // Transmission mode
   FR_STREAMING_COMMIT_MODE,    // Transmission commit mode
   FR_CHANNEL_AB,               // Transmit channels
   FALSE,                       // Payload preamble
   FALSE,                       // Transmit cycle counter filter enable
   0,                           // Transmit cycle counter filter value
   0,                           // Transmit cycle counter filter mask
   TRUE,                        // Transmit MB interrupt enable
   TRUE                         // FALSE - interrupt is enabled at commit side, TRUE - interrupt is enabled at transmit side
};

const Fr_receive_buffer_config_type  Fr_rx_buffer_slot_04_cfg =
{
   4,                           // Receive frame ID
   FR_CHANNEL_A,                // Receive channel enable
   FALSE,                       // Receive cycle counter filter enable
   0,                           // Receive cycle counter filter value
   0,                           // Receive cycle counter filter mask
   TRUE                         // Receive MB interrupt enable
};

const Fr_receive_shadow_buffers_config_type Fr_rx_shadow_cfg =
{
    TRUE,       // Rx shadow buffer for channel A, seg 1 - enabled?
    FALSE,       // Rx shadow buffer for channel A, seg 2 - enabled?
    TRUE,       // Rx shadow buffer for channel B, seg 1 - enabled?
    FALSE,       // Rx shadow buffer for channel B, seg 2 - enabled?
    28,          // Ch A, seg 1 - the current index of the MB header field
    28,         // Ch A, seg 2 - the current index of the MB header field
    29,          // Ch B, seg 1 - the current index of the MB header field
    29          // Ch B, seg 2 - the current index of the MB header field
};

回复

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24915
最后登录
2025-7-23
发表于 2020-3-12 11:07:27 | 显示全部楼层
请到该论坛提问,http://community.nxp.com/
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-23 12:33 , Processed in 0.075722 second(s), 18 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表