网站地图| 免费获取|
教育资料网
  • 网站首页|
  • 资料范文|
  • 修改降重|
  • 职称资料|
  • 合作期刊|
  • 资料下载|
  • 计算机资料|
  • 外文翻译|
  • 免费资料|
  • 原创资料|
  • 开题报告资料
搜索

当前位置:教育资料网 -> 免费资料 -> 电子通信 -> 免费资料论文--基于网络的虚拟仪器测试系统(六)
自动化资料范文| 电子机电资料| 测控技术资料| 通信专业资料| 电气工程资料| 通信工程资料| 电子信息工程资料| 免费自动化资料| 免费电子资料| 免费电气资料| 免费通信资料

免费资料论文--基于网络的虚拟仪器测试系统(六)

免费资料论文--基于网络的虚拟仪器测试系统(六) 户的调制方式的判断,其中nID_Select_Modul保存的是用//户选择的调制方式的ID。通过GetCheckedRadioButton()函数获得。
    switch(nID_Select_Modul)//对用户通过单选按钮选择的调制参数的判断
    {  case IDC_RADIO_BW://无调制情况
       viPrintf(/*funcgen*/theApp.m_Session,"OUTPut:LOAD %s\n",m_nResistance);//输出端的设置
       viPrintf(/*funcgen*/theApp.m_Session,"OUTPut:SYNC %s\n",m_nSignal);//设置同步信号
 CheckWaveRadioButton();//这是一个自己定义的函数,对用户的波形的选择进行判断-将波形的字符串存储在m_nBaseShape中,该函数的具体代码将会在附录中给出。
//判断用户选择的波形是否是方波,并通过函数viPrintf来进行各种SCPI命令的执行
 if(GetCheckedRadioButton(IDC_RADIO_SIN,IDC_RADIO_DC)==IDC_RADIO_FWAVE)
  { viPrintf(/*funcgen*/theApp.m_Session,"FUNC %s\n",m_nBaseShape);
   viPrintf(/*funcgen*/theApp.m_Session,"FREQ %f\n",m_nFreq);
   viPrintf(/*funcgen*/theApp.m_Session,"VOLT %f\n",m_nAmpl);
   viPrintf(/*funcgen*/theApp.m_Session,"VOLT:OFFS %f\n",m_nOffs);
   viPrintf(/*funcgen*/theApp.m_Session,"FUNC:SQU:DCYC %f\n",m_nDcycle);
  }//判断用户选择的是否是任意波
 else if(GetCheckedRadioButton(IDC_RADIO_SIN,IDC_RADIO_DC)==IDC_RADIO_ARBI)
  {error=viPrintf(/*funcgen*/theApp.m_Session,"APPL:USER %f,%f,%f\n",m_nFreq,m_nAmpl,m_nOffs);
   if(error!=VI_SUCCESS)
   {error_handler(/*funcgen*/theApp.m_Session,error);
       break;} 
viPrintf(/*funcgen*/theApp.m_Session,"FUNC:USER%s\n",WaveForm.m_Arbitrary);
 }
 else
  {error=viPrintf(/*funcgen*/theApp.m_Session,"APPL:%s %f,%f,%f\n",m_nBaseShape,m_nFreq,m_nAmpl,m_nOffs);//这里的参数需要用户自己添加
         if(error!=VI_SUCCESS)
   { error_handler(/*funcgen*/theApp.m_Session,error);
       break;}}
MessageBox("Successfully!");//给一个提示框--明示用户的操作
     break; 
以上只是无调制情况下的输出代码,而调幅、调频等的实现代码将会在附录给给出。  
 对仪器的编程中,首先是先打开跟资源管理器的会话,然后通过资源管理器会话来进一步打开与某一台仪器的会话(会话也就是与仪器进行通讯,所有被使用的仪器都需要建立连接,并且都要调用VISA函数viOpenDefaultRM来打开资源管理器,这个函数会初始化VISA系统,包括资源管理系统;如果在没有器件连接的情况下调用该函数,则在有器件连接上时又进行一次操作,则连接的器件是不被认识的;你必须关闭所有的资源管理器会话,并重新的打开才行);当结束访问之后需要对会话进行清除操作,调用函数viClose对资源会话和其他会话进行关闭。该操作会把所有分配给指定会话的数据结构资源进行释放操作。上面给出的是在用户配置好各种参数后的执行代码。然而,在自己的界面的设计过程中也给出了一些配置信息,比如,频率,幅值,偏移,占空比(其中对占空比也做了特别的处理,因为占空比参数只适合于方波,所以在选中其他波形的时候需要对该参数进行屏蔽,以防止用户的输入)。当用户选择调制方式的时候,会弹出对话框以提供用户的输入操作:
 
 图3-10
可以看出在该界面中共有四种调制方式,也是最基本的调制方式。在弹出时,各个参数都有其初始值以方便用户。对于其中的数据的处理比较简单:通过VC的ClassWizard对界面中的各个控件进行变量的定义,以接收用户的数据的输入:

图3-11
在程序的编写过程中也遇到了一些问题:譬如,多个单选按钮如何组合在一起,实现真正的单选;当用户选中一个按钮之后,如何对用户的选择进行判断,以正确的执行用户所需要的执行指令;各个功能模块之间如何的进行协调的工作等等。就拿单选按钮的实现来说,因为我的基本波形的选择设想是通过用户的选择(单选)来进行的,这样的设计直观且美观,符合人们的操作习惯。但是应该如何去实现呢?通过查找书本上介绍的例子,首先进行一些测试例子。测试通过之后,再在程序中进行运用。但是也会遇上这样那样的一些问题:例子中能进行正确的执行,但是移植到自己的程序中就不行了。(不过,我想说的一点是有许多书籍的内容是很垃圾的,程序不完整不说,而且还误人子弟)。我现在遇到的问题就是,已经将单选按钮组合在一起了,也能实现单选了,可是,单击的波形,与设计的并不一样,也就是各个单选按钮之间的功能出现了紊乱。而且还出现了跟另外一组的单选按钮出现了冲突。当时我就有点懵了。怎么会出现这样的情况呢??思

首页 上一页 3 4 5 6 7 8 9 下一页 尾页 6/14/14

免费资料论文--基于网络的虚拟仪器测试系统(六)由教育资料网(www.jaoyuw.com)会员上传。
原创资料流程 相关资料
上一篇:免费资料论文--接入网网管解决方案 下一篇:免费资料论文--ATM综合接入系统
推荐资料 本专业最新资料
Tags:免费 资料论文 基于 网络 虚拟 仪器 测试系统 2010-03-19 10:38:38【返回顶部】
精彩推荐
发表资料

联系方式 | 资料说明 | 网站地图 | 免费获取 | 钻石会员 | 硕士资料


教育资料网提供资料范文,资料代发,原创资料

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 17304545@qq.com

Copyright@ 2009-2020 教育资料网 版权所有 湘ICP备19027999