一种多通道CAN通信总线端口扩展方法及系统与流程

文档序号:14553706阅读:1247来源:国知局
一种多通道CAN通信总线端口扩展方法及系统与流程

本发明涉及汽车电气技术领域,特别涉及一种多通道can通信总线端口扩展方法及系统。



背景技术:

随着电动汽车技术的发展,电动汽车普及的很快,需要建设很多大功率的超级充电站。超级充电站内需要配置大功率的充电模块柜,以及多个充电终端。每个充电终端通过电力输出电缆和can通信总线与充电模块柜相连。这样不同型号的电动汽车同时使用多个充电终端进行充电时,充电模块柜可以根据每个车不同的功率需求来分配功率。在实际的应用中,一个充电模块柜需要与多达十个充电终端相连,这样模块柜内的充电模块就需要分成十组,模块柜的控制器需要十路can接口来分别连接十组充电充电模块;另外模块柜控制器换需要两个can接口来连接十个充电终端(每五个充电终端连接到模块柜的同一个can接口上)。这样模块柜的主微控制器(microcontrollerunit,以下简称mcu)需要多达十二路can通信端口,目前市场中没有含有十二路can接口的mcu芯片。本例中使用的mcu芯片mc9s12xeq512也只有四路can总线接口,任然满足不了需求,需要另外扩展八路can通信端口。

而在选着扩展can的方法时,不仅要考虑价格成本,运行速度,可靠性,还要考虑开发的难度和集成度。本发明提供一种简单实用,易扩展的方法来实现多路can接口的需求,采用辅助mcu实现串口转can接口从而达到扩展can接口的目的。而辅助mcu采用国产的低成本的mcu芯片,型号为gd32f105r8t6,该芯片含有两路can接口,这样一个辅助mcu可以扩张出两路can接口。



技术实现要素:

有鉴于此,本发明提出一种简单实用,易扩展的方法来实现多路can接口的需求,采用辅助mcu实现串口转can接口从而达到扩展can接口的目的的多通道can通信总线端口扩展方法及系统。

一种多通道can通信总线端口扩展系统,包括如下单元:

主mcu、多个辅助mcu;

所述主mcu通过其串口与多个辅助mcu的串口相连;

所述辅助mcu通过一个串口转为两个硬件上独立的can接口。

在本发明所述的多通道can通信总线端口扩展系统中,

所述辅助mcu为四个,所述主mcu的四个串口分别连接到四个辅助mcu的串口上。

在本发明所述的多通道can通信总线端口扩展系统中,

所述主mcu以及辅助mcu的串口的通信波特率分别为115200bps。

本发明还提供一种多通道can通信总线端口扩展方法中,通过如上述任一项所述的多通道can通信总线端口扩展系统实现,包括如下步骤:

s1:将主mcu的各个串口分别连接到各个辅助mcu的串口上,每个辅助mcu通过一个串口转为两个硬件上独立的can接口,以扩展出多路can接口;

s2、主mcu上电初始化其多个串口的硬件后,设置串口的通信波特率;主mcu判断是否有数据需要发送给扩展的辅助mcu的can接口,如果有,则根据需要发送的目标can接口编号来判断需要把数据发送给某个辅助mcu的串口,主mcu把需要发送的数据和can接口编号打包一起发送给辅助mcu;同时判断是否有接收到辅助mcu的串口数据,若果有,则处理该数据;

s3、每个辅助mcu上电初始化串口的硬件后,设置串口的通信波特率;辅助mcu的串口接收到主mcu数据时,根据主mcu数据中的can接口编号将数据发送给对应的can接口;辅助mcu的can接口接收到数据时,将该数据和对应的can接口编号打包在一起作为辅助mcu的数据通过串口发送给主mcu;

s4、辅助mcu的两个can口接收到数据后,转存到串口的发送队列中,按先进先出的方式发送给主mcu,以此防止辅助mcu的两个can接口同时接收到数据后需要同时通过同一个串口发送给主mcu的数据冲突问题。

在本发明所述的多通道can通信总线端口扩展方法中,其还包括:

s5:依据can2.0b规范中规定:标准帧使用11位标识符的can数据帧,扩展帧使用29位标识符的can数据帧,以及saej1939-21:2006标准规定的每个can数据帧包含一个单一的协议数据单元pdu,而pdu的数据域包括八个字节。

实施本发明提供的多通道can通信总线端口扩展方法及系统与现有技术相比具有以下有益效果:通过设置辅助mcu芯片,并且设计的四个辅助mcu的软件程序是相同的,这样可以节省大量的研发测试时间。相比较采用其他的方法(如spi接口转can);同时扩展出八路can接口,改方法简单,易开发,成本低,并且方便扩展出多达十四个扩展的can接口。

附图说明

图1是本发明实施例的多通道can通信总线端口扩展系统结构框图。

图2是主mcu工作流程图。

图3是辅助mcu工作流程图。

具体实施方式

如图1所示,本发明采用多个辅助mcu来实现串口转can的方法实现主mcu的can接口扩展,使用一个主mcu和四个辅助mcu来扩展八路can接口。

如图2、图3所示,本方案实现的can接口扩展方法包括以下步骤:

s1:将主mcu的四个串口分别连接到四个辅助mcu的串口上,每个辅助mcu通过一个串口转为两个硬件上独立的can接口,这样就可以一共扩展出八路can接口。本发明采用的主mcu芯片mc9s12xeq512实际有七个串口,最大可以扩展出十四路can接口。

s2:主mcu上电初始化四个串口的硬件后,设置串口的通信波特率为115200bps。主mcu判断是否有数据需要发送给扩展的辅助mcu的can接口,如果有,则根据需要发送的目标can接口编号来判断需要把数据发送给某个辅助mcu的串口,主mcu把需要发送的数据和can接口编号打包在一起发送给辅助mcu;同时判断是否有接收到辅助mcu的串口数据,若果有,则处理该数据。

s3:每个辅助mcu上电初始化串口的硬件后,设置串口的通信波特率为115200bps。辅助mcu的串口接收到主mcu数据时,根据主mcu数据中的can接口编号将数据发送给对应的can接口;辅助mcu的can接口接收到数据时,将该数据和对应的can接口编号打包在一起作为辅助mcu的数据通过串口发送给主mcu。

s4:辅助mcu的两个can口接收到数据后,转存到串口的发送队列中,按先进先出的方式发送给主mcu,以此防止辅助mcu的两个can接口同时接收到数据后需要同时通过同一个串口发送给主mcu的数据冲突问题。

s5:依据can2.0b规范中规定:标准帧使用11位标识符的can数据帧,扩展帧使用29位标识符的can数据帧,以及saej1939-21:2006标准规定的每个can数据帧包含一个单一的协议数据单元(pdu),而pdu的数据域有八个字节。定义主mcu和辅助mcu之间的数据通信协议格式如下:

有益效果

本发明采用国产的低成本的辅助mcu芯片,型号优选为gd32f105r8t6,并且设计的四个辅助mcu的软件程序是相同的,这样可以节省大量的研发测试时间。相比较采用其他的方法(如spi接口转can)

同时扩展出八路can接口,改方法简单,易开发,成本低,并且方便扩展出多达十四个扩展的can接口。

可以理解的是,对于本领域的普通技术人员来说,可以根据本发明的技术构思做出其它各种相应的改变与变形,而所有这些改变与变形都应属于本发明权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1