求助 调用外部数据采集卡的问题
本帖最后由 midsatan 于 2009-11-17 19:09 编辑如果调用外部卡的话
通道地址是不是就不能用MAX来设置虚拟通道了?
还需要用到模拟AI READ等函数吗?
还有就是labview调用的驱动程序要怎么编啊
本人第一次做设计就需要用adlink的usbdaq-9100ms
找不到一点头绪
不知哪位前辈用过 可否告知 或有驱动程序发到midsatanchen@sina.com
谢谢 本帖最后由 midsatan 于 2009-11-15 00:40 编辑
/* CIN source file
*/
#include "c:\labview\cintools\extcode.h"
#include "conio.h"
typedef struct {
int32 dimSize;
float32 arg1;
} TD1;
typedef TD1 **TD1Hdl;
CIN MgErr CINRun(int32 *n, TD1Hdl xarray, int32 *ch);
CIN MgErr CINRun(int32 *n, TD1Hdl xarray, int32 *ch)
{
/* ENTER YOUR CODE HERE */
int base,i, ns,c;
uInt8 h,l;
float *xarrayElmtp;
ns=*n;/* 采样点数 */
c=*ch;/* 模入通道号*/
SetCINArraySize((UHandle)xarray,1,ns);
(*xarray)->dimSize=ns;
xarrayElmtp=(*xarray)->arg1;
base=0x100; /* 数据采集插卡基地址*/
_outp(base,c); /* 选择模入通道*/
for (i=0;i<ns;i++)
{
_outp(base+1,0);
/* 启动 A/D*/
do
{;}
while ((_inp(0x101)&0x01)!=0);
h=_inp(base+2);
l=_inp(base+3)&0xf0;
*xarrayElmtp=(h*16+l/16)/409.6-5.0;
xarrayElmtp++;
}
return noErr;
}
这个程序是熊焕庭写的 《在LabVIEW中驱动数据采集卡的三种方法》
用usbdaq-9100ms的话这个程序需要改吗? 不是NI卡不能用MAX 去看看版主的采集卡资料,学习还是不错。他的是调用 动态连接库http://www.cpubbs.com/bbs/viewthread.php?tid=18024&extra=page%3D1 谢谢啦但是我这里只有adlink的用
之前一直没弄过这个东西不知道如何调用驱动程序 http://www.cpubbs.com/bbs/thread-87529-1-1.html 那通道定址的话 如何处理? 怎么么人回答我啊 adlink的板卡不是附带驱动的吗?
LabVIEW中直接调用DLL就可以的吧? adlink 提供的光盘的软件包一项里有lv的驱动,安装后,启动LabWIEW就可以看见 User Libraries里,有集成好的函数vi,直接调用就可以了。在安装目录下还可以找到对应板卡的例程。 本帖最后由 midsatan 于 2009-11-19 23:02 编辑
谢谢啊!
好像有点懂了
是不是在程序中拖出调用库函数出来 调用usbdaq-dask。dll然后根据函数名的不同 其功能就不同有不同的输入输出端的功能吧?
不过好像没有在用户函数库中看到可能我这卡有点老吧04年的 安装 DAQ-LVIEW PnP,adlink光盘里有的。有独立的函数vi,
如果你的光盘也是早些年的话,可以去adlink网站下载的。 利用这种方法编程的话就是需要不断的调用dll选择不同功能函数吧吧? 不需要的,Adink的LV函数做得不错,你打开例程运行一下就知道了。 本帖最后由 midsatan 于 2009-11-23 09:45 编辑
哎adlink的网站好难打开啊
如果外接ni的调理模块的话需要对调理模块进行设置吗?
页:
[1]
2