微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用带有 CAN_TP 的 UDS 服务通过 CAN 接收 256 字节数据的帧

如何解决使用带有 CAN_TP 的 UDS 服务通过 CAN 接收 256 字节数据的帧

我正在尝试通过 UDS 服务 0x36 接收 40 kb 的文件数据。我为此使用了 s32k148 板。 我目前面临的问题是数据接收限制。 我能够在 128 字节帧中通过板载服务 36 接收 40 kb 数据。 现在我想在可能的情况下接收 256 字节或更多字节帧中的数据。 我确认我正在以 256 字节块的形式向 CAN 总线发送数据。 但是板子无法接收那么多长帧数据。 因此,如果我需要在某处进行配置以接收更多数据,请告诉我。

我用于 128 字节帧的 CAN_TP 参数如下

/*uds netwrok layer cfg info */
const tUdsNetLayerCfg g_stUdsNetLayerCfgInfo =
{
1u,/*called can tp period*/
RX_FUN_ID,/*can tp rx function ID*/
RX_PHY_ID,/*can tp rx phy ID*/
TX_DIAG_ID,/*can tp tx ID*/
0u,/*BS = block size*/
25u,/*STmin*/
25u,/*N_As*/
25u,/*N_Ar*/
75u,/*N_Bs*/
0u,/*N_Br*/
0u,/*N_Cs*/
1500u,/*N_Cr*/
CanTpTxmsg,/*can tp tx*/
CanTpRxmsg,/*can tp rx*/
};

设置: RiPi 正在通过 UDS 36 服务以 128 字节的块在 CAN 总线上发送数据。 Ripi和NXP通过CAN BUS连接。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。