littlebot
Published on 2025-04-01 / 8 Visits
0

【源码】基于C语言的Infineon设备CAN FD通信系统

项目简介

本项目展示了如何在Infineon的PSoC™ 6 MCU、CYW20829和CYW89829设备中使用CAN FD(Controller area network flexible data - rate)通信协议。该协议常用于在节点间的二线互连中广播传感器数据和控制信息。示例中,CAN FD Node - 1按下用户按钮时会向CAN FD - Node - 2发送CAN FD帧,反之亦然,且两个节点会通过UART终端记录接收到的数据,每次接收到CAN FD帧时用户LED会切换状态。

项目的主要特性和功能

  1. CAN FD通信演示:实现了两个CAN FD节点之间的帧数据发送与接收。
  2. 用户交互:通过用户按钮触发CAN FD帧的发送。
  3. 数据记录:两个CAN FD节点会将接收到的数据通过UART终端进行记录。
  4. 状态指示:每次接收到CAN FD帧时,用户LED会进行状态切换。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件,还需满足以下要求: - 安装ModusToolbox™ v3.2或更高版本(已在v3.2版本测试)。 - 确保各设备的板级支持包(BSP)达到最低版本要求: - PSoC™ 6 MCU:4.0.0 - CYW920829M2EVK - 02:v1.0.1 - CYW989829M2EVB - 01:v1.0.4 - CYW989829M2EVB - 03:v1.0.4 - 开发板需要支持CAN FD功能,如PSoC™ 62AIROC™ CYW20829 Bluetooth® LE SoCAIROC™ CYW89829 Bluetooth® LE SoC

硬件设置

  1. 确保所选开发板(如CY8CPROTO - 062S3 - 4343W)按默认配置正确连接,参考相应的套件用户指南和原理图。
  2. 部分开发板需要进行硬件改造:
    • AIROC™ CYW89829 Bluetooth® kit (CYW989829M2EVB - 01):对CAN相关引脚进行重新配置,调整UART引脚。
    • AIROC™ CYW89829 Bluetooth® kit (CYW989829M2EVB - 03):移动红板上的R4电阻。
    • AIROC™ CYW20829 Bluetooth® kit (CYW920829M2EVK - 02):将KitProg3升级到最新版本2.40。
    • CY8CKIT - 062S4:更换板上的电阻R124为R125。
  3. 每个开发板都需要一个CY8CKIT - 026(CAN和LIN Shield)套件作为物理层。
  4. 使用跳线线连接CAN FD - NODE - 1和CAN FD - NODE - 2,连接相应的CAN_RX、CAN_TX、CAN2_L、CAN2_H引脚,并为CAN2收发器供电。

软件设置

  1. 参考ModusToolbox™工具包安装指南安装和配置工具包。
  2. 若没有终端模拟器,可安装Tera Term

项目创建与运行

在Eclipse IDE for ModusToolbox™软件中

  1. 点击“New Application”,启动Project Creator工具。
  2. 从列表中选择支持的开发板套件,工具会自动重新配置示例以适配所选套件。
  3. 在“Project Creator - Select Application”对话框中,勾选本示例。
  4. 可选择更改项目名称。
  5. 选择项目存储路径,默认是Eclipse工作区。
  6. 点击“Create”完成项目创建。

在命令行界面(CLI)中

使用“project - creator - cli”工具创建项目,示例命令如下: project - creator - cli --board - id CY8CPROTO - 062S3 - 4343W --app - id mtb - example - cat1 - canfd --user - app - name MyCANFD --target - dir "C:/mtb_projects" 若要更换支持的套件,可使用Library Manager

在第三方IDE中

可使用独立的Project Creator工具或命令行创建项目,然后导出到支持的IDE中。

运行操作

  1. 按照硬件设置说明连接CAN和接地引脚。
  2. 通过KitProg3 USB连接器将CANFD - NODE - 1开发板连接到PC进行编程。
  3. 使用以下方式之一对开发板进行编程:
    • 在Eclipse IDE for ModusToolbox™软件中,选择项目,在“Quick Panel”中点击“ Program (KitProg3_MiniProg4)”。
    • 在CLI中,执行make program命令,可通过TOOLCHAIN参数指定工具链,如make program TOOLCHAIN = GCC_ARM
  4. 将CAN FD - NODE - 2套件连接到PC,打开main.c文件,将USE_CANFD_NODE宏设置为CANFD_NODE_2,重复步骤3。
  5. 打开终端程序,选择KitProg3 COM端口,设置串口参数为8N1和115200波特率。
  6. 按下NODE - 1的“SW2”按钮,实现从NODE - 1到NODE - 2的帧传输,反之亦然。
  7. 在终端窗口中观察结果。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】