历史上的今天
返回首页

历史上的今天

今天是:2024年11月25日(星期一)

正在发生

2019年11月25日 | 基于LabVIEW的通用数据采集卡的驱动

2019-11-25 来源:elecfans

介绍一种通过LabVIEW提供的Call Library Function Node实现对动态链接库(DLL)调用的方法,完成对通用数据采集卡的驱动,实现LabVIEW与通用数据采集卡的结合。?

Baoding 071003, China)


LabVIEW驱动通用数据采集插卡的方法有三种。

其一,直接用LabVIEW的Function模板内Advanced子模板的Port I/O图标编程,通过手动对基地址的设置,直接从特定的地址内存中读取数据。若采样速度要求不高,它是很方便直观的方法;其二,利用LabVIEW的Functions模板内Advanced子模板中CIN(Code Interface Node)图标,它适用于直接调用文字编程语言(如VC)所编写的代码。用CIN结点生成A/D驱动程序的子VI的方法可充分发挥A/D的高转换速度,获得高的采样速率。但编程较烦杂,不能由LabVIEW直接修改;其三,用LabVIEW的Functions模板内Advanced子模板中Call Library Function Node图标,动态链接数据采集卡的DLL库函数。DLL实际上是一个函数库,只在应用程序运行时DLL中的函数才被随时调用和连接。和静态连接库相比,DLL可以和其他应用程序共享库中的函数和资源。许多数据采集插卡生产商提供DLL库函数形式的驱动程序,用户可使用某种DLL链接库的编程工具,如VC、VB编写应用程序来调用它。同样,LabVIEW也提供了该功能,就是图标Call Library Function Node,放在Function模板内的Advanced子模板中,通过设置该节点来直接调用DLL。

在本研究系统中采用第三种方法,实现了在线切削力的数据采集。采用基于ISA总线的数据采集卡ACL-8111,DLL直接由生产厂家提供。


输入信号范围:±5V,±2.5V,±1.25V,±0.625V,±0.3125V(软件编程选择);最高采样频率:30kHz;触发模式:软件、在板可编程定时器或外触发;数据传输:程序控制、中断控制;IRQ级别:可编程IRQ2,3,4,5,6,7;通道数:8路单端通道。

本系统输入信号范围±5V,采样频率2000Hz,A/D数据转换触发模式采用在板可编程定时器触发,数据传输采用中断控制,中断级别设置为5,通道数为3,三个通道分别采集和传输获得X,Y、Z三向切削力。

待采集的模拟信号通过电荷放大器放大,根据预先设定选择不同的增益;输出的信号进行A/D转换,转换结束后,将12位转换结果自动存在数据寄存器中,然后通过中断控制将数据取出,送入计算机内存进行处理。在使用时,将采集卡直接插入计算机ISA插槽中,使用其预先设定的基地址220H。


推荐阅读

史海拾趣

ANYSOLAR LTD.公司的发展小趣事

随着ANYSOLAR的产品在市场上取得一定的成功,公司开始考虑市场拓展。李明带领团队深入调研国内外市场需求,发现欧洲市场对高效、环保的光伏材料有着巨大的需求。于是,ANYSOLAR开始积极寻求与国际企业的合作机会。

经过多次洽谈和协商,ANYSOLAR最终与一家欧洲知名光伏企业达成了战略合作协议。双方共同投资建立生产线,共同开拓市场。这一合作不仅为ANYSOLAR带来了稳定的订单和资金支持,也提升了公司的品牌知名度和国际影响力。

HEC Inc公司的发展小趣事

随着ANYSOLAR的产品在市场上取得一定的成功,公司开始考虑市场拓展。李明带领团队深入调研国内外市场需求,发现欧洲市场对高效、环保的光伏材料有着巨大的需求。于是,ANYSOLAR开始积极寻求与国际企业的合作机会。

经过多次洽谈和协商,ANYSOLAR最终与一家欧洲知名光伏企业达成了战略合作协议。双方共同投资建立生产线,共同开拓市场。这一合作不仅为ANYSOLAR带来了稳定的订单和资金支持,也提升了公司的品牌知名度和国际影响力。

Concurrent Logic公司的发展小趣事

Concurrent Logic公司的创立源于一群工程师对并行计算和逻辑设计的热爱。在公司成立初期,他们面临着巨大的挑战。由于资金有限,他们不得不在狭小的办公室内开始他们的创新之旅。初创团队的成员们夜以继日地工作,开发并优化他们的第一个产品——一款高性能的并行处理芯片。尽管条件艰苦,但他们的努力和热情为公司的未来奠定了坚实的基础。

3E SECURITY公司的发展小趣事

3E SECURITY公司自创立之初,便以技术创新为核心竞争力。在电子安全领域,公司不断投入研发,推出了一系列具有自主知识产权的安全产品。其中,一款智能安全监控系统凭借其高度集成和智能化特点,迅速在市场上占据了一席之地。通过不断的技术革新,3E SECURITY逐渐在电子安全行业树立了技术领先的形象,吸引了大量合作伙伴和客户的关注。

ABC [ABC Taiwan Electronics Corp]公司的发展小趣事

进入九十年代,ABC Taiwan Electronics Corp迎来了一次重要的发展机遇。公司成功研发出了一款具有创新性的电子连接器,凭借其高性能和稳定性,迅速在市场上获得了广泛认可。这一技术突破不仅为ABC带来了大量订单,也使其在电子连接器领域树立了领先地位。公司借此机会不断扩大生产规模,提升技术水平,逐渐成为了行业的佼佼者。

bb-smartworx公司的发展小趣事

进入新世纪,ABC Taiwan Electronics Corp面临着产业升级和技术创新的双重挑战。公司加大了对研发的投入,不断推出具有竞争力的新产品。同时,公司还引进了先进的生产设备和管理理念,提升了生产效率和产品质量。通过产业升级和技术创新,ABC成功应对了市场的变化和挑战,保持了稳健的发展态势。

问答坊 | AI 解惑

谁有点阵生成软件

我现在找了很久没找到一个点阵生成软件,我现在急需它,如果谁有能帮帮我吗?发我邮箱  lijianhuijgsdx@163.com   QQ535233725.非常感谢!!!!!!…

查看全部问答>

DSP的C语言心得记录-利用CCS分析DSP的时钟运行周期

分别用C语言和汇编语言进行程序设计,计算正弦函数值,并比较代码效率。 1)C语言编程 #include #define NX 180 //最大正弦角度 #define pi 3.14159 short i; double x[NX] //定义输入正弦角度数组(弧度值) double r[NX] //定义输出 ...…

查看全部问答>

ARM的中断处理和SWI参数问题

我现在知道的在ARM里软件中断(SWI call)是用来将模式转换成超级用户模式的(SVC mode) 然后用这两句话可以将SWI的参数储存在R0里面 LDR R0,[LR,#-4] BIC R0,R0, #0xFF000000 因为刚刚学习ARM, 现在我不理解的是这个SWI的参数到底可以用来干什么 ...…

查看全部问答>

求助:VS.NET 2008下WINCE模拟器 需要带网络连接功能

VS.NET 2008不像03提供了WINCE模拟器 求助 刚折腾了一个版本 不带网络功能 即希望在模拟器上可以配置IP PING通 这样可以测试一些访问MSSQL的程序 谢谢 不知道表达清楚了没有……汗…

查看全部问答>

流小驱动SRB.NumberOfPhysicalPages时钟为0

修改DDK中testcap 做的摄像头驱动,想使用DMA得到数据。DDK文档中说SRB的ScatterGatherBuffer就是作为DMA使用的,NumberOfPhysicalPages是其中的元素个数。但是我在生成图像的ImageSynth函数中得到的NumberOfPhysicalPages却始终为0.    ...…

查看全部问答>

NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0?

NandFlash块大小为16K,如果写一个不足16K的文件进去,是不是要把该块剩下的空间写成0?…

查看全部问答>

求助:WINCE触摸屏校准问题?

利用控制面板中的“校准”,校准后总是不能正常退出。串口打印提示 : M 474,507  507,520  33,13M 2061,1655  2099,1655  38,0Maximum Allowed Error 7: Maximum error 13325 exceeds calibration th ...…

查看全部问答>

如果采用USB<->1394 进行WinDbg调试

目标机是6芯的1394接口,本本只有USB接口,不知该如何设置WinDbg,有知道的DX请告知,谢谢。…

查看全部问答>

智能手机影响汽车信息娱乐

本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 苹果公司的iPhone把智能手机从专注于通讯的设备变成了以应用为中心的多用途移动平台,可以用于许多产业之中。据iSuppli公司,其它智能手机平台迅速跟进,纷纷增加了多点触控用户界面、应用开发 ...…

查看全部问答>

求助:zigbee两个测温节点总有一个为0

我设计的无限温度传感网络由一个路由设备和两个温度测量节点组成。两个测温节点的程序应该是一样的吧?我是通过长地址(IEEE地址)来在路由设备上区分两个节点的数据的,部分原代码如下:unsigned int current_temperature1 = 0;unsigned int curre ...…

查看全部问答>