基于CANoe_CAPL语言设计_车载网关控制器自动化测试工程之从INI文件读取配置参数

基于CANoe_CAPL语言设计_车载网关控制器自动化测试工程之从INI文件读取配置参数

从INI文件读取配置参数

1.从配置文件读取配置信息到变量中
主要使用的函数:
getProfileString : 获取字符串类型的配置信息 不需要变量接收
getProfileInt : 获取整型的配置信息 需要变量接收

2.获取测量的虚拟通道的数量以及虚拟通道的名称
从ini文件读取拟通道的数量以及虚拟通道的名称

3.获取每个网段的CAN名称赋值给变量

源码如下


//获取程控、示波器电源端口地址,用于电源及示波器初始化  PowerBuffer[] ScopeBuffer[]
    getProfileString("SpecParameter","PowerIO","aa", PowerBuffer, elcount(PowerBuffer),gProfilePathIOPort);
    write ("电源IO地址为 %s",PowerBuffer);
    putValue (Env_6700IOPort,PowerBuffer);
    //获取被测ECU的名称并输出write窗口
    getProfileString("Channel_Info","ECUName"," ", gDUTName, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("DUTName = %s",gDUTName);  //gDUTName = GW
   
    //获取测量的虚拟通道的数量
    //gDUTNetworkNum =getProfileInt("Channel_Info","NetworkNum",0,IniFilePath_ChannelInfo);
    // write("NetworkNum = %d",gDUTNetworkNum); //gDUTNetworkNum=2
    
    //获取网络对应DBC的Network Name
  if( getValue(Env_GWTestCan)==1&& getvalue(Env_GWTest_Bodybus)==1)
  {
    getProfileString("Channel_BodyBUS_IBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_BodyBUS_IBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if( getValue(Env_GWTestCan)==1&& getvalue(Env_GWTest_Bodybus)==2)
  {
    getProfileString("Channel_BodyBUS_ADASBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_BodyBUS_ADASBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if( getValue(Env_GWTestCan)==1&& getvalue(Env_GWTest_Bodybus)==3)
  {
    getProfileString("Channel_BodyBUS_EVBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_BodyBUS_EVBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if( getValue(Env_GWTestCan)==1&& getvalue(Env_GWTest_Bodybus)==4)
  {
    getProfileString("Channel_BodyBUS_TBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_BodyBUS_TBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if( getValue(Env_GWTestCan)==1&& getvalue(Env_GWTest_Bodybus)==5)
  {
    getProfileString("Channel_BodyBUS_CBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_BodyBUS_CBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==2&&getValue(Env_GWTest_IBUS)==2)
  {
    getProfileString("Channel_IBUS_ADASBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_IBUS_ADASBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==2&&getValue(Env_GWTest_IBUS)==3)
  {
    getProfileString("Channel_IBUS_EVBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_IBUS_EVBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==2&&getValue(Env_GWTest_IBUS)==4)
  {
    getProfileString("Channel_IBUS_TBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_IBUS_TBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==2&&getValue(Env_GWTest_IBUS)==5)
  {
    getProfileString("Channel_IBUS_CBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_IBUS_CBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if(getValue(Env_GWTestCan)==3 && getValue(Env_GWTest_ADASBUS)==3)
  {
    getProfileString("Channel_ADASBUS_EVBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_ADASBUS_EVBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==3 && getValue(Env_GWTest_ADASBUS)==4)
  {
    getProfileString("Channel_ADASBUS_TBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_ADASBUS_TBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==3 && getValue(Env_GWTest_ADASBUS)==5)
  {
    getProfileString("Channel_ADASBUS_CBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_ADASBUS_CBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
   if(getValue(Env_GWTestCan)==4 && getValue(Env_GWTest_EVBUS)==4)
  {
    getProfileString("Channel_EVBUS_TBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_EVBUS_TBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if(getValue(Env_GWTestCan)==4 && getValue(Env_GWTest_EVBUS)==5)
  {
    getProfileString("Channel_EVBUS_CBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_EVBUS_CBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  if(getValue(Env_GWTestCan)==5&&getValue(Env_GWTest_TBUS)==5)
  {
    getProfileString("Channel_TBUS_CBUS","Network1Name"," ", gNetwork1Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    getProfileString("Channel_TBUS_CBUS","Network2Name"," ", gNetwork2Name, elcount(gDUTName),IniFilePath_ChannelInfo);
    write("gNetwork1Name = %s",gNetwork1Name);
    write("gNetwork2Name = %s",gNetwork2Name);
  }
  
    getProfileString("Channel_Info","Network1_Channel"," ", Tempbuffer, elcount(Tempbuffer),IniFilePath_ChannelInfo);
    gNetwork1_CH = CANAPPToChannelNum(Tempbuffer);  //返回值1
    getProfileString("Channel_Info","Network2_Channel"," ", Tempbuffer, elcount(Tempbuffer),IniFilePath_ChannelInfo);
    gNetwork2_CH = CANAPPToChannelNum(Tempbuffer);//返回值2
    write("gNetwork1_CH = %d",gNetwork1_CH);
    write("gNetwork2_CH = %d",gNetwork2_CH);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车端域控测试工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值