Keithley scan 2000 delay time

I'm updating some legacy in Labview code that was written for a Scan Keithley 2000 DMM with 10 Channel relay card.  Right, the code now contains a delay between selection of a channel of meter and read the data.  The time is 1 second.

I could not find any supporting documentation why this delay must be put in place.  It's just for debouncing?  If Yes, does anyone have any experience which suggests could be shorter?

Thank you.

The time depends on your system. For debouncing 20 ms is more appropriate.

But you can try. Build scans between max, min and weak signals and see how fast the system gives the right answer.

Another reason for delay is the automatic selection of the DMM, sometimes that takes some time and also the load on your system should stabilize.

Tags: NI Hardware

Similar Questions

  • Using more of a delay time in thread

    Hello
    I need to use two non-consecutive periods in a thread. My thread is generally as follows:
    1 tell an oriel MS257 to change the wavelength
    2 time delay #1 to give the MS257 time to change
    3 say HP 4156C to run the scan
    4 survey the 4156 C until the scanning is complete
    5 delay time #2 to 4156C time to load the data
    6 reading/analysis/backup

    My problem is that the second time delay seems to start counting immediately after the first: it does not wait for the scan to complete before the count. My VI is attached. It's a bit messy - organizational tips are also welcome!

    Thank you
    Ying

    Looking at the issue of sources: cleaning is a great tool (even thought it's far from perfect )

    Well, nevertheless, wireworking, it seems though the second express VI of delay must indeed wait loop ends. Therefore, I wonder why it is ignored. And the only reasonable explanation: you have an error on the cluster of error.

    So please debug using nail/probes on the cluster of error to make sure that you do not run the questions here.

    hope this helps,

    Norbert

  • Office 2013 on Win7 using bootcamp has delay time

    I use Win 7 teacher on a piece of Macbook Air 2014 with bootcamp 5 and MS Office 2013. Up to 4 weeks everything works well, and the performance was great. And then I got the delay time:

    -Closing remarks is the longest in about 4-5 sec

    -editig one Excel cell and switch to another will cost about 4 to 5 sec

    - and so on

    Thanks to this performance, it is horrible to work. I have also removed Office and install it again without any result.

    Anyone have some advice for me? Is there some patches in which software never cause this?

    Or am I alone with this?

    THX in advance

    Frank

    Your is no longer in a Mac environment, if this side of "windows" because you're not virtualize, you run Windows as a complete solution for Windows. OS X doesn't play not any part of your experience. Windows as OS X should be updated with patches and update securities, the latter is the only support Windows offers for Version 7, it is out of development and was removed by Microsoft for more than a year. All compatibility fixes should come from Microsoft, see microsoft.com for the availability of these.

    Outside the correction and the issues pourraient be caused by:

    Disk fragmentation that is common in windows. (However it is not under OS X, don't defrag on Mac, OS updates will do everything if it you better than anything you can buy)

    hard disk-ragmenting https://support.Microsoft.com/en-us/help/17126/Windows-7-improve-performance-def

    Font management (again, on the side of 'Windows', your OS X fonts do not play in this)

    3rd party Windows applications, such as anti-virus and the litany of bloatware inherent with Windows. Windows has a startup mode for troubleshooting.

    https://support.Microsoft.com/en-us/help/17419/Windows-7-Advanced-startup-option s-safe-mode

    and possibly disk goes wrong, which can be controlled using this method

    https://support.Microsoft.com/en-us/KB/2641432

  • measurement of the delay time to fall on the rise

    I use the PXI-5124 digitizer and development of codes in C++ to measure the time between the 2 channels.  I put the trigger on channel 0.   I need to measure the delay time of CH0 AMOUNTING to CH1 RISING, CH0 AMOUNTING to CH1 TOMBANT, CH0 FALLING RISING, CH0 TOMBANT to CH1 TOMBANT CH1.

    I encountered the following problems.

    1. when I tried inverted signals using the niScope_AddWaveformProcessing() function, I had to call NISCOPE_VAL_ARRAY_GAIN twice.  Second call with gin = 1.  Otherwise, the waveforms being feteched were not reversed.  This happened to both channels.  Here is the code I use.

    niScope_SetAttributeViReal64(session,"1",NISCOPE_ATTR_MEAS_ARRAY_GAIN,-1));
    niScope_AddWaveformProcessing (session, "1", NISCOPE_VAL_ARRAY_GAIN));
    niScope_SetAttributeViReal64 (session, "1", NISCOPE_ATTR_MEAS_ARRAY_GAIN, 1));
    niScope_AddWaveformProcessing(session,"1",NISCOPE_VAL_ARRAY_GAIN));

    niScope_FetchArrayMeasurement (session, "1", timeout, [channel] NISCOPE_VAL_ARRAY_GAIN, actualRecordLength, wave [channel], & wfmInfoPtr));

    Code that write the [vague] in a control file

    2. even if with above method to obtain a code reversed, I can't get a correct results of CH0 FALLS of CH1 RISING.   In addition, I don't know if the other delays are correct or not.

    Please see the attachment for the functions dgz_measure() and NI_DGZ codes::meas_delaytime();

    Other scalar measures seem ok.  I also tried the FFT, it should be ok too.

    What I've done wrong? Is there any sample code for the delay time?

    I checked the AdvancedMeasurementLibrary already.

    Hi, Jean Louis,.

    It works fine now.  He needs to call niScope_FetchArrayMeasurement after you set the attribute.  There is no need to call niScope_AddwavefromProcessing.  The niScope_FetchArrayMeasurement and niScope_AddwavefromProcessing will be peform the operation.  So if I called two of them, the operation will be twice.    Here is the code that works.

    niScope_SetAttributeViReal64(session,"1",NISCOPE_ATTR_MEAS_ARRAY_GAIN,-1));
    niScope_FetchArrayMeasurement (session, "1", timeout, [channel] NISCOPE_VAL_ARRAY_GAIN, actualRecordLength, wave [channel], & wfmInfoPtr));

    Thank you very much!

  • The delay time indicator

    This should be the easiest thing to do, but I'm stuck for some reason any: I have a delay time running to a number specified by the user in seconds, and I want an indicator on the front panel, showing how much time passed. I thought that the "elapsed time" VI would be exactly what I was looking for, but I can't seem to get to do what I want. I have attached my attempt; If you can remember where I'm wrong, it would be much appreciated.

    You do not have a while loop, so your code runs only once.

    Your delay time runs in parallel with the timed.  So, it will delay the execution of the code.

    Get rid of the elapsed time and elapsed time and its indicator in a loop.

  • Windows always tells me that I don't have no 'scan in some time"when, in fact, I did.

    Windows always tells me that I don't have no 'scan in some time"when, in fact, I did.

    How can I stop it?

    Hello

    I remember there are some parameters in CCleaner, you can check under application settings and do not check MS AntiMalware?

    then check if your problem has been resolved, with this it's because that that your CCleaner scan of your hard drive and delete the history of the ESM log

    Thank you.

  • change the Timer class Delay time

    Is it possible to update the duration of the Timer class period while it is running. I want to update using the slider, but it seems not updated. I even stop the timer on the event cursor THUMB_PRESS that restart after his change. Doesn't seem to work that way either. Any ideas?

    I thought about it. Instead of setting a variable speed where the Manager works for the slider I directly changed the delay timer variable to equal the value of the slider. I feel stupid now, but it works very well.

  • KEITHLEY 238 / NI GPIB-USB-HS-change delay time

    Hello

    I have a keithley 238 meters the current measures such as voltage is swept. It's the GPIB device and connected to my PC via NI GPIB-USB-HS

    adapter. I would like to control with Labview 8.6. I used the VI available at your instrument driver network who directed me to the website keithley and is attached below. Keithley said that the VI is unsupported freeware. The VI is located at

    http://www.Keithley.com/products/CurrentVoltage/?path=238/downloads#1

    The first "sample program" on this site Web is the VI that I use.

    Now the VI works well.  The VI sweeps the tension and shows the current measured as a table and a chart.

    I want to just change the scanning time, but I can't increase it beyond 1000 ms. Why is it so?

    Scan delay is the time that he made a break after each increment of voltage.

    I don't know if there's a change in the VI or NI GPIB-USB-HS adapter settings are a problem. I checked the settings of this device under MAX - time settings are the following

    (1) time I / O-> by default set to 13 (10 sec)

    (2) antipolling - verified

    (3) then there are a few termination settings and advanced settings, there is a setting, bus game calendar to-2 (500nsec)

    So are bad parameters GPIB or code needs to be changed? How and where to change the code?

    The reason why the VI will not attribute to a value greater than 1000 is simple to understand. Just right click and select data entry and you will see that the maximum value is set to 1000. It is set so that I don't know. Have you looked in the manual to see if 1 s is a limitation of the instrument?

  • (Thermocouple, - k-type) measurement of temperature using Keithley DMM 2000 and 2001 scan GPIB interface card

    Mr President.

    I am a beginner in Labview and urgent I need a labview for keithley program 2001 scan card measuring temperature thermocouple with GPIB interface and keithley 2000 DMM...

    Any body please help me...

    Thanks in advance

    Shan...

    Hello

    Open the keithley 2000 and in the lvlib project in public, you will find the tree.vi.

    Inside is a configuration vi for themocouple measures

    extend the case in the example simple reading if this is used (also extend selection) and see what happens.

  • Delay time in the memory game

    Hello


    I am building a memory game and I'm trying to build a delay, pause before removing a pair of cards. I tried almost all the options in any other post on this site but I can't understand it. I tried a simple 'for' statement, events timer etc but nothing works. Best of cases I get no compiler error and simply... nothing happens. Can someone help me please! THX! This is the code I use:


    I case you ask which strange language, is, it's Dutch, and now I know why I would not do!

    player clicks on a map
    public void klik_kaart(event:MouseEvent) {}
    var deze_kaart:Kaart_1 = (event.currentTarget as Kaart_1); which card?

    If (eerste_kaart == null) {/ / first card}
    eerste_kaart = deze_kaart; define the first card
    eerste_kaart.gotoAndStop(deze_kaart.voorkant+2); return the first card

    } Else if (eerste_kaart == deze_kaart) {/ / the first map is clicked again}
    eerste_kaart.gotoAndStop (23); return the first card
    eerste_kaart = null;

    } Else if (tweede_kaart == null) {/ / set the second card}
    tweede_kaart = deze_kaart; It's the second card
    tweede_kaart.gotoAndStop(deze_kaart.voorkant+2); back of second map

    Compare the two cards
    If (Math.floor(eerste_kaart.voorkant/2) == {Math.floor(tweede_kaart.voorkant/2))}

    delete a matching pair
    removeChild (eerste_kaart)
    removeChild (tweede_kaart)

    reset the card first and second card to 'null '.
    eerste_kaart = null;
    tweede_kaart = null;


    Large, Marco.

    use:

    package

    {

    import flash.display. *;

    import flash.events. *;

    import flash.text.TextField;

    import flash.text.TextFormat;

    import flash.utils.getTimer;

    SerializableAttribute public class MemoryGameObject_level_1 extends MovieClip

    {

    Constanten SPEL

    private static const aantal_kolommen:uint = 5;

    private static const aantal_rijen:uint = 4;

    Private static const KolomBreedte:Number = 155;

    Private static const RijHoogte:Number = 155;

    private static const linker_marge:number = 25;

    private static const boven_marge:number = 25;

    private static const punten_voor_een_match:int = 100;

    punten_voor_een_mismatch:int = - 5 private static const;

    variabelen Spel

    private var eerste_kaart:Kaart_1;

    private var tweede_kaart:Kaart_1;

    private var kaarten_over:uint;

    private var mijnFormat:TextFormat = new TextFormat ("Arial Rounded MT Bold", 20, 0X4F81BD, true);

    private var score_veld:TextField;

    private var spel_score:int;

    private var spelStartTijd:uint;

    private var speelTijd:uint;

    private var speelTijd_veld:TextField;

    private var delay: int = 2000;

    private var t:Timer = new Timer(delay,1);

    private var modalWindow:MovieClip;

    public void MemoryGameObject_level_1 (): void {}

    modalWindowF();

    t.addEventListener (TimerEvent.TIMER, removeCardsF);

    Maak een lijst puts kaartnummers maken

    var kaartlijst:Array = new Array();

    for (var i: uint = 0; i

    kaartlijst.push (i) ;}

    kaarten_over = 0;

    for (var x: uint = 0; x)

    for (var y: uint = 0; y)

    var c:Kaart_1 = new Kaart_1(); Kopieer movieclip

    positioneren plaatjes

    c.x Fokker-built = x * KolomBreedte + linker_marge; Mouth first Zet

    CY = y * RijHoogte + boven_marge; Portrait first Zet

    c.buttonMode = true; maakt cursor on mouseover een vingertje van

    var r: uint = Math.floor (Math.random () * kaartlijst.length); Kies een willekeurig each

    c.voorkant = kaartlijst [r]; Wijs het aan voorkant toe each

    kaartlijst.splice (r, 1); rimuovere het each ITU lijst

    Judgment of bepalen van nice fr

    If ((c.voorkant + 2) % 2 == 0)

    c.gotoAndStop (1);

    of other c.gotoAndStop (22);

    c.addEventListener (MouseEvent.CLICK, klik_kaa rt); feature voor het kussen naar 'muiskliks '.

    addChild (c); Laat zien kaart

    kaarten_over ++;

    }

    }

    Opmaak van het scoreveld

    score_veld = new TextField();

    score_veld.defaultTextFormat = mijnFormat;

    addChild (score_veld);

    spel_score = 0;

    score_veld.x = 600;

    score_veld.y = 650;

    score_veld. Height = 30;

    score_veld. Width = 195;

    score_veld. Border = true;

    Opmaak van het timerveld

    speelTijd_veld = new TextField();

    speelTijd_veld.defaultTextFormat = mijnFormat;

    addChild (speelTijd_veld);

    speelTijd_veld.x = 25;

    speelTijd_veld.y = 650

    speelTijd_veld.height = 30;

    speelTijd_veld.width = 195;

    speelTijd_veld.border = true;

    spelStartTijd = getTimer();

    speelTijd = 0;

    Voor Event Timer

    addEventListener (Event.ENTER_FRAME, showTime);

    }

    of player has op een geklikt kaart

    public void klik_kaart(event:MouseEvent) {}

    var deze_kaart:Kaart_1 = (event.currentTarget as Kaart_1); Welke map?

    If (eerste_kaart == null) {/ / first kaart van een paar}

    eerste_kaart = deze_kaart; bestempel deze kaart als eerste kaart

    eerste_kaart.gotoAndStop(deze_kaart.voorkant+2); Kaart om Draai

    } Else if (eerste_kaart == deze_kaart) {/ / eerste kaart is weer aangeklikt}

    eerste_kaart.gotoAndStop (23); Map terug Draai

    eerste_kaart = null;

    } Else if (tweede_kaart == null) {/ / of tweede kaart van een paar}

    tweede_kaart = deze_kaart; bestempel deze kaart als tweede kaart

    tweede_kaart.gotoAndStop(deze_kaart.voorkant+2); Kaart om Draai

    twee facilities puts unique vergelijken

    If (Math.floor(eerste_kaart.voorkant/2) == {Math.floor(tweede_kaart.voorkant/2))}

    rimuovere een goed paar

    addChild (modalWindow);

    t.Reset ();

    t.Start ();

                                                    

    toekennen points

    spel_score += punten_voor_een_match;

    score in tijd i.e.

    MovieClip (root) .spel_score = spel_score

    MovieClip (root) .speelTijd = klokTijd (speelTijd)

    CONTROL op het einde van het spel

    kaarten_over-= 2; 2 facilities minder

    If (kaarten_over == 0) {}

    MovieClip (root), .gotoAndStop ("LevelEinde");

    }

    } else {}

    spel_score += punten_voor_een_mismatch

    laat_score_zien();

    }

    } else {/ / ready maken voor het next paar}

    reset the previous paar het

    eerste_kaart.gotoAndStop (23);

    tweede_kaart.gotoAndStop (23);

    tweede_kaart = null;

    Eerste kaart van het paar will select

    eerste_kaart = deze_kaart;

    eerste_kaart.gotoAndStop(deze_kaart.voorkant+2)

    }

    }

    private void removeCardsF(e:TimerEvent):void {}

    removeChild (eerste_kaart);

    removeChild (tweede_kaart);

    removeChild (modalWindow);

    Selection of eerste en tweede van Zet no op kaart

    eerste_kaart = null;

    tweede_kaart = null;

    }

    public void laat_score_zien() {}

    score_veld. Text = "Note: «+ String (spel_score) ;}»»

    Timer van functionaliteit

    public void showTime(event:Event) {}

    speelTijd = getTimer () - spelStartTijd;

    speelTijd_veld.text = ' Tijd: «+ speelTijd ;}»»

    speelTijd_veld.text = ' Tijd: «+ klokTijd (speelTijd) ;}»»

    public void klokTijd(ms:int) {}

    var seconds: int = Math.floor (ms/1000);

    var minuten:int = Math.floor (seconds/60);

    seconds = minutes * 60;

    var timeString:String = minutes + ":" + String(secondes+100).substr (1,2);

    return timeString

    }

    private function modalWindow (): void {}

    modalWindow = new MovieClip();

    {with (modalWindow.Graphics)}

    beginFill (0 x 000000, 0);

    drawRect (0,0,stage.stageWidth,stage.stageHeight);

    endFill();

    }

    modalWindow.addEventListener (MouseEvent.CLICK, modalClickF);

    }

    private void modalClickF(e:MouseEvent):void {}

    }

    }

    }

  • There is Airfoil and Airport Express, latency/delay time?

    I want to be able to direct the output of my iMac "end 2014' 5K (10.11.6) on my stereo system (ParaSound P3/A23) using AirFoil 5 with Airport Extreme > Airport Express."

    But the audio output should be "real time." in other words, no delay or latency at all. Both are in the same room!

    I use notation software (Sibelius) and need to hear what I write immediately. Unlike streaming where I think there is an acceptable delay (2 seconds?) for the buffering?

    Is this possible please?

    If it isn't with AirFoil, any advice on how welcome :-)

    I want to be able to direct the output of my iMac "end 2014' 5K (10.11.6) on my stereo system (ParaSound P3/A23) using AirFoil 5 with Airport Extreme > Airport Express."

    With AirPlay (or Bluetooth), there will always be a form of delay or latency with streaming audio.

    In this scenario, an audio stream (on AirPlay) will go first to your iMac to AirPort Extreme and AirPort Express Terminal.

    To help understand why there will be delays, let's look at high-level "behind the scenes" about how works AirPlay:

    For the AirPort Express (AX), audio input is provided mainly by iTunes. Of course, it can also get feedback from other sources as you know, as of Rogue Amoeba's Airfoil.

    For streaming, iTunes or wing does most of the work. What is app reads audio content standard (AAC, MP3, audio books, Internet music streams, etc., it decompresses these file formats and creates what is essentially a raw, uncompressed audio stream.) This stream is compressed using Lossless Compression of Apple (via a QuickTime codec), encrypted with AES 128 bits and then listened (airplay) with an AXE. The stream is buffered for about 2 seconds until the stream is sent. The AX deciphers the flow, decodes and exports in a digital or analog PCM (using a built-in DAC) flows to its audio analog-to-digital versatile optical port.

    So, with the above, you can see that the tone does not simply move source to the destination without much more things. You will not be able to entirely eliminate the delay. Sorry!

  • Adding a delay time and reading a file

    Hi there, new to labview here. Working on a project and having some problems he do on the ground.

    First question, in the VI below, I try to have a delay between each entry, but when I take a glance on the control of delay, I don't see how it is supposed to implement. No singal flow through the timer.

    Question 2, I want to write these ports via a xcel file but not sure how to do...

    Thanks for your help in advance...

    It seems that Excel adds additional bytes in it for who knows what reason.  Save your spreadsheet as a CSV file and they seem to go away.  Of course, you must change the format '% x, %d' string when you do this.

  • computer and printer connect sometimes, sometimes not. There could be a delay time.

    Hi, I have HP photosmart 5510, TRIOUX, scanning, web copy.    When I specify printing, sometimes it works, other times, the computer says it cannot connect to the printer.  The printer could not connect to the computer to scan a page to the computer.

    My computer is an iMac, osX.

    Sometimes after a long period of time the dormant printer will activate and print the room - it seems as if something was trying to connect to a specific time.  Can anyone help please.

    Thank you.   I changed the timer for max - now it is 15 minutes.   I'll check for a few days.

  • Cannot run scan disk error: scan annex next time you start the computer

    Original title: scan disk

    disc scanning does not (the schedule disk check)

    When I try to run the disc scan, it is said to plan the next time that you start the computer, when I restart the computer analysis, it begins just same Windows as usual

    Windows 7 Home Premium 32 bit as the same thing happens with my other computer his Windows 7 Home Premium 64-bit

    Penny Pombert

    E-mail address is removed from the privacy *.

    Hello

    1. don't you make changes to the computer until the problem occurred?

    I suggest you to try the steps below and check if it helps.

    Set up your computer in a clean boot state, and check to see if the same problem happens.

    By setting your boot system minimum state helps determine if third-party applications or startup items are causing the problem.

    How to troubleshoot a problem by performing a clean boot in Windows Vista or Windows 7:
    http://support.Microsoft.com/kb/929135

    Note: After the boot minimum troubleshooting step, follow step 7 in the link provided to return the computer to a Normal startup mode.

    You are able to run the disk check to the prompt with success?  Reference the link below and follow the steps in FireDocUSMC.  Please let us know status.

    http://answers.Microsoft.com/en-us/Windows/Forum/Windows_7-performance/using-Windows-7-How-do-i-run-Chkdsk/a68b3e4d-1a42-E011-9767-d8d385dcbb12?page=3

    Hope this information is useful.

  • Add a delay time before pushing in a table?

    I have a function, loadXML, that loads an xml file with a list of locations to OTHER xml files.  In this function, I load each individual xml file and perform a new function, parseXML, each of the variables that I wish to submit individual xml files in a table.

    It all works fine and dandy on my computer, but when I run it online it breaks down.

    What I believe happens is that the original xml file is loaded correctly, but because the referenced xml files are on the web and are different sizes, they stop in the load order and data not corresponding to the xml file that is referenced in the referenceListA table.  (ie. all data of every referenced file item1, item2 and item3 will stay together because they are called at the same time, but it will be mixed from the referenced xml file).

    This normally wouldn't be a big deal, but because I also want to create a link to the xml file that is referenced, not sometimes the link will lead to the right place (it will lead to another xml file in the list).

    Someone at - it ideas?  I thought the addition of a time delay somehow in the loadXML function to give time to load the file newxml, but still problematic...

    How can I make sure that the referenceListA [i] mathes until its own information?

    ---

    referenceListA = [];

    xmlData = new XML();
    xmlData.ignoreWhite = true;
    xmlData.onLoad = loadXML;
    xmlData.load ("list.xml");
    function loadXML (loaded) {}
    If {(responsible)
    var root = this.firstChild; The root node
    for (var i = root.firstChild; i! = null; i = i.nextSibling) {}

    referenceListA.push (i.attributes.location);
    newxml = new XML();
    newxml.ignoreWhite = true;
    newxml.onLoad = parseXML;
    newxml. Load ("details.xml" + i.Attributes.Location);
    }
    } else {}
    trace ("file not loaded!");
    }
    }

    item1A = [];
    item2A = [];
    item3A = [];
    parseXML() {} function
    item1A.push(this.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue);
    item2A.push(this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue);
    item3A.push(this.firstChild.childNodes[0].childNodes[2].firstChild.nodeValue);
    }

    trace (referenceListA);
    trace (item1A);
    trace (item2A);
    trace (item3A);

    I can't be sure that what you stated where and what things are in your code, but more like what I was describing what I show below - it is a quick edit, so just try to get the idea of the...

    referenceListA = [];

    locationA = [];

    item1A = [];
    item2A = [];
    item3A = [];

    var xmlData = new XML();
    xmlData.ignoreWhite = true;
    xmlData.onLoad = loadXML;
    xmlData.load ("list.xml");
    function loadXML (loaded) {}
    If {(responsible)
    var root = this.firstChild; The root node
    for (var i = root.firstChild; i! = null; i = i.nextSibling) {}
    referenceListA.push (i.attributes.location);

    }

    functionA(); load the first file

    } else {}
    trace ("file not loaded!");
    }

    }

    locationA = [];

    item1A = [];
    item2A = [];
    item3A = [];

    var num:Number = 0;

    function functionA() {/ / load the current file identified by index value num}

    newxml = new XML();
    newxml.ignoreWhite = true;
    newxml.onLoad = parseXML;
    newxml. Load (referenceListA [num] + "details.xml");
    }

    parseXML() function {/ / what I called the B function}

    locationA.push (this);
    item1A.push(this.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue);
    item2A.push(this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue);
    item3A.push(this.firstChild.childNodes[0].childNodes[2].firstChild.nodeValue);

    Num += 1;

    If (num<>

    functionA();    Load the next file

    }
    }

Maybe you are looking for