急呀,数据采集问题!! 点击:641 | 回复:1



别有用心

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:23帖 | 5回
  • 年度积分:0
  • 历史总积分:81
  • 注册:2003年5月17日
发表于:2003-10-29 10:24:00
楼主
我用研华的PCI1711采集模拟信号,按照所给例程,现在已经实现了信号的采集,但还有一事不明白:    比如说用中断方式,从信号采集到数据传至内存中,具体如何运作的,还不太清楚,请高人指点一下,并且为什么给数据开辟内存区域,还好给板卡也开辟呢,如下面代码:       // Allocate INT buffer for driver    *pusINTBuf = (USHORT*) GlobalAlloc(GPTR, iSamples * sizeof(USHORT));    if (pusINTBuf == NULL)    {    printf("\nError: Allocate memory error.\n");    return(false);    }      // Allocate memory for user buffer.    *pUserBuf = malloc(iSamples * iDataSize);    if (pUserBuf == NULL)    {    free(*pusINTBuf);    printf("\nError: Allocate memory error.\n");    return(false);    }



controlPLC

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 54回
  • 年度积分:0
  • 历史总积分:188
  • 注册:2003年8月07日
发表于:2003-10-29 10:24:00
1楼
参考一下研华公司提供的ADINT ,这是由低层的驱动来做的,你可以不必去深究,开辟内存区主要是为了能够保存高速采集过来的数据,因为软件的速度和操作系统的速度是比较慢的,无法直接匹配硬件板卡的速度。

热门招聘
相关主题

官方公众号

智造工程师