发明内容
本发明的目的是提供一种射频模块离线参数通用校准接口的实现方法,它是实现射频模块离线参数通用校准驱动接口,射频模块的改变不会引起校准终端代码的改变,同时对校准参数版本进行管控,离线参数版本可以配置,提高生产过程规范化和射频模块离线参数校准的一致性,从而提高生产效率和质量。
为达到上述目的,本发明的解决方案是:一种射频模块离线参数通用校准接口的实现方法,实现方法步骤为:
步骤1:利用驱动方法配置层中的驱动方法配置库的打开函数创建射频模块对象实例,与射频模块建立通讯连接对应关系;
在步骤1中,驱动方法配置库将射频模块连接字符串传递给驱动管理层中的驱动管理库,驱动管理库按照一定的协议格式分离连接字符串并识别出射频模块类型,再根据具体类型加载驱动实例层中的射频模块校准驱动实例库,然后利用驱动实例库中的打开函数创建射频模块离线参数校准对象实例,同时将射频模块离线参数校准对象实例句柄返回给上层;
步骤2:配置离线参数校准方法和离线校准参数,用以指明射频模块的离线校准所使用的方法和离线参数值;
步骤3:利用驱动方法配置库的创建方法函数创建射频模块离线参数校准驱动方法对象,创建离线参数校准方法入口;
步骤4:利用驱动方法配置库的设置方法的参数值函数配置离线参数校准驱动方法的输入参数,设置离线参数校准方法的入口参数;
步骤5:利用驱动方法配置库的运行函数执行离线参数校准驱动方法,启动自动校准进程;
步骤6:利用驱动方法配置库的获取输出参数值函数获取校准后的离线参数数据;
步骤7:将获取到的离线参数值导入校验模板中,校验模板将会自动作出结论,通过则显示PASS,否则显示FAIL;
步骤8:利用驱动方法配置库的释放函数释放驱动方法对象内存资源;结束自动校准进程,减少内存开销。
所述射频模块离线参数配置的通用平台由配置子模块提供,所述射频模块离线参数的数据和参数版本可配置。
所述射频模块离线参数校准驱动库的运行环境由校准子模块,所述校准子模块自动提取并识别校准参数版本信息。
所述驱动方法配置库采用软件工厂模式的设计思想,将射频模块离线参数校准的所有驱动方法按照标准的方式进行封装,为射频模块功放配置和校准子模块提供与射频模块通讯的通用接口,射频模块离线参数校准方法接口可见,方法选择配置。
所述驱动管理库为上层提供统一的接口,采用面向对象的设计思想,根据射频模块连接字符串自动分析和管理驱动实例库,动态创建射频模块校准驱动对象和方法,支持多个射频模块同时校准。
所述驱动实例库采用面向对象的设计思想,支持创建多个射频模块驱动对象,为上层提供统一的接口和一种射频模块离线参数校准的驱动方法实现过程。
所述射频模块离线参数校准由射频模块离线参数校验模板提供一个通用的校准模板,该校准模块包括离线参数配置表和校验模板,能快速检验离线参数并给出判断结果。
所述射频模块离线参数校准时的原始数据由离线参数配置表保存,校验模板保存射频模块的写入离线参数数据,校验模板自动检查离线参数数据并给出检验结果。
所述驱动方法配置库、驱动管理库、驱动实例库都是*.dll文件。
本发明的优点如下:
1、屏蔽射频模块离线个数、校准位置、算法之间的差异,为所有的射频模块离线参数校准提供统一的接口。
2、实现自动校准,减少人为判断误差影响,提高校准数据的可信度。
3、统一校准参数输入与输出接口,提高生产过程的标准化,对校准参数版本进行管控,提高射频模块离线参数校准的一致性,提高生产效率和产品质量。
4、校准方法可以选择,可实现多种校准方法并存,为二次开发降低门槛。
5、离线参数校验模板制作简单,降低校准数据的校验难度。
具体实施方式
见图1、图4所示,一种射频模块离线参数通用校准驱动库实现方法,在一个具有配置终端、校准终端、离线参数校验模板、射频模块、通用测试卡中,
a一种射频模块离线参数通用校准驱动库主要分为四层:层次结构见图2所示。驱动方法配置层为配置终端和校准终端提供一些基本API驱动方法接口;驱动管理层负责装载驱动实例库和智能管理驱动实例库;驱动实例层主要提供射频模块的驱动代码,主要通过RS232接口来驱动通用测试卡,再由通用测试卡驱动射频模块;物理层主要包括通用测试卡、射频模块、为射频模块提供电源的直流电压和一些附件。驱动方法配置库位于驱动方法配置层中;驱动管理库位于驱动管理层中;驱动实例库位于驱动实例层中。
b、在配置终端配置射频模块离线参数名称、离线参数校准方法和离线参数值。
c、在配置终端的生产工艺流程中配置离线参数名称。
d、校准终端根据射频模块的站点加载离线参数名称,将离线参数名称和校准方法传递给通用校准驱动库。
在步骤a中,驱动方法配置库、驱动管理库、驱动实例库都是*.dll文件。
在步骤d中,会完成射频模块的初始化,在驱动方法配置库中将会生成一个射频模块容器,用于管理射频模块句柄;在校准驱动管理库中生成一个射频模块校准驱动库管理容器,用来管理射频模块校准驱动库实例库和射频模块驱动方法入口地址。
1、ATML方法库(驱动方法配置库)为了达到统一仪器模块驱动方法接口的目的:采用对象工厂的设计思路,主要包括五部分:定义驱动方法基类;定义从基类派生出仪器模块驱动方法的派生类(相当于工厂中的产品模型);方法工厂;方法产生器;外部访问驱动方法的API接口函数。
a在步骤1中所述的仪器模块驱动方法基类的成员主要包括;
a)函数参数设置结构体
{
参数名称;
参数类型;
参数个数;
参数值;
参数单位;
}
b)输入参数容器<函数参数设置结构体>
c)输出参数容器<函数参数设置结构体>
d)设置输入参数(输入参数容器)
e)获取输入参数(输入参数容器)
f)设置输出参数(输出参数容器)
g)获取输出参数(输出参数容器)
h)运行
i)初始化
b在步骤1中所述的访问驱动方法的对外API接口函数主要包括;
a)打开(
仪器模块类型号,
仪器模块连接字符串,
仪器模块句柄
)
b)关闭(仪器模块类型号,仪器模块连接字符串)
c)获取所有的驱动方法名称(方法名称,方法个数)
d)获取一类仪器模块驱动方法名称(仪器模块类型号,方法名称,方法个数)
e)创建一个方法(方法名称,方法句柄)
f)释放一个方法(方法句柄)
g)设置一个方法的功能描述语(方法句柄,功能描述语)
h)获取一个方法的功能描述语(方法句柄,功能描述语)
i)获取一个方法的输入参数个数(方法句柄,输入参数个数)
j)获取输入参数的详细信息(
方法句柄,
输入参数索引号,
输入参数名称,
输入参数类型,
输入参数个数,
输入参数值,
输入参数单位
)
k)设置输入参数值(方法句柄,输入参数索引号,输入参数值)
l)获取输出参数个数(方法句柄,输出参数个数)
m)获取输出参数的详细信息(
方法句柄,
输出参数索引号,
输出参数名称,
输出参数类型,
输出参数个数,
输出参数值,
输出参数单位
)
n)运行一个方法(方法句柄)
在步骤1中所述的方法工厂采用“可伸缩工厂”的基本设计,每次添加一个新的“仪器模块驱动方法派生类”时,不必修改它的的代码。将仪器模块驱动方法工厂职能划分清楚,每个新的“仪器模块驱动方法”都必须对工厂注册,并将“驱动方法标识”和“生成函数的指针”传递给它。通常生成函数只有一行,大致像这样:
BaseClass*CreateDeviceMethod()
{
return new DeviceMethod
}
2、ATML方法库(驱动方法配置库)为了达到仪器模块驱动方法可见、选择配置的目的:采用泛型设计,声明一个Map容器用来保存所有被注册过的仪器模块驱动方法名称。
3、ATML方法库(驱动方法配置库)为了达到校准方法可配置目的,在ATML方法库中对外提供一个“获取校准方法”的API函数接口。
4、校准驱动方法管理库采用面向对象设计,根据校准终端的射频模块连接字符串,通过微软Microsoft的装载库LoadLibrary函数来装载射频模块校准驱动实例库,并注册校准驱动库管理Map,并将“校准驱动库名称”、“驱动库句柄”和“射频模块句柄”传递给它。
5、一种射频模块离线参数通用校准接口的实现方法,实现方法步骤为:
步骤1:利用驱动方法配置层中的驱动方法配置库的打开函数创建射频模块对象实例,与射频模块建立通讯连接对应关系;
在步骤1中,驱动方法配置库将射频模块连接字符串传递给驱动管理层中的驱动管理库,驱动管理库按照一定的协议格式分离连接字符串并识别出射频模块类型,再根据具体类型加载驱动实例层中的射频模块校准驱动实例库,然后利用驱动实例库中的打开函数创建射频模块离线参数校准对象实例,同时将射频模块离线参数校准对象实例句柄返回给上层;
步骤2:配置离线参数校准方法和离线校准参数,用以指明射频模块的离线校准所使用的方法和离线参数值;
步骤3:利用驱动方法配置库的创建方法函数创建射频模块离线参数校准驱动方法对象,创建离线参数校准方法入口;
步骤4:利用驱动方法配置库的设置方法的参数值函数配置离线参数校准驱动方法的输入参数,设置离线参数校准方法的入口参数;
步骤5:利用驱动方法配置库的运行函数执行离线参数校准驱动方法,启动自动校准进程;
步骤6:利用驱动方法配置库的获取输出参数值函数获取校准后的离线参数数据;
步骤7:将获取到的离线参数值导入校验模板中,校验模板将会自动作出结论,通过则显示PASS,否则显示FAIL;
步骤8:利用驱动方法配置库的释放函数释放驱动方法对象内存资源;结束自动校准进程,减少内存开销。
所述射频模块离线参数配置的通用平台由配置子模块提供,所述射频模块离线参数的数据和参数版本可配置。
所述射频模块离线参数校准驱动库的运行环境由校准子模块,所述校准子模块自动提取并识别校准参数版本信息。
所述驱动方法配置库采用软件工厂模式的设计思想,将射频模块离线参数校准的所有驱动方法按照标准的方式进行封装,为射频模块功放配置和校准子模块提供与射频模块通讯的通用接口,射频模块离线参数校准方法接口可见,方法选择配置。
所述驱动管理库为上层提供统一的接口,采用面向对象的设计思想,根据射频模块连接字符串自动分析和管理驱动实例库,动态创建射频模块校准驱动对象和方法,支持多个射频模块同时校准。
所述驱动实例库采用面向对象的设计思想,支持创建多个射频模块驱动对象,为上层提供统一的接口和一种射频模块离线参数校准的驱动方法实现过程。
所述射频模块离线参数校准由射频模块离线参数校验模板提供一个通用的校准模板,该校准模块包括离线参数配置表和校验模板,能快速检验离线参数并给出判断结果。
所述射频模块离线参数校准时的原始数据由离线参数配置表保存,校验模板保存射频模块的写入离线参数数据,校验模板自动检查离线参数数据并给出检验结果。
6、离线参数校准驱动方法被封装于校准驱动实例库中,校准驱动实例库采用面向对象设计思想,采用RS232接口通讯,通过RS232接口来发送和接收指令,对外提供标准的射频模块校准API接口函数。
a在步骤5中所述的射频模块校准API接口主要包括;
a)打开并初始化设备
b)关闭设备
c)往设备中写校准数据
d)从设备中读取校准数据
7、离线参数校验模板的开发采用Microsoft的Excel工作表平台,开发难度低。校验模板的具体格式参图3。
此发明不仅适合于射频模块离线参数校准驱动库,也适合于其他产品离线参数校准驱动库。