一种车机系统通信串口压力测试系统及方法技术方案

技术编号:30823295 阅读:26 留言:0更新日期:2021-11-18 12:11
本发明专利技术公开了一种车机系统通信串口压力测试系统,其外部连接有测试模块和上位机,该系统包括:MCU,用于接收调试串口发送的指令,对该指令进行CRC校验,若校验通过,则启动压力测试模块;若校验不通过或不具备进入压力测试状态,则拒绝启动压力测试模块;压力测试模块,用于在启动后自动开启定时器,三分钟内未接收到上位机发送的具体测试案例指令,则退出压力测试模式;若三分钟内接收到具体测试案例指令,则判断压力测试模块类别及测试类型并进行解析,生成测试间隔和测试次数;MCU根据测试类型、测试间隔和测试次数设置响应的时间间隔。本发明专利技术用以开发过程中发现车机程序对异常情况和极端情况的适应能力,开发出高可靠性的车机系统。机系统。机系统。

【技术实现步骤摘要】
一种车机系统通信串口压力测试系统及方法


[0001]本专利技术属于汽车
,具体涉及一种车机系统通信串口压力测试系统及方法。

技术介绍

[0002]随着人们对智能化汽车需求增加,越来越多的汽车上装载了车机装置。目前车机装置多数采用MCU+SOC的架构,并外接多种功能芯片,如功放芯片,EEPROM存储芯片等一起完成整改车机功能的开发。车机系统中的控制芯片如MCU和SOC需要和各种控制的外设芯片进行交互控制,实现与外设芯片之间的通信交流。有的时候,MCU和SOC控制芯片需要同样的车身信息,若同时采集会造成控制芯片的资源浪费,因此MCU和SOC之间同样需要进行信息交互。设计中,通信交互一般都是具有时间间隔,以保证系统其它功能正常运行。虽然后期测试团队会对整机的功能测试,但是只会对显示屏上的按键以及显示的功能进行测试,该测试方式无法模拟极端情况,比如对错误通信信息的处理能力,无间隔通信压力测试等,并且某些外设芯片的通信只在芯片内部存在,并不会将接口在车机显示屏上进行显示,无法对底层驱动测试到位。

技术实现思路

