基于数据采集卡的定时高速采集数据问题

hmyhsm 2003-10-15 09:41:07
即将做一个数据采集系统,使用高速数据采集卡采集,数据采集卡的 采样频率是1M,带缓冲,采集两个模拟量,因为是动态数据,现在有一个很重要的问题就是在采集这两个模拟量的同时,要精确确定这两个量的采集时刻,也就是把采集的时间也同时采集下来,以备时间量和两个模拟量数据一一对应进行处理。有什么好的方法?可以利用系统时钟吗?如何实现?多谢了
...全文
167 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
nuaawenlin 2003-10-18
  • 打赏
  • 举报
回复
unsigned int timeconst;
timeconst=(unsigned int)(1193180.0*seconds);//时间由你定
nCount=(int)(seconds/0.0549);
oldmask=inportb(0x21);//保存原来的中断位
disable();
outportb(0x21, oldmask | 0x01);//设置新的中断位
outportb(0x43,0x36);
if(nCount==0)
{
outportb(0x40,(char)(timeconst & 0x00ff));
outportb(0x40,(char)((timeconst & 0xff00)/256));
}
else
{
outportb(0x40,0x00);
outportb(0x40,0x00);
}
fun=getvect(0x08);//保存原来的中断向量
setvect(0x08,InterruptProc);//设置新的中断向量
enable();//开中断
outportb(0x21,oldmask & 0xfe);//允许IRQ0
hmyhsm 2003-10-18
  • 打赏
  • 举报
回复
nuaawenlin(飘人) :在dos下用c语言又怎么实现,你可以说说吗?或者有什么例子能给我一个吗?多谢了
nuaawenlin 2003-10-16
  • 打赏
  • 举报
回复
定时精度那么高,我用vc可没做过,都是在dos下用c语言,采用中断的方法来做。如果你在 vc上有方法解决这个工程,也给我发一分源程序。
nuaapiao@hotmail.com
hmyhsm 2003-10-16
  • 打赏
  • 举报
回复
是这样的,我做的这个系统要用采集卡采集两个数据,位移模拟量和电流模拟量,两个数据都是定时采集,采集频率是100kHz,在采集位移模拟量和电流模拟量的同时,要把此刻的时间记录下来,以备后面通过位移值求导等方法计算,把对应物体的速度和加速度计算出来,所以精确的对应时间就很重要,所以时间的采集也要大于100kHz,精确度高于10微秒,98440622(民工++) :您说的运行环境是什么意思?我计划用VC编,在Windows系统下
还有问一下:能否用采集卡上的时钟来定时吗?
98440622 2003-10-16
  • 打赏
  • 举报
回复
没法回答,什么运行环境都不知道
wuxfBrave 2003-10-16
  • 打赏
  • 举报
回复
不知道你要精确到什么程度
用SYSTEMTIME可以精确到Millisecond
inanition 2003-10-16
  • 打赏
  • 举报
回复
能不能说说你的应用,具体问题可能好理解点。
bb123456789 2003-10-16
  • 打赏
  • 举报
回复
高深,帮你顶!

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