gaojunfang 发表于 2008-8-25 22:46:38

关于数据采集的问题

各位前辈,晚辈对labview学的不深,知识面也比较窄,还请各位前辈指点。
问题是这样的:我们要做个数据采集系统,采集电压信号,下位机用dsp自行设计一个采集卡,上位机部分利用labview设计一个虚拟示波器,对采集的信号进行显示分析。现在这两部分做的差不多了,可就是通信这里有点头痛,因为想利用pci接口把采集的数据传上来,对于非ni的卡一般都要调用dll,而且我们这个卡是自己设计的,dll也是自己写,那么通信这里是不是针对pci接口调用一次dll就可以了呢,还是要做其他的工作,或者我的理解有误呢?先多谢了

cpubbs 发表于 2008-8-25 23:07:18

兄弟可以问问做这个DLL的人,因为他对这里的处理最熟悉了,如果他什么都弄好了,可以最简单做到一个函数节点搞定所有处理,直接输出的,关键看它的DLL如何做的!好运!

gaojunfang 发表于 2008-8-26 15:48:49

可这个dll是由我来写的,所以有点头疼,不过非常感谢cpubbs大哥,我知道下来该怎么去做了。还有就是,我不是兄弟,是丫头,嘿嘿!

gaojunfang 发表于 2008-9-6 10:05:36

cpubbs大哥听说你写过驱动,我这几天正看关于这方面的资料呢,感觉好难啊,我在一本书里看到这样的关系:
上层管理软件
   ↓ ↑
中间层Dll
      ↓
底层驱动程序
   ↓
PCI设备硬件
你能给我解释一下中间层DLL和底层驱动程序之间有什么样的关系吗?我以前的理解是底层驱动程序在VC的环境下就可以生成dll,二者几乎是等价的,可看到这个似乎又有些糊涂了,虽然这不是关于labview方面的,可对我来说有点关系,希望前辈们能给与回答,先多谢了!

gaojunfang 发表于 2008-9-7 19:16:20

还有我们看了相关的一些资料,sys文件是运行在ring0级上的,而dll是运行在ring3级上的,我们用DriverWorks的向导生成的驱动程序的框架,含有四个工程:一个驱动程序工程,一个应用程序工程和两个dll工程,那么我们在labview中调用的是不是这两个dll工程?还有这个应用程序工程是什么呢?我们的应用程序应该是labview啊,为何会有这个应用程序工程,它是不是用来和驱动程序通信的?另外生成的dll里面有好多的函数,我们是不是只选择与上位机相关的信号采集部分的函数呢?这些函数如果要labview中调用,是不是前面加__declspec(dllexport),如果不加是要生成def文件的,那这个def文件应该怎么生成呢?是手动加的吗?
问题比较多,呵呵!可能是自己太笨了吧,好多都没搞懂,看了相关的资料,可还是不能理解,所以希望前辈们能给与指点,谢谢了!

gaojunfang 发表于 2008-9-7 19:36:29

还有最后两个问题,一般LabVIEW只能调用C接口函数的DLL,而我们这个驱动程序用DriverWorks向导生成的是一些C++代码啊,这该怎办呢?是不是要进行一些相应的转化,怎么转化呢?还有DLL动态库分隐式链接和显式链接,显示连接比较复杂,那我们这个自己做的卡应该用哪一个呢?

cpubbs 发表于 2008-9-8 09:36:37

找一下这款芯片的相关的资料,很多芯片它自身的生产商有配一些信息的!比如有提供一些范例,这个是最好的参考资料!
页: [1]
查看完整版本: 关于数据采集的问题