[0003]本专利技术的目的在于,提供一种车机系统通信串口压力测试系统及方法,用以开发过程中发现车机程序对异常情况和极端情况的适应能力,开发出高可靠性的车机系统。
[0004]为解决上述技术问题,本专利技术的技术方案为:一种车机系统通信串口压力测试系统,测试时,车机系统通过MCU的串口引脚与外部PC机相连,软件方面其外部设备上还安装有供发送具体测试案例指令的上位机,MCU内部含有压力测试模块
[0005]MCU,用于接收调试串口发送的指令,对该指令进行CRC校验,若校验通过,则启动压力测试模块;若校验不通过或不具备进入压力测试状态,则拒绝启动压力测试模块;
[0006]压力测试模块,用于在启动后自动开启定时器,三分钟内未接收到上位机发送的具体测试案例指令,则退出压力测试模式;若三分钟内接收到具体测试案例指令,则判断压力测试模块类别及测试类型并进行解析,生成测试间隔和测试次数;
[0007]MCU根据测试类型、测试间隔和测试次数设置响应的时间间隔。
[0008]进一步地,在进行所述CRC校验后,若校验通过,生成四字节测试字,并对测试字各个bit位取反并返回,交互三次后,启动压力测试模块。
[0009]进一步地,所述判断测试模块型号及测试类型并进行解析,生成测试间隔和测试次数的具体过程为:
[0010]若测试模块为SOC且类型为MCU接收数据,则MCU需要向SOC转发完整的测试指令,通知SOC即将配合MCU展开串口压力测试;
[0011]若测试模块为外接设备模块,则MCU无需转发测试指令;
[0012]若测试模块为MCU与SOC之间的通信接口,则任意选择进行某一项测试或者全部测
试;
[0013]若测试类型为MCU发送数据,则MCU调用数据发送接口,数据包发送完毕后立即继续调用发送接口发送数据,直至数据包发送次数达到指令预设值,MCU数据发送完毕后,延时10ms发送测试结束指令给SOC,以确保SOC已将完成全部接收处理,SOC收到结束指令后,返回SOC收到的字节数,MCU同时将该消息转发给上位机,若收到的数据个数与指令发出的数据个数相同,则说明该类型的通信交互结果正常;
[0014]若测试类型为MCU接收数据,则MCU首先打开相应测试案例数据包的处理函数,然后转发测试指令,将测试次数、测试间隔以及数据包类型发送给SOC,SOC根据指令按照要求发送数据,发送完成后,延时10ms,SOC将结束指令发送给MCU,MCU将接受到的数据包信息,包括接收并解析出的正常次数以及异常次数上报到上位机,判断结果同上;
[0015]所述具体测试案例指令中的测试类型包含发送/接收单字节、发送/接收正常报文帧、同时发送/接收正常报文帧连续、发送/接收错误报文帧+正常报文帧、发送正常报文帧断续,即发送前半段数据后,延时5ms发送后半段数据;
[0016]所述指令中的数据间隔为无间隔和间隔时间,间隔时间以ms为单位;
[0017]所述指令中的传输次数为进行多少次传输,单位以万次为单位。
[0018]进一步地,在所述设置响应的时间间隔后,如果在测试过程中出现了异常,压力测试过程中通信停止,则MCU端直接通过调试串口发送超时状态,可结束测试,分析问题原因。
[0019]一种用于上述的车机系统通信串口压力测试系统的方法,包括以下步骤:
[0020]S1、MCU接收调试串口发送的指令,对该指令进行CRC校验,若校验通过,则启动压力测试模块;若校验不通过或不具备进入压力测试状态,则拒绝启动压力测试模块;
[0021]S2、启动压力测试模块后自动开启定时器,三分钟内未接收到上位机发送的具体测试案例指令,则退出压力测试模式;若三分钟内接收到具体测试案例指令,则判断压力测试模块类别及测试类型并进行解析,生成测试间隔和测试次数;
[0022]S3、MCU根据测试类型、测试间隔和测试次数设置响应的时间间隔。
[0023]进一步地,所述S1中CRC校验结果具体为:若校验通过,生成四字节测试字,并对测试字各个bit位取反并返回,交互三次后,启动压力测试模块。
[0024]进一步地,所述S2中判断压力测试模块类别及测试类型并进行解析,生成测试间隔和测试次数的过程具体为:
[0025]若测试模块为SOC且类型为MCU接收数据,则MCU需要向SOC转发完整的测试指令,通知SOC即将配合MCU展开串口压力测试;
[0026]若测试模块为外接设备模块,则MCU无需转发测试指令;
[0027]若测试模块为MCU与SOC之间的通信接口,则任意选择进行某一项测试或者全部测试;
[0028]若测试类型为MCU发送数据,则MCU调用数据发送接口,数据包发送完毕后立即继续调用发送接口发送数据,直至数据包发送次数达到指令预设值,MCU数据发送完毕后,延时10ms发送测试结束指令给SOC,以确保SOC已将完成全部接收处理,SOC收到结束指令后,返回SOC收到的字节数,MCU同时将该消息转发给上位机,若收到的数据个数与指令发出的数据个数相同,则说明该类型的通信交互结果正常;
[0029]若测试类型为MCU接收数据,则MCU首先打开相应测试案例数据包的处理函数,然
后转发测试指令,将测试次数、测试间隔以及数据包类型发送给SOC,SOC根据指令按照要求发送数据,发送完成后,延时10ms,SOC将结束指令发送给MCU,MCU将接受到的数据包信息,包括接收并解析出的正常次数以及异常次数上报到上位机,判断结果同上;
[0030]所述指令中的测试类型包含发送/接收单字节、发送/接收正常报文帧、同时发送/接收正常报文帧连续、发送/接收错误报文帧+正常报文帧、发送正常报文帧断续,即发送前半段数据后,延时5ms发送后半段数据;
[0031]所述指令中的数据间隔为无间隔和间隔时间,间隔时间以ms为单位;...

