加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

cvi编程相关基础

(2012-03-08 21:00:27)
标签:

cvi

it

cvi编程相关基础  

1. 控件的事件响应模式
    a. 正常模式   Noraml
    b. 指示       Indicator
    c. 热键       Hot
    d. 确认模式   Validate

2. .uir 用户界面资源文件

3. 利用CVI开发的基于Windows下的测试程序的主要代码都是在消息回调函数中完成的, 只要在自动生成的程序框架中添加消息处理代码即可

   if (InitCVIRTE(0, argv, 0) == 0)   //out of memory
      return (-1);

   RunUserInterface ();
   int CVICALLBACK;

   主函数: main ()
           WinMain ()
           DllMain ()
    每一个 Lab Windows/CVI自动生成的程序主函数中, 首先进行Lab Windows/CVI 引擎的初始化, 初始化成功则返回0. 否则退出程序.
    if (InitCVIRTE(0, argv, 0) == 0) //Initialize CVI
      return (-1); //out of memory
    只有可执行程序或标准模块在外部编辑器中连接进才需要初始化CVI引擎, 在Lab Windows /CVI下开发环境启动时会自动初始化CVI引擎

6. 不同主函数, CVI引擎的调用方式
    a. int main (int argc, char *argv[])
          {
             if(InitCVIRTE (0, argv, 0) == 0)
                 return -1;
             //your other code
             return 0;
          }
   
    b. int __stdcall WinMain (HINSTANCE hInstance,
                              HINSTANCE hPrevInstance,
                              LPSTR lpszCmdline,
                              int nCmdShow)
          {
              if (InitCVIRTE (hInstance, 0, 0) == 0)
              return -a;
              //your other code
              return 0;
           }

    c. DllMain 是建立动态库工程中的主函数
       int __stdcall DllMain (void *hinstDll, int fdwReason,
                              void *lpvReserved)
       {
           if (fdwReason == DLL_PEDCESS_ATTACH)
              {
                 if (InitCVIRTE (hinstDLL, 0, 0) == 0)
                     return 0;
                 // your other code;
              }
            else if (fdwReason == DLL_PRDCESS_DETACH)
              {
                 //your other code;
                 CloseCVIRTE ();
              }
            return 1;
       }

7. RunUserInterface ()函数
    作用: 运行用户界面并且开始用户界面的消息循环, 直到回调函数中调用了 QuitUserInterface () 函数从消息循环中退出. RunUserInterface 返回值就是QuitUserInterface的输入参数, 以确定其运行状态.

9. 所有绘图工具按钮公用一个回调函数Draw, 在回调函数中只要判断消息来自于哪个控件按钮即可.

cvi编程相关

1. sprintf (buf, "%6.2f", mean);
   SetCtrlVal (panelHandle, PANEL_MEAN, buf);

2. 在交互式运行窗口可单独调试C语句
   Windows-> Interactive Execution

3. 交互式开发环境卫生scanf 和 sprintf 函数的头文件ansi_c.h

4. 程序的断点只能设置在可执行程序行, 否则弹出断点无效的提示信息. 断点调试的功能不适用于存在定时器或对时间要求严格的测试过程, 这种情况下的调试必须使用其它的手段或在程序中仿真处理.

5. Windows-> Variable, 则弹出显示变量信息的窗口.

6. Windows-> Watch 观察变量
   Edit-> Add Watch Expresion 添加观察变量的对话框, 变量观察窗口中不能改变变量的值.

CVI用户界面编程
1. 弹出式对话框函数

ConfirmPopup    确认, 只有0和1返回值
DirSelectPopup 路径选择
FileSelectPopup 文件选择
FontSelectPopup 字体选择
GenericMessagePopup 一般消息对话框, 返回按键的按钮ID号, 可以保存用户响应信息
MessagePopup    简单消息对话框
MultiFileSelectPopup 多文件选择
PromptPopup     简单对话框, 可以保存用户响应信息
WaveformGraphPopup 各种曲线的快速弹出式对话框
XgraphPopup
XYGraphPopup

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有