完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
将Fetch Array数据分配给数组变量时,enter命令会花费大量时间。
我从缓冲区中提取1000个读数,并且需要9秒来分配值。当我读取4,000个读数时需要19秒。我必须以1毫秒的间隔获取60秒的数据并将其保存到文件中。 缓冲区只能容纳4096个读数,所以我必须创建一个循环并继续重新读取缓冲区,但每次循环之间丢失19秒就会让我感到害怕。 显式的选项私人小组cmdError_Click()Agt3494A1.Connect Me.txtAddress.Text InstrumentError Agt3494A1End SubPrivate子cmdGetPulse_Click()昏暗strDatFileName作为字符串昏暗strBackSlash作为字符串昏暗intDatFileNbr作为整数昏暗strDatName作为字符串昏暗intDeptNbr作为整数昏暗currentArray(999)为双' 0到4095是4096点Dim Data()As Variant Dim i As Long Dim cnt As Long Dim d As Long Dim iter As Integer Dim starttime As String strBackSlash = IIf(Right $(App.Path,1)=“”, “”,“”)strDatFileName = App.Path& strBackSlash& “POWERUP.dat” intDatFileNbr = FreeFile CNT = 1 d = 0 ITER = 0 cmdGetPulse.Enabled =假Agt3494A1.Connect Me.txtAddress.Text如果isconnected(Agt3494A1)= FALSE然后退出子“如果我们想打开用于输出的文件 已经存在,删除它......如果DIR $(strDatFileName)“”然后杀死strDatFileName结束如果打开strDatFileName对于追加作为#intDatFileNbr setupDCSource Agt3494A1随着Agt3494A1。输出“输出On”。输出“伏” 4.2“将输出设置为4.2伏 由于某种原因,这是在模块中设置然后重置在这里? .timeOut = 50000'将timout设置为50秒。输出“init:名称ACQ”。输出“Fetch:Array:curr?” 。进入currentArray使用ReDim数据(UBound函数(currentArray)+ 1)对于i = 1到UBound函数(currentArray)+ 1个数据(d)= currentArray(I - 1)写#intDatFileNbr,CNT,d,数据(d),时间d = d + 1接下来我用Agt3494A1结束cnt = cnt + 1 Do直到cnt> iter startTime = Time。输出“Sense:Current:Det ACDC”'将仪表设置为ACDC。输出“Sense:Current:Range Max”'High 当前范围。输出“Sense:Func”“Curr”“”'获取当前读数“。输出”Sense:SWE:Tint .001“'采样时间间隔为1ms”。输出“Sense:SWE:Points 1000”' 扫描中的测量样本“。输出”感应:SWE:偏移:点0“'触发前的数字采样点”。输出“测量:数组:当前?” 开始时间=时间。进入currentArray使用ReDim数据((UBound函数(currentArray)+ 1)* ITER)对于i = 1至UBound函数(currentArray)+ 1数据(d)= currentArray(I - 1)写#intDatFileNbr,CNT,d, 数据(d),时间d = d + 1下一个i cnt = cnt + 1循环。输出“Volt 0”'设置输出为0伏。输出“输出关闭”关闭#intDatFileNbr结束使用cmdGetPulse.Enabled = True End Sub 以上来自于谷歌翻译 以下为原文 When assigning Fetch Array data to an array variable the enter command is taking a huge amount of time. I am pulling 1000 readings from the buffer and it is taking 9 seconds to assign the values. When I take 4,000 readings it takes 19 seconds. I have to take 60 seconds of data at 1msec intervals and save it to a file. The buffer will only hold 4096 readings, so I have to create a loop and keep re-reading the buffer, but losing 19 seconds between each loop is killing me. Option Explicit |
|
相关推荐
1个回答
|
|
嗨,克里斯,明天我会调查一下。
对不起,迟到的回复,我对这个论坛的自动通知似乎不起作用!马特 以上来自于谷歌翻译 以下为原文 Hi Chris, I will look into this tomorrow. Sorry for the late reply, the automatic notification that I have for this forum seems to be not working! Matt |
|
|
|
只有小组成员才能发言,加入小组>>
1272 浏览 0 评论
2371 浏览 1 评论
2187 浏览 1 评论
2061 浏览 5 评论
2944 浏览 3 评论
1091浏览 1评论
关于Keysight x1149 Boundary Scan Analyzer
746浏览 0评论
N5230C用“CALC:MARK:BWID?”获取Bwid,Cent,Q,Loss失败,请问大佬们怎么解决呀
912浏览 0评论
1276浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 05:06 , Processed in 1.524594 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号