基于GD32F407的FlexRay&CAN综合分析仪设计

2022-08-02 10:10段鑫
电子制作 2022年13期
关键词:物理层时隙分析仪

段鑫

(长沙硕博电机有限公司,湖南长沙,410221)

0 前言

随着车辆的智能化和集成化的发展,对控制和通信总线的要求越来越高,目前广泛使用的CAN总线已很难满足技术发展的需求。如总线最高速率只有1Mbps;数据传输是基于响应优先级和报文仲裁,数据延时具有不确定性;最高的有效传输效率只有50%等[2]。FlexRay总线在这种情况下应运而生,它采用时分基址的机制进行通信,具有实时性、可靠性、灵活性、高带宽、高容错性等优势,最高具有20Mbps的速率。具备冗余设计,多种拓扑连接方式,在节点布置上更加灵活[3]。

目前乘用车如奔驰、宝马、领克等多种国内外品牌的部分车型核心控制通信都升级为FlexRay总线[4],但是由于零部件供应商的技术革新速度及成本问题,车辆上还存在CAN总线等要求不高设备,在进行车辆检修和诊断时,总线数据要分开处理解析,不能集成化解决。

1 分析仪设计方案

本分析仪具备一个USB模块,用于和电脑端上位机进行通信;一个CAN接口(终端电阻可以配置),用于和被测设备CAN总线进连接,一个FlexRay接口(终端电阻可以配置),用于和被测设备FlexRay总线连接;一个Flash模块,用于存储CAN和FlexRay配置信息。系统框图如图1所示。

图1 系统框图

电脑端上位机软件通过配置软件配置好CAN和FlexRay总线网络信息。分别启动总线后,分析仪的CAN和FlexRay接口将被测总线上的数据接收到主控芯片,主控芯片将数据在通过FIFO的形式,通过USB接口上传到电脑端上位机软件,电脑端上位机软件接收到上传的数据后,分别进行分析处理。

2 硬件设计

2.1 主控芯片选择

FlexRay的最高速率达到20Mpbs,数据量一帧最大有254字节,而且还需要对CAN数据进行分析和USB数据的上传,本分析仪需要一颗处理能力强的主控芯片,本分析仪采用兆易创新公司的GD32F407VGT6芯片,此芯片主频为168MHz,一路USB主/从外设,2路CAN总线,3路SPI总线,内核为ARM Cortex-M4,具有很强的数据处理能力。

2.2 电源系统设计

本分析仪采用电脑USB口进行供电,供电电源为DC5V,最大电流500mA。为防止烧毁电脑USB口,在电源电路上需设计一个自恢复保险。选用A250-200,额定电流200mA,动作电流400mA,可有效保护电脑USB端口。

为保证系统的稳定性,外部总线接口电源和内部电源隔离。系统内部需要用到的电源有DC3.3V,DC5V,隔离总线需要用到的电源有DC5V,DC12V。电源原理图如图2所示。

图2 电源原理图

2.3 CAN电路设计

GD32F407芯片自带CAN控制器,外部只需扩展CAN物理层处理电路。CAN接口是对外的,为提高抗干扰能力,此接口需做隔离处理,隔离芯片采用纳芯微电子的容耦技术隔离芯片NSi8021,该芯片的数据速率:10Mbps,隔离电压:3kVrms;共模抑制比:100kV/us。

CAN物理层芯片选用芯力特的SIT82C251,此芯片最高支持1Mbps波特率,完全兼容“ISO 11898-24 V”标准,至少允许 110 个节点连接到总线,具有高抗电磁干扰能力。可应用于卡车、公 交、小汽车、工业控制等领域。

CAN隔离及物理层原理图如图3所示。

图3 CAN隔离及物理层原理图

2.4 FlexRay电路设计

FlexRay控制器采用恩智浦MFR4310芯片,此芯片支持可变比特率:2.5、5、8和10 Mbps、128个可配置消息缓冲区、两个独立的接收FIFO,可分别对应2个独立的收发通道。GD32F407VGT6芯片通过EXMC并行接口和MFR4310进行数据交互,当有事件产生时,通过中断的方式通知主控芯片进行处理。当A、B两通道复用时,FlexRay总线的速率最大20Mpbs。FlexRay控制器电路如图4所示。

图4 FlexRay控制器电路

为增加硬件的可靠性,FlexRay总线采用信号隔离设计,为减少波形畸变和信号延时,采用数据速率为150Mpbs的纳芯微电子数字隔离芯片NSI8142做隔离。该芯片具有4通道:两路输入,两路输出。两路输入用于接收和接收使能信号,两路输出用于发送和发送使能信号,单片芯片刚好满足一路FlexRay电路隔离需求。隔离电路如图5所示。

