新人新手遇到新问题,请老人高手指点一二!    基本情况:一台频谱仪,做环境监测用,现在想做一个软件,在计算机上接收它的测量数据,并保存,事后可通过保存的数据回放波形图。    每次测量时间不定,想把每次测量的数据单独存成一个二进制文件,可在事后还原出测量波形。     每个单独的文件以测量开始时间命名,文件中包含测量参数和测量数据(波形)。
  
    我是这么想的,定义一个结构体,把参数和数据按格式写进去,测量数据用CByteArray数组存储。    几个问题:    1、我的思路是否可行?
    2、实时存储波形数据应该以什么为一个存储单位?例如:每秒钟存一副波形图,还是每秒存一个点?
    3、实时的存数据,是每秒往文件里写一次,还是在测量结束后一次性写入?
    4、CByteArray应该怎样定义,如何把波形数据存进CByteArray里?就是CByteArray应该怎么用
    
 
    本身VC就用的不是很熟,又是第一次做这类东西,涉及串口和文件存取,很是卡壳啊!串口这块由其他兄弟完成,我主要负责存取,领导建议做一个类,项目都搞了一阵子了,我这进展缓慢,急啊!    请高手指点一下思路,不胜感激!

解决方案 »

  1.   

    还是先简单一点吧,如何把CByteArray的内容存成二进制文件?
      

  2.   

    先看频谱仪的手册,看它能提供什么样的数据,再看一下频谱仪相关的SCPI指令,可能还要下载visa的驱动。一般来说每一次扫描的波形都是一个trace,每个trace大概可以用500或1000个数据点来表示,每一个点还可能有一些附加数据。用串口来读写的话速度够呛。光传输一次trace的数据就可能要花上几秒的时间,如果要求实时性不高的话倒可以使用。