想用VC编写一个读取采集卡采集的数据的程序,采集卡的SDK已经有了。采集卡的最高采集频率是500k
以前用VC编的定时器用的都是OnTimer()函数,但是这个函数最小只有55ms的时间间隔。
请问在VC程序控制采集卡时如何控制频率,使其满足需要的采样率?谢谢!

解决方案 »

  1.   

    我用的是USB的GPIB卡,PCI卡应该差不多,采集电压和电流要外接数字电表;根据电表提供的资料选择语言吧,不过一般都会提供vb和vc的库文件和头文件,vb比较容易学
      

  2.   

    你好,我使用的是PCI的卡,文件提供的都挺全,我就是不知道这个采集频率怎么处理
      

  3.   

    这个是如果你开个线程全循环读等待或读卡,那么CPU100%,其他的数据处理运算,绘图,就无法操作了,windows是多线程操作系统,你总得留点时间给系统分配给其他操作吧。。
      

  4.   

    其实多线程并不是完全占有CPU,而是根据分配给每个进程或线程的时间片来运行相应的进程或线程,决不会出现你担心的CPU100%的占用.另外,你应该一次读也所有的数据,然后显示最后的数据,也可以按顺序显示所有的数据,但因为人眼的视觉200毫秒的暂停,你实际上可以识别的是最后的一个数据,因此你完全可以不用显示以前的数据,只要显示最后一个数据就行了,但数据列表里一定要显示所有的数据,不能只显示接收的最后一个数据,不然就是丢数据了,图形显示可以显示最后一个数据
      

  5.   

    楼主的采集卡是什么牌子的?我用过凌华的pci卡。
    采集频率110khz。用的是double buffer处理方法。
    你要是在南京的话,我可以跟你交流下。
      

  6.   

    可惜我是在北京,用的凌华DAQ-2005,采集频率500k