图5 FlexRay隔离电路图

FlexRay物理层芯片采用恩智浦的TJA1080A芯片,总线对外接口的终端电阻通过开关选择使用,物理层驱动电路如图6所示。

图6 FlexRay物理层电路图

2.5 USB接口电路设计

GD32F407VGT6芯片具有USB主/从设备控制器,为防止浪涌电压冲击,USB接口需要增加保护芯片,保护芯片采用台舟电子的PRTR5V0U2X,USB电路如图7所示。

图7 测试用户界面

图7 USB接口电路图

2.6 Flash电路设计

Flash电路用于存储总线通信配置参数,采用兆易创新的串行Flash芯片GD25Q32CSIGR,此芯片具有32Mbit存储资源,每页具有256字节。该芯片通过SPI接口和主控芯片连接,电路图如图8所示。

图8 串行Flash电路图

3 软件设计

软件分为两部分:下位机软件,运行在分析仪硬件上;上位机软件,运行在电脑端。

3.1 下位机软件设计

下位机软件由CAN总线驱动、CAN数 据FIFO结 构、FlexRay总线驱动、FlexRay数据FIFO结构、USB从设备驱动和数据结构、Flash驱动等。软件框图如图9所示。

图9 软件框图

电脑端上位机软件通过USB接口将总线的配置数据发送下来,并存储到Flash中。在上电时,分析仪将从Flash中直接读取设置的参数进行网络的初始化,避免重复的网络参数设置(FlexRay网络参数多,重复设置麻烦)。

CAN总线根据设置的波特率、ID滤波方式,工作模式(只接收,只发送,正常接收),进行CAN控制器的初始化,采用64级FIFO模式,将数据进行先入先出的管理,能有效防止数据被覆盖。

FlexRay总线需要设置正确的网络参数才能进行通信。网络参数包含全局网络参数和局部网络参数,例如:周期、静态时隙个数、静态时槽长度、静态时隙数据个数、动态时隙个数、动态时槽长度、动态时隙数据个数、网络向量长度等等。

FlexRay通过两个独立的MFR4310内部接收FIFO分别接收通道A和通道B中的数据,通过中断的方式通知主控制芯片提取数据,主控芯片接收到FIFO中断时,将数据从并口取出,并存入到主控芯片内部建立的256级FIFO中,FIFO数据以模拟中断的形式传输到电脑端上位机软件。

当需要模拟节点发送时,FlexRay发送时隙配置到128个消息邮箱中,通过映射对应关系,将需要发送的时隙数据发送到FlexRay总线中。

3.2 上位机软件设计

分析仪电脑端上位机软件主界面如图10所示。

图10 电脑端上位机软件主界面

参数设置项的功能:配置CAN和FlexRay总线网络参数;数据显示项的功能:接收两个总线的数据并显示,并按需要记录接收到的数据;数据发送项的功能:配置总线发送数据,并可设置发送方式、次数等;CAN数据波形显示项的功能:从CAN总线接收到数据选择出关键数据以波形的形式显示;FlexRay数据波形显示项的功能:从FlexRay总线接收到数据选择出关键数据以波形的形式显示;历史数据分析项的功能为:将保存的数据打开进行数据回放分析;固件升级项的功能:对分析仪进行软件更新;帮助项的功能:软件各个界面下每个组件的功能介绍,帮助用户快速使用软件。

4 结语

本设计完成了一种FlexRay和CAN综合分析仪,大部分元器件采用国产化设计,相对国外的CANoe设备而言,具有非常大的经济实用价值,国内暂时还没有FlexRay专用分析仪产品面世。而且这款分析仪可同时对FlexRay和CAN总线进行数据分析,在具有FlexRay总线的车辆设计、调试、检修等过程中使用更加便捷。

本设计中上位机软件功能还不够完善,只能完成初步数据分析功能,后续还需增加专用协议解析、节点模拟等功能,界面还需进行美化。

猜你喜欢
物理层时隙分析仪
Sekisui CP3000与STA Compact Max凝血分析仪检测项目比对分析
经皮血气分析仪TCM4的结构原理及日常维护保养与常见故障处理
SYSMEX XN-550全自动血液分析仪的校准及性能评价
基于阵列天线的数据时隙资源比例公平动态分配方案设计
玉林市先天性甲状腺功能减低症筛查TSH切值在GSP分析仪上的设定
Link—16中继时隙自适应调整分配技术研究
利用Modbus协议实现垂直螺旋卸车机取料器自动调速方法
一种应用于5G基于LDPC码的物理层包编码
一种车载网络的簇间碰撞避免MAC协议
一种车载网络中基于簇的时隙碰撞解决方法