2142069_zh-CN

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2142069_zh-CN

2142069_zh-CN

[RTD600 MCAL & IP] S32K3X4EVB - T172 FlexCAN 示例(中断/轮询)

这篇文章介绍了S32K3X4EVB-T172 评估板的两个互补的 FlexCAN 通信示例,展示了低级 IP 层和AUTOSAR MCAL 层的实现。这些示例是在正常/用户模式下配置元器件的基本例程,因为 RTD示例配置为环回模式。

要测试 CAN 通信,必须使用另一块开发板或 CAN 分析仪。

由于使用 S32K3X4EVB-T172 的 B2 修订版来测试该项目,因此将 TJA1043 收发器安装在板上并用于测试示例。

------------------------------------------------------------------------------
* Test HW: S32K3X4EVB-T172
* MCU: S32K344
* Compiler: S32DS 3.6.2
* SDK release: RTD 6.0.0
* Debugger: PE Micro
* Target: internal_FLASH
------------------------------------------------------------------------------


示例 1:FlexCAN IP 层 (LLD)

该项目使用 IP 级驱动程序演示了基本的 FlexCAN 设置。它配置标准的 CAN 报文;通过轮询进行传输,使用中断进行接收。

如果使用TJA1153 收发器,则必须在项目顶部取消注释宏TJA1153 ,并通过自定义配置序列对其进行初始化。如果未使用且宏已被注释,则进行正常的收发器初始化(仅CAN0_EN_PIN & CAN0_STB_PIN设置为高电平)。

Rx 过滤器口罩类型是个人的,设置为接收 STD ID 123h。
Tx MB 设置为 STD ID 001h。

FlexCAN 比特率使用 MPC5xxx/S32Kxx/LPCxxxx 计算 :CAN / CAN FD 位定时计算。FlexCAN 比特率设置为500kbps, 采样点为 81.25%

  • FPE_CLK: 24MHz
  • 同步间隔:1
  • 提案序号: 4
  • 第 1 阶段:8
  • 第二阶段:3
  • 预分频器:3
  • RJW: 3

示例 2:FlexCAN MCAL 层 (HLD)

该项目可配置 Can_43_FLEXCAN 和 CanIf 模块进行 CAN 通信。传输通过轮询完成,而接收则通过中断进行配置。

Tx MB 设置为 STD ID 123h。
接受掩码设置为 0x0(接受所有 ID)。

CAN 报文通过Can_43_FLEXCAN_Write() 发送,通过 CanIf_RxIndication() 回调接收。CanIf_bRxFlag设置完成后,系统会发回一条 ACK 报文。 绿色LED 每收到 10 条信息就会切换一次。

FlexCAN 比特率使用 MPC5xxx/S32Kxx/LPCxxxx 计算 :CAN / CAN FD 位定时计算。FlexCAN 比特率设置为500kbps, 采样点为 81.25%

  • FPE_CLK: 24MHz
  • 同步间隔:1
  • 提案序号: 4
  • 第 1 阶段:8
  • 第二阶段:3
  • 预分频器:3
  • RJW: 3

如果使用TJA1153收发器,则必须使用 宏TJA1153_EVB_TRCV。否则,使用TJA1043_EVB_TRCV进行标准收发器初始化(CAN0_STB& CAN0_EN 引脚设置为高电平)。


Julin_AragnM_0-1768503828389.png
Julin_AragnM_1-1768503835901.png

这些示例 按原样提供 ,不提供任何保证,也不提供任何支持。这些基本例程 仅供参考。

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎01-27-2026 07:36 PM
更新者: