当前位置:
工控论坛
> >
产品
>
工控机
>
数据采集与分析
我要发帖
使用双缓冲模式信号输出问题求教
点击:
789
| 回复:
3
林海孤叶
关注
私信
精华:2帖
求助:0帖
帖子:15帖 | 53回
年度积分:0
历史总积分:108
注册:2004年2月19日
发表于:2004-04-04 11:07:00
楼主
使用NI的PCI6110数据采集卡,使用双缓冲模式进行信号输出,当前半缓冲区满了后使用WFM_DB_Transfer()再取后半缓冲区的数据,可程序运行后发现,一开始估计也就三四个周期是输出整个BUFFER里的数据,而后只输出前半缓冲区的数据,这是怎么回事?
分享到:
收藏
邀请回答
回复楼主
举报
cki
关注
私信
精华:0帖
求助:0帖
帖子:3帖 | 2回
年度积分:0
历史总积分:11
注册:2002年9月19日
发表于:2004-04-04 22:36:00
1楼
觉得是transfer的速度比convert的速度慢造成的。这样经过几个周期后,就会出错。我估计时间再长点的话,输出又会变成只输出后半缓冲区的数据了。 建议先降低convert的速度看看输出如何。
回复
引用
举报
林海孤叶
关注
私信
精华:2帖
求助:0帖
帖子:15帖 | 53回
年度积分:0
历史总积分:108
注册:2004年2月19日
发表于:2004-04-05 22:16:00
2楼
的确,把频率降低后就好了,但我现在需要输出信号的频率要达到几十K,所以频率必须高,我把前半缓冲区和后半缓冲区的数据设成一样,如需输出一个正弦信号,则各放一个完整的正弦信号,则能够实现,不知这样是否规范。可提供的例子程序我试了下,不管频率多高,都没什么问题,它是使用了NIDAQMakeBuffer()函数来为缓冲区赋值。
回复
引用
举报
林海孤叶
关注
私信
精华:2帖
求助:0帖
帖子:15帖 | 53回
年度积分:0
历史总积分:108
注册:2004年2月19日
发表于:2004-04-07 20:59:00
3楼
但用双缓冲输出时频率不能提的很高,只能达到几百HZ,如高的话远WFM_DB_Transfer()就来不及导入数据了,这远远达不到我的要求, 使用单缓冲模式,也出现问题:[WFM_Check] returned NI-DAQ error –10608. No transfer is in progress for the specified resource 望高手指教!
回复
引用
举报
热门招聘
相关主题
求助:如何把程序灌到PLC
[1555]
模拟信号采集抗干扰问题
[1691]
工控机真适合网上下单么?研华...
[1934]
PXI总线规格简介(转)
[11790]
紧急寻求unix系统报价
[2047]
新一代自控系统解决方案
[3630]
组态和非组态
[1659]
谁要电气工程师手册
[8033]
请共同学习Qt+vs在工控上的应...
[1701]
工业控制计算机的发展现状与...
[7072]
官方公众号
智造工程师
客服
小程序
公众号