【技术实现步骤摘要】
多微波源板卡的控制方法及系统
[0001]本专利技术涉及微波源板卡控制
,具体地说是多微波源板卡的控制方法及系统。
技术介绍
[0002]微波源是指产生微波能量的装置称为微波源。不同的应用场景,需要不同频率和不同功率的微波能量。有连续波源、也有脉冲调制波源;有用磁控管、也有用微波晶体管来产生微波振荡。对微波源的要求是输出功率和频率的稳定性。
[0003]通常用户在Windows上安装微波源设备驱动程序后,利用微波源厂商所提供的的LOmoduleDll.dll动态链接库,调用PXI_FindDev()接口,进行微波源设备的查找,并执行LOModule_Init()来进行设备的初始化,最后利用接口LOModule_SetFreq()和LOModule_SetPower()进行微波源功率和频率的参数设置。然而当机箱存在多个微波源板卡时,用户在应用层无法指定相应槽位的微波源进行操作,导致设备运行状态紊乱。
[0004]如何实现多个微波源板卡的控制,是需要解决的技术问题。
技术实现思路
[0005]本专利技术的技术任务是针对以上不足,提供多微波源板卡的控制方法及系统,来解决如何实现多个微波源板卡的控制的技术问题。
[0006]第一方面,本专利技术的多微波源板卡的控制方法,包括如下步骤:
[0007]基于上层软件下发的指定槽位号,通过底层库打开对应的微波源板卡,并基于所述微波源板卡的设备标识创建一个板卡号,所述板卡号作为所述微波源板卡的标识;
[0008]基于上层软件 ...
【技术保护点】
【技术特征摘要】
1.多微波源板卡的控制方法,其特征在于包括如下步骤:基于上层软件下发的指定槽位号,通过底层库打开对应的微波源板卡,并基于所述微波源板卡的设备标识创建一个板卡号,所述板卡号作为所述微波源板卡的标识;基于上层软件下发的指定槽位号,通过底层库从机箱查找指定槽位号对应的微波源板卡作为目标板卡,并返回机箱的设备信息,所述设备信息包括设备数量和设备地址;通过底层库调用目标板卡自身的设备初始化接口,通过设备初始化接口对目标板卡进行设备初始化,包括对目标板卡的资源地址、设备句柄以及错误信息进行参数初始化,所述资源地址为所述微波源板卡的设备文件路径,所述设备句柄为设备操作参数,所述错误信息用于报错并展示错误;通过底层库为所述目标板卡创建一个哈希项,所述哈希项的键值为所述目标板卡的板卡号,所述哈希项的值为所述目标板卡的设备句柄,将所述哈希项插入配置于底层库的哈希表中,并将目标板卡的板卡号返回上层软件;基于上层软件下发的指定槽位号,通过底层库查找对应的哈希项,并获取对应的设备句柄,基于所述设备句柄对指定槽位号对应的微波源板卡进行设备设置操作。2.根据权利要求1所述的多微波源板卡的控制方法,其特征在于所述上层软件通过web界面下发指定槽位号以及获取对应微波源板卡的板卡号。3.根据权利要求1所述的多微波源板卡的控制方法,其特征在于所述底层库中配置有上层接口,调用所述上层接口打开指定槽位号对应的微波源板卡,并基于所述微波源板卡的设备标识创建一个板卡号;所述上层接口配置有open_resource()函数,参数slot为微波源板卡对应槽位号。4.根据权利要求1所述的多微波源板卡的控制方法,其特征在于所述底层库中配置有初始化接口,通过初始化接口调用所述设备初始化接口;所述设备初始化接口为配置有LOModule_Init函数的LOModule_Init接口,由微波源板卡自身的出厂商配置;所述初始化接口包括python驱动的initDev接口以及C库的DLL_PXI_initDev接口,所述底层库调用python驱动的initDev接口,并调用C库的DLL_PXI_initDev接口,通过DLL_PXI_initDev接口调用所述LOModule_Init;LOModule_Init函数中,参数DataFilePath为资源地址,参数index为目标板卡的办卡号,参数LoHandle为设备句柄,参数g_strErrMsg为错误信息。5.根据权利要求1所述的多微波源板卡的控制方法,其特征在于所述动态库利用开源的uthash C代码、malloc动态创建哈希表项,并同调用接口HASH_ADD_INT()将所述哈希表项插入到哈希表中。6.根据权利要求1所述的多微波源板卡的控制方法,其特征在于基于上层软件下发的指定槽位号,通过底层库查找对应的哈希项,并获取对应的设备句柄,基于所述设备句柄对指定槽位号对应的微波源板卡进行设备设置操作,包括如下步骤:通过底层库将槽位号转换为对应微波源板卡的键值;通过底层库的HASH_FIND_INT接口查找哈希表中所述键值对应的哈希项,并从哈希项中获取对应的设备句柄;通过底层库调用LOModule_SetFreq接口进行输出频率设置,LOModule_SetFreq接口中
配置有LOModule_SetFreq函数,LOModule_SetFreq函数中参数LoHandle为设备句柄、参数dFreqMHz为期望设置的频率大小、参数g_strErrMsg为错误信息;和/或,通过底层库调用LOModule_SetPower接口进行输出功率设置,LOModule_SetPower接口中配置有LOModule_SetPower函数,LOModule_SetPower函数中参数LoHandle为设备句柄、参数dPower为期望设置的功率大小、参数g_strE...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。