在调用配方命令时,会执行内部数据访问。根据设备类型,这需要数毫秒时间。确认这些调用未由 MAST 任务或未由具有已配置看门狗的任务或实时任务执行。此操作有可能导致某个应用程序错误,并且控制器将进入 HALT 状态。
请注意在每次修改配方时,通过选项自动保存修改到配方文件也会执行文件访问。如果配方的存储由应用程序触发,则停用该选项。
配方命令可具有以下返回值:
返回值 |
描述 |
---|---|
ERR_NO_RECIPE_MANAGER_SET |
控制器上没有可用配方管理器。 |
ERR_RECIPE_DEFINITION_NOT_FOUND |
配方定义不存在。 |
ERR_RECIPE_ALREADY_EXIST |
配方已存在于配方定义中。 |
ERR_RECIPE_NOT_FOUND |
配方未存在于配方定义中。 |
ERR_RECIPE_FILE_NOT_FOUND |
配方文件不存在。 |
ERR_RECIPE_MISMATCH |
配方文件的内容与当前配方不匹配。 注意: 该返回值仅会在存储类型是文本并且文件中的变量名称与配方定义中的变量名称不匹配时生成。未载入配方文件。 |
ERR_RECIPE_SAVE_ERR |
无法通过写入权限打开配方文件。 |
ERR_FAILED |
操作不成功。 |
ERR_OK |
操作成功。 |
该方法可在指定的配方定义中新建配方,并在此后将控制器的值读入新配方。在结束时,新配方将保存在默认文件中。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_ALREADY_EXIST, ERR_FAILED, ERR_OK
该方法可在指定的配方定义中新建配方,并在此后将控制器的值读入新配方。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
该方法可从配方定义删除配方。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
该方法可从配方删除缺省配方文件。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_FILE_NOT_FOUND, ERR_OK
该方法可从缺省配方文件加载配方并在此后将配方写入控制器变量。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_FILE_NOT_FOUND, ERR_RECIPE_MISMATCH, ERR_FAILED, ERR_OK
该方法可从指定配方文件加载配方并在此后将配方写入控制器变量。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
FileName: |
文件的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_FILE_NOT_FOUND, ERR_RECIPE_MISMATCH, ERR_FAILED, ERR_OK
该方法可从缺省配方文件加载配方。缺省配方文件名为 <配方>.<配方定义>.<配方扩展名>。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_FILE_NOT_FOUND, ERR_RECIPE_MISMATCH, ERR_FAILED, ERR_OK
该方法将控制器值读入配方,并在此后将配方存储在缺省配方文件中。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_SAVE_ERR, ERR_FAILED, ERR_OK
该方法将控制器值读入配方,并在此后将配方存储在指定的配方文件中。将会覆盖现有文件的内容。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
FileName: |
文件的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_SAVE_ERR, ERR_FAILED, ERR_OK
该方法可将配方保存到缺省配方文件中。将会覆盖现有文件的内容。缺省配方文件名为 <配方>.<配方定义>.<配方扩展名>。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_RECIPE_SAVE_ERR, ERR_FAILED, ERR_OK
该方法将控制器值读入配方。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
该方法将配方写入控制器变量。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName: |
配方的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
该方法可从文件系统重新加载配方列表。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_FAILED, ERR_OK
该方法从相应的配方定义返回配方数目。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
返回值:-1 :,如果未找到配方定义。
该方法从相应的配方定义返回配方名称。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
pStrings : |
应当在其中保存配方值的字符串 |
iSize : |
字符串数组的大小 |
iStartIndex : |
起始索引;可用于滚动功能 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_FAILED, ERR_OK
示例:
有 50 个配方。要创建一次显示 10 个配方名称的表格,可定义字符串数组:
strArr: ARRAY[0..9] OF STRING;
与 iStartIndex 对应,可从特定区域读取配方名称。
iStartIndex := 0;
返回名称 0...9。
iStartIndex := 20;
返回名称 20...29。在本例中:
iSize := 10;
该方法从相应配方返回配方变量值。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName |
配方的名称 |
pStrings : |
要在其中保存配方值的字符串 |
iSize : |
字符串数组的大小 |
iStartIndex : |
起始索引;可用于滚动功能 |
iStringLength : |
数组中字符串的长度 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
示例:
有 50 个配方。要创建一次显示 10 个配方名称的表格,可定义字符串数组:
strArr: ARRAY[0..9] OF STRING;
与 iStartIndex 对应,可从特定区域读取配方名称。
iStartIndex := 0;
返回值 0...9。
iStartIndex := 20;
返回值 20...29。在本例中:
iStringLength := 80;
iSize := 10;
该方法返回相应配方的变量名称。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName |
配方的名称 |
pStrings : |
应当在其中保存配方值的字符串 |
iSize : |
字符串数组的大小 |
iStartIndex : |
起始索引;可用于滚动功能 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
示例:
有 50 个配方。要创建一次显示 10 个配方名称的表格,可定义字符串数组:
strArr: ARRAY[0..9] OF STRING;
与 iStartIndex 对应,可从特定区域读取配方名称。
iStartIndex := 0;
返回名称 0...9。
iStartIndex := 20;
返回名称 20...29。在本例中:
iSize := 10;
该方法将配方值设置到相应配方中。
参数 |
描述 |
---|---|
RecipeDefinitionName: |
配方定义的名称 |
RecipeName |
配方的名称 |
pStrings : |
应当在其中保存配方值的字符串 |
iSize : |
字符串数组的大小 |
iStartIndex : |
起始索引;可用于滚动功能 |
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_RECIPE_DEFINITION_NOT_FOUND, ERR_RECIPE_NOT_FOUND, ERR_FAILED, ERR_OK
示例:
有 50 个配方。要创建一次显示 10 个配方名称的表格,可定义字符串数组:
strArr: ARRAY[0..9] OF STRING;
与 iStartIndex 对应,可从特定区域读取配方名称。
iStartIndex := 0;
设置值 0...9。
iStartIndex := 20;
设置值 20...29。在本例中:
iStringLength := 80;
iSize := 10;
该方法返回上次检测到的之前操作的错误。
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_OK
该方法将上次检测到的错误复位。
返回值:ERR_NO_RECIPE_MANAGER_SET, ERR_OK