英飞凌
直播中

向日葵的花季

9年用户 1336经验值
擅长:电源/新能源
私信 关注

使用TLE7258SJXUMA1收发器和TRAVEO T2G,lin将其连接到traveo,lin信号就会消失怎么解决?

你好,我正在使用 TLE7258SJXUMA1 收发器和 TRAVEO T2G。 我连接了 Lin RX 端口 5.0 和 Tx 端口 5.1。 配置如下
#define LIN_RX_PORT                     GPIO_PRT5#define LIN_RX_PIN                      0u#define LIN_RX_PIN_MUX                  P5_0_LIN0_LIN_RX7#define LIN_TX_PORT                     GPIO_PRT5#define LIN_TX_PIN                      1u#define LIN_TX_PIN_MUX                  P5_1_LIN0_LIN_TX7#define LIN_EN_PORT                     GPIO_PRT5#define LIN_EN_PIN                      2u#define LIN_EN_PIN_MUX                  P5_2_LIN0_LIN_EN7#define LIN_TYPE                        LIN0_CH7#define LIN_PCLK                        PCLK_LIN0_CLOCK_CH_EN7#define LIN_IRQN                        lin_0_interrupts_7_IRQn#define LIN_TYPE LIN0_CH7#define LIN_PCLK                       PCLK_LIN0_CLOCK_CH_EN7#define LIN_IRQN                        lin_0_interrupts_7_IRQn 我想把收发器用作从属设备。 我有 microchip 的 Lin 分析仪工具。
static const stc_lin_config_t lin_config ={    .bMasterMode               = false, //If TRUE, corresponding channel = master mode, If FALSE, slave mode.    .bLinTransceiverAutoEnable = true, //If TRUE, corresponding LIN channel transceiver is enabled automatically, If FALSE, firmware has to handle the transceiver enable signal manually     .u8BreakFieldLength        = 11u, //Break field length    .enBreakDelimiterLength    = LinBreakDelimiterLength1bits, //Break delimiter length {LinBreakDelimiterLength1bits = 1-bit length}    .enStopBit                 = LinOneStopBit, //Stop bit length { LinOneStopBit = 1, LinTwoStopBit = 3 }    .bFilterEnable             = true//If TRUE, lin_rx_in filter operates. Median 3 operates on the last three "lin_rx_in" values};void Lin_init(){        /* Note:         * LIN IP does oversampling and oversampling count is fixed 16.         * Therefore LIN baudrate = LIN input clock / 16.         */        Cy_SysClk_PeriphAssignDivider(LIN_PCLK, CY_SYSCLK_DIV_16_BIT, 0u);        Cy_SysClk_PeriphSetDivider(CY_SYSCLK_DIV_16_BIT, 0u, (195u-1u)); // 60 MHz / 195 / 16 (oversampling) = 19231 Hz        Cy_SysClk_PeriphEnableDivider(CY_SYSCLK_DIV_16_BIT, 0u);     /* Initialize port settings */        PortInit();          Cy_Lin_Init(LIN_TYPE,  lin_config);        Cy_Lin_Enable(LIN_TYPE);    lin_state = LIN_STATE_IDLE;    /* Register LIN interrupt handler and enable interrupt */     Cy_SysInt_InitIRQ( lin_irq_cfg);    Cy_SysInt_SetSystemIrqVector(lin_irq_cfg.sysIntSrc, LIN0_IntHandler);    NVIC_SetPriority(CPUIntIdx7_IRQn, 7u);    NVIC_ClearPendingIRQ(CPUIntIdx7_IRQn);    NVIC_EnableIRQ(CPUIntIdx7_IRQn);     /* LIN operation */    lin_state = LIN_STATE_RX_HEADER;    Cy_Lin_SetInterruptMask(LIN_TYPE, CY_LIN_INTR_RX_HEADER_DONE | CY_LIN_INTR_RX_RESPONSE_DONE | CY_LIN_INTR_ALL_ERROR_MASK_SLAVE);    Cy_Lin_SetCmd(LIN_TYPE, CY_LIN_CMD_RX_HEADER_RX_RESPONSE);}这是我的代码。 lin 工具在未连接 traveo 时会发送信号,但一旦我将其连接到 traveo,lin 信号就会消失,通信也不会发生。 我的代码中没有中断。 lin 工具在未连接 traveo 时会发送信号,但一旦我将其连接到 traveo,lin 信号就会消失,通信也不会发生。 中断不来

                                                                                                                                                                                                                                                                                                                                                                                                        
                                                        

回帖(1)

李骏鹏

2024-5-28 16:07:02
根据您提供的信息,您正在尝试将 TLE7258SJXUMA1 收发器与 TRAVEO T2G 连接,并配置 LIN RX 端口。如果 LIN 信号在连接后消失,您可以尝试以下步骤来解决问题:

1. 检查硬件连接:确保 TLE7258SJXUMA1 收发器与 TRAVEO T2G 的 LIN RX 和 TX 端口之间的连接正确无误。检查是否有任何断线或接触不良的情况。

2. 检查 TLE7258SJXUMA1 收发器的配置:确保收发器的配置正确,包括电源、地线和 LIN 信号线。查看 TLE7258SJXUMA1 的数据手册,以确保您遵循了正确的配置步骤。

3. 检查 TRAVEO T2G 的配置:确保 TRAVEO T2G 的 LIN 端口配置正确。根据您的代码,您已经定义了 LIN_RX_PORT、LIN_RX_PIN 和 LIN_RX_PIN_MUX。请确保这些定义与您的硬件设置相匹配。

4. 检查软件驱动:确保您的软件驱动程序支持 TLE7258SJXUMA1 收发器和 TRAVEO T2G。如果需要,更新驱动程序以获得更好的兼容性。

5. 使用示波器或逻辑分析仪:使用示波器或逻辑分析仪检查 LIN 信号在连接前后的状态。这将帮助您确定问题是否出在硬件连接或信号质量上。

6. 检查 LIN 协议:确保您的系统遵循 LIN 协议规范。如果可能,请与其他 LIN 设备进行通信测试,以排除协议兼容性问题。

7. 寻求技术支持:如果以上步骤都无法解决问题,建议您联系 TLE7258SJXUMA1 收发器和 TRAVEO T2G 的制造商,寻求技术支持。

通过以上步骤,您应该能够找到并解决 LIN 信号消失的问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分