【技术保护点】

【技术特征摘要】
1.一种车机系统通信串口压力测试系统,测试时,车机系统通过MCU的串口引脚与外部PC机相连,软件方面其外部设备上还安装有供发送具体测试案例指令的上位机,MCU内部含有压力测试模块,其特征在于,MCU,用于接收调试串口发送的指令,对该指令进行CRC校验,若校验通过,则启动压力测试模块;若校验不通过或不具备进入压力测试状态,则拒绝启动压力测试模块;压力测试模块,用于在启动后自动开启定时器,三分钟内未接收到上位机发送的具体测试案例指令,则退出压力测试模式;若三分钟内接收到具体测试案例指令,则判断压力测试模块类别及测试类型并进行解析,生成测试间隔和测试次数;MCU根据测试类型、测试间隔和测试次数设置响应的时间间隔。2.根据权利要求1所述的一种车机系统通信串口压力测试系统,其特征在于,在进行所述CRC校验后,若校验通过,生成四字节测试字,并对测试字各个bit位取反并返回,交互三次后,启动压力测试模块。3.根据权利要求1所述的一种车机系统通信串口压力测试系统,其特征在于,所述判断测试模块型号及测试类型并进行解析,生成测试间隔和测试次数的具体过程为:若测试模块为SOC且类型为MCU接收数据,则MCU需要向SOC转发完整的具体测试案例指令,通知SOC即将配合MCU展开串口压力测试;若测试模块为外接设备模块,则MCU无需转发测试指令;若测试模块为MCU与SOC之间的通信接口,则任意选择进行某一项测试或者全部测试;若测试类型为MCU发送数据,则MCU调用数据发送接口,数据包发送完毕后立即继续调用发送接口发送数据,直至数据包发送次数达到指令预设值,MCU数据发送完毕后,延时10ms发送测试结束指令给SOC,以确保SOC已将完成全部接收处理,SOC收到结束指令后,返回SOC收到的字节数,MCU同时将该消息转发给上位机,若收到的数据个数与指令发出的数据个数相同,则说明该类型的通信交互结果正常;若测试类型为MCU接收数据,则MCU首先打开相应测试案例数据包的处理函数,然后转发具体测试案例指令,将测试次数、测试间隔以及数据包类型发送给SOC,SOC根据指令按照要求发送数据,发送完成后,延时10ms,SOC将结束指令发送给MCU,MCU将接受到的数据包信息,包括接收并解析出的正常次数以及异常次数上报到上位机,如果MCU接收到的正确数据包的个数与测试指令中下发的测试次数相同,则说明MCU接收数据功能正常;所述具体测试案例指令中的测试类型包含发送/接收单字节、发送/接收正常报文帧、同时发送/接收正常报文帧连续、发送/接收错误报文帧+正常报文帧、发送正常报文帧断续,即发送前半段数据后,延时5ms发送后半段数据;所述具体测试案例指令中的数据间隔为无间隔和间隔时间,间隔时间以ms为单位;所述具体测试案例指令中的传输次数为进行多少次传输,单位以万次为单位。4.根据权利要求1所述的一种车机系统通信串口压力测试系统,其特征在于,在所述设置响应的时间间隔后,如果在测试过程中出现了异常,压力测试过程中通信停止,则MCU端直接通过调试串口发送超时状态,可结束测试,分析问题原因。5.一种用于如权利要求1所述的车机系统通信串口压力测试...

【专利技术属性】
技术研发人员:胡颖杨玄康厚芹
申请(专利权)人:东风汽车集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1