12-03-2015 11:25 AM
I'm getting the following error from my PXI-2532B:
Invalid Scan List string.
'Invalid identifier after the device identifier in the list entry'
Invalid Identifier: ~
Line Number: 1
Position in Line: 12
After doing the following:
Here are the two scan strings:
Scan List String 1 (immediate trigger, No Action): C0 -> R0; C1 -> R0
Scan List String 2 (external trigger, No Action): ~C1->R0 && C1->R1; ~C1->R1 && C1->R0
There seems to be a problem with Scan List String 2, if the error is to be believed, but I can't work out what it is.
Thanks,
Christian.
12-08-2015 04:09 AM
Hello,
Are the scans performed sequentially? If so, do they loop?
If you are only performing the immediately triggered scan once per run, you could try to change the scan mode for the second scan and change the Scan List String 2 to accomodate this.
I have managed to recreate the error, and for me it disappears when I remove the first part of Scan List String 2, making it into: "C1->R1; ~C1->R1 && C1->R0
Perhaps there is some way to reformat the scan strings, while still maintaining the functionality of your application?
Would it be possible for you to provide the code?
Thank you,
Christopher
12-08-2015 12:41 PM
Hi, thanks for the reply. Good to know it's reproducible. At the moment the two scans are performed sequentially, just once. I'm configuring and software-triggering the first scan with one button click, waiting to check that it was successful, and then configuring and 'arming' the second scan with another button click. Eventually this will all happen programatically and the second scan will be retriggered several times (also in the real application, a lot more channels will be used).
I've managed to make it work based on what you suggested - I've merged the two scans into one scan so that all of the original first scan occurs before the first semicolon of the new combined scan. I was using scan 1 as a kind of default state setter, and hoping to only have to run it once at the start of the program. Then scan 2 would run repeatedly after that, changing things from and returning them to the default state. Now the two scans are combined, I guess there's a bit of extra overhead in that I'm running the default-setting part multiple times unnecessarily, but that's OK for now.
Thanks again,
Christian.
12-09-2015 03:28 AM
Glad to know that you managed to get it working, even if there is some extra overhead.
You could also try the initial approach with the second scanlist starting with a semicolon. This will require an extra trigger, but I do not think that it would result in much overhead. I have not tested this, but you could try it out when expanding your application.
Like this:
Scan List String 1: C0 -> R0; C1 -> R0
Scan List String 2: ;~C1->R0 && C1->R1; ~C1->R1 && C1->R0