Labview 8.0 PDA local & global variable cause a crash

I've attached a pic of the portion of the VI that causes the PDA
application to crash. What is happening is that I write the initial
resistance0 to a (global or local) of a chip by using a case
structure  that sets the value when the while loop first executes,
afterwards, every other iteration, it sets the resitance to a (local or
global variable) called resistance then it plots it.. unfortunately,
accessing the variable
this way causes it to crash .. Any help would be greatly appreciated.
Message Edited by GHernandez on 02-09-2006 06:25 PM
Attachments:
Problems.jpg ‏162 KB

I've re-written this application , where i have not included global
variables for resistance, or resistance0 or the counter. The VI
executes for maybe a  min or 2 then crashes giving me the
following error:
App failed. Error code 560331006. Bad input argument to function.
unfortunately, this error code does not tell me anything.
Message Edited by GHernandez on 02-10-2006 04:51 PM
Message Edited by GHernandez on 02-10-2006 04:52 PM
Attachments:
problema.jpg ‏158 KB

Similar Messages

  • Can the output of a Generate Occurrence be passed in Local/Global Variable?

    Can the output of a Generate Occurrence function, which is a refnum, be passed in Local/Global Variable so that it does not need to be wired to all parties directly?
    Can more than one party be waiting on the same Occurrence and will all waiting function be released together?

    dbaechtel wrote:
    Answer was not given:
    Can the output of a Generate Occurrence function, which is a refnum, be passed in Local/Global Variable so that it does not need to be wired to all parties directly? Is this possible?
    I am not worried about whether it is bad form or not, as yet. That is for me to decide on a case by case basis.
    Yikes! That is not a very good way to learn.
    Anyways, to avoid any more bold emphasis on words, I will answer your question. Locals can only be linked to controls/indicators not individual wires. If you want to get the effect of a local/global variable with a wire value, search the forum for action engines or functional globals. Those will work for passing a wire value between threads.
    That said, what are you trying to use occurences for? There may be (and probably is) a more accepted way to implement what you are trying to do instead of using local variables
    CLA, LabVIEW Versions 2010-2013

  • Oral exam - Flash CS4 - Local/global variables?

    Hi!
    In two days, i have an Oral exam in flash programming, with CS4.
    we've been given a problem to solve, and i naturally am having problems solving it!
    This is the problem
    You are suppost to make a calculator. The calculator should be able to show how much time a person uses
    when he/she climbs a mountain when hiking. Time is counted in minutes, and the height is the mountain-height.
    a) I should be able to calculate, and show how many heightmeters one walks per minute.
    example:
    Height: 1440 meters
    time: 360 minutes
    1440/360 = 4 Heightmeters per minute.
    4 * 60 = 240 heightmeters per hour
    So, i pretty much figured this out.
    iHeight, iTime and iHeightmeters, and iHeightmeters2(for the hour one).
    My problem shows itsself when i get to b.
    b) animation: Show a person that walks from the bottom, to the top of the mountain, in this application(basically the stage, with the calculator on the right side or something along those lines)
    I animated, and i was able to give my "guy" some speed in x and y direction, so that he walks up to the top of the mountain.
    c) Let the speed from a, decide the speed the person walking up the mountain has.
    So what i'm suppost to do is:
    mcWalkingman.x += iHeightmeters;
    mcWalkingman.y += iHeightmeters;
    Theese values have to recide in a function for themselfs, a function only containing speed variables and such. While the "iHeightmeters" recide in the first function where the calculator is. How do i get whatever value iHeightmeters turns out to be, into the next function or another function at all, when the variables are local?
    I hope you understand my problem, and that someone is able to help me.

    If i got you right you want to share a variable between differnet functions ?
    You need to specify it globally and not within the function. If you are programming it just in the Flash IDE, it would be something like
    var iHeightmeters:int = 123456;
    testFunction();
    function testFunction():void
        trace("iHeightmeters = " + iHeightmeters);
    If you do this within a class, it should be
    private var iHeightmeters:int = 123456;
    testFunction();
    private function testFunction():void
         trace("iHeightmeters = " + iHeightmeters);

  • Thread local variable causes JVM crash through JNI

    Hi All,
    My team developed a JDBC driver which uses some native C codes. (Compiler: cl.exe, O/S: Windows XP)
    I found that JVM crashes at specific point. So I used debugger(Visual Studio 2005) to find the position.
    ==================File1.c=====================
    JNIEXPORT jbyteArray JNICALL
    Java_com_lone_wolf_MyClass_myFunc(
    JNIEnv *env, jclass cls,
    jint msgtype, jbyteArray recvarr)
    jbyteArray outarr;
    int x = 3;
    outarr = my_initializer (int &x);
    return outarr;
    ==================File2.c=====================
    __declspec(thread) int thread_id;
    static jbyteArray my_initializer (int *a)
    thread_id = *a; // HERE JVM CRASHES
    When my_initializer() tries to put *a into thread_id, JVM crashed with the following error message.
    # An unexpected error has been detected by HotSpot Virtual Machine:
    # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x4931c6bf, pid=3560, tid=848
    # Java VM: Java HotSpot(TM) Client VM (1.5.0_01-b08 mixed mode)
    # Problematic frame:
    # C [hello.dll+0xc6bf]
    --------------- T H R E A D ---------------
    Current thread (0x00037168): JavaThread "main" [_thread_in_native, id=848]
    Stack: [0x00040000,0x00080000), sp=0x0007f494, free space=253k
    Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
    C [hello.dll+0xc6bf]
    C [hello.dll+0xbebb]
    C [hello.dll+0x3c30]
    C [hello.dll+0x18e6]
    C [hello.dll+0x11b8]
    j com.lone.wolf.MyClass.myFunc(I[B)[B+0
    v ~StubRoutines::call_stub
    V [jvm.dll+0x8176e]
    V [jvm.dll+0xd481d]
    V [jvm.dll+0x8163f]
    V [jvm.dll+0x885cd]
    C [java.exe+0x14c0]
    C [java.exe+0x64cd]
    C [kernel32.dll+0x16ff7]
    VM Arguments:
    jvm_args: -Xms128m -Xmx1024m
    java_command: sampler.Sampler
    --------------- S Y S T E M ---------------
    OS: Windows XP Build 2600 Service Pack 2
    CPU:total 4 family 6, cmov, cx8, fxsr, mmx, sse, sse2, ht
    Memory: 4k page, physical 2062180k(1378880k free), swap 4003992k(3252828k free)
    vm_info: Java HotSpot(TM) Client VM (1.5.0_01-b08) for windows-x86, built on Dec 6 2004 19:51:00 by "java_re" with MS VC++ 6.0
    Any idea how to solve this issue will be greatly appreciated.
    Thank you.

    This deffinition ( __declspec(thread) ) of the thread local veriable does not works in some cases (see articles in MSDN how to define thread local variables in C++ code). JVM loads your native module (DLL) with LoadLibrary function. This is one of the cases when __declspec(thread) is wrong in C++ code.

  • Why does Labview create a .vi for each global variables?

    Hello,
    I wrote an Labview application which use several global variables (almost 30 variables). All the variables are of variable type "single process". For each of these variables, Labview creates a vi.
    For example, for the variable "_TS.Measures.channes", Labview creates a vi named "TS_'_TS.Measures.channels'.vi". Which means, I have almost 30 "name of variable".vi files: this is confusing!
    All my VI are inside library (.llb). When I try to put the VI of a global variable in a library, Labview can't find them anymore.
    May be can somebody explain me, why LabVIEW does create these VI and how is it possible to put them in a library.
    Cheers,
    Risotto

    Hi everybody,
    Thank you for your answers, I get a lot of informations.
    Yes, I use the new shared variables in LabVIEW8, which I am using like sort of global constants. Now I am understanding what guys are telling me all this about global variables in LabVIEW7.1. Sorry, I forgot to say I was using LabvVIEW8.
    I will have a look on the tutorial too.
    But yet one point about the library collecting all the shared variables in the windows explorer and in the project explorer: When I create a shared variable in my LabVIEW project - for example "test1" as double/single process - the variable doesn't appear in my file directory, but it appears in the project explorer in a library (.lvlib).
    When I drag/paste my shared variable on the block diagramm of my VI, then a file "Math_test1.vi" appears in my file directory. There is no extra .llb created to contain my shared variable vi.
    If I drag/paste the file "Math_test1.vi" in the Math.llb (see picture), then the file is moved in the llb and disapeared from the directory.
    If I created another shared variable "test2" as double/single process and put it on the VI, then LabVIEW creates2 files in the directory: "Math_test1.vi" and "Math_test2.vi". So that I get 2 vi for the "test1" variable now (one in the llb and one in the directory).
    I use several library in the project explorer. But the  library in the project explorer seems to create file with other extension (.lvlib) than the sdtandard LabVIEW library (.llb).
    Cheers,
    Risotto
    Attachments:
    picture.jpg ‏223 KB

  • Create local or global variables ?!

    hey guys,
    I want to use variables instead of wires , which one you suggest , local or global variables? and why ? 
    thnxxx alot

    blue silver wrote:
    I want to use variables instead of wires , which one you suggest , local or global variables? and why ? 
    In LabVIEW, the wire is the variable.
    Local and global variables have their limited use in certain UI tasks, but lead to inefficient, error prone, and hard to maintain code.
    Local variables create extra data copies in memory, which can be expensive
    They break dataflow and thus lead to race conditions.
    To "fix" the race conditions, you need to clutter your code with sequences.
    ... it's an evil cycle!.
    Why do you think you need local and global variables?
    If you "want" to use them, you are probably misguided. Typically, you should only use them if you "need" to! There are legitimate uses for them.
    LabVIEW Champion . Do more with less code and in less time .

  • Adding tab to typedef tabcontrol causes class conflict with global variable

    Hi,
    I am quite new to labview. I have to update an existing program and I have a problem whith a tabcontrol. In attachement, I give you a very simple solution showing my problem.
    I have defined a simple tabControl in a typedef ctl. I had it to a VI and in block diagram of this VI, I want to fill a global variable with this control and this global variable is set as "Include Data Type".
    When creating my ctl file with a simple tabcontrol, there is no problem but my tabcontrol only contains 2 tabs. When I use "Add page after" in my ctl file to create a third one, after saving, I get a class conflict error on wire to global variable in my block diagram.
    If I remove added page, all is OK again. I don't understand why adding a new page causes a class conflict. In my attachement, it is very simple but in program that I have to modify, I already have 15 tabs and I just want to add a 16th one so, I am sure there is a mean, but impossible to fond it after many hours...
    If someone can tell me how to make my example works with "Include Data Type" (if I remove it, it always works but that is not what I want) and adding an additional tab, it would hemp me a lot!
    Thanks in advance.
    Yohann
    Attachments:
    test2.zip ‏11 KB

    The problem is that the tab is an enum, and you can't wire two strictly typed references of two different enums together, because they are considered different data types. What you can do is right click the reference control in the global variable and select Show Control, which will show the data type of the reference. You can then replace the control inside the reference with the typedef, which will cause it to update correctly.
    Although that will solve the problem, if you have the reference to a tab control in a global variable, you probably have some issues with your code, but that's not something which can be commented on without more details.
    Try to take over the world!

  • RT executable causes functional global variable VIs to become non-reentrant

    Hi,
    I am having a small issue with functional global variables (Repositories). The attached VI is a sample functional global variable I created that stores double precision numeric values. The VI properties are set to normal execution. I use this VI to pass data between loops running in real time on a PXI platform. When running my application from the project explorer (not creating executable) the VI functions as it should and passes data between my loops with no issues. But when I create a real time executable of my application and run it on the PXI, it does not share data between instances of the VI. My work around this issue is to change the VI properties execution priority to Subroutine but it forces me to modify my VI slightly for this to work (I have to remove the property node). I am not sure why this is happing. I have seen some applications with this VI that appear to function normally in development and in executable with the VI properties execution priority set to Normal. Any comments or suggestions are welcomed.
    I am running LabVIEW 2009, PXI-8186, and Windows XP
    Thanks
    Attachments:
    RT Repository DBL Numeric Command Ver 2.ctl ‏5 KB
    RT Repository DBL Numeric Element Ver 2.ctl ‏5 KB
    RT Repository DBL Numeric Ver 2.vi ‏25 KB

    Many properties require the front panel to be loaded in memory; the property you're using, NumItems, appears to be one of them (look at the help, you'll see that it says "Loads the front panel into memory.")  However, VIs running in an executable on RT do not have front panels, so those property nodes will not work.  If you were to log the error out terminal from the property node in your executable, you should see that an error occurs.  As a result, you're getting a 0 value out of the property node, causing your VI to output unexpected results.
    My recommendation is that you replace the property node with the function GetNumericInfo found in vi.lib\utility\VariantDataType.  It has an output called EnumNames.  Take the size of the EnumNames array and use that in place of the output from the property node.  This will work on RT.
    Note that this has nothing to do with re-entrancy, and the key hint is that the VI works when you remove the property node.

  • Can LabVIEW global variables be shared between UUT sequence steps in the parallel sequence model?

    Sorry for this simple question,  I'm having a hard time finding this answer.
    If I launch a sequence to run on two UUTs in the parallel sequence module,   can I get both UUTs to run LabVIEW vis that use global variables such that :
    1) UUT 0  executes 20 LabVIEW Vi  steps asynchronously,  5 of which access data from LabVIEW global variables A, B, C (Strings)
    2) UUT 0 executes the same 20 LabVIEW based steps asynchronously  5 of which access data from then same LabVIEW global variables A, B, C (Strings)
    I am a little worried that using file globals may have some delays or more of a race condition than using native LabVIEW global variables like in a single labview application perform.  
    QUESTION 2:  Are file globals actually written to the hard drive and shared between parallel sequences through file transfer?  OR  are they in memory?
    Brad Whaley
    LabVIEW Certified Engineer

    Hi bdwhaley,
    Are your parallel sequences only reading from the global variable? Or are they writing to the variable as well? If it is just reading, then you should be okay. File globals are read from memory. Every time they are read, a copy of the data is made in memory.
    Humphrey H.
    Applications Engineer
    National Instruments

  • How to assign local variable to global variable dynamically in adobe livecycle designer 7.1

    Hi All,
    i want to assign my textfield value to global variable dynamically.so that where ever i want , i will access my global variable.so it is possible in adobe livecycle designer 7.1. kindly suggest me method.Thanks in advance.
    Thanks & Regards
    Ganesh

    Please remove all adobe livecycle designer versions from your local pc.
    restart your pc to be sure, that all temp data is deleted.
    download the newest ald version from service.sap.com and install it.
    have fun with developing adobe forms with sap transaction sfp.

  • How to get the value of the global variable of test stand in labview User interface?

    Hi.
     Can anyone Please share examples and tell me to how access the test stand global variable using labview user interface.
    Solved!
    Go to Solution.

    I'm not surprised that what you are doing doesn't work.  The Start Execution UI Message is triggered when the user clicks a button to start an execution.  Realize that most executions go through a process model.  So you could be looking at the sequence context of the process model and not your client sequence file.
    I recommend reading that link I posted above.  UI Messages are your best bet but you cannot just piggy back on an existing UI Message like this.  They may not be getting sent at the time you need them to be.  The only way to ensure you get what you want is to trigger one yourself at the right time.
    Regards,
    jigg
    CTA, CLA
    teststandhelp.com
    ~Will work for kudos and/or BBQ~

  • Call function in LabView from a DLL, then access global variable from DLL

    I have created a DLL in LabWindows with a function and a structure.  I want to call the function from within LabView and then access the global structure.  I am able to call the function from the DLL with a "Call Library Function Node" and can access the return value, but I cannot figure out how to access the global structure.  The structure is declared in the DLL header file with __declspec(dllimport) struct parameters.
    Is there any way of accessing this structure without using the Network Variable Library?
    Solved!
    Go to Solution.

    dblok wrote:
    When you say "access to" or "the address of" the global variable, do you mean to pass the variable as an argument to the function call in the DLL?  If so, then I was not really sure how to pass a cluster from LabView by using the "Call Library Function Node".
    Yes, that's exactly right.  I would include a pair of helper functions in the DLL to read and write the global variable.  Alternatively you might write separate helper functions for each field inside the global structure, depending on the number of fields and whether you want to do any validation on the values.
    You can pass a cluster by reference to a function that expects a struct by setting the parameter to Adapt to Type, so long as the cluster does not contain any variable-length elements (strings or arrays).  The cluster needs to match the struct exactly, and sometimes that involves adding extra padding bytes to make the alignment work.  Variable-length elements in LabVIEW need to be converted to clusters containing the same number of elements as the struct definition (for example, if your struct contains char name[12], you would create a cluster of 8 U8 values, and you could use String to Array of Bytes followed by Array to Cluster to convert a LabVIEW string into that format).  If the struct contains pointers it gets more complicated, and it may be easier to write functions in the DLL to access those specific elements individually.
    If you can't get this working or need help, post your code and an explanation of the error or problem you're seeing.
    EDIT: it is also possible to include a single function in the DLL that returns the address of the global variable, which LabVIEW can then use to access and modify the data, but that's more complicated and likely to lead to crashes if you don't get the memory addressing exactly right.

  • How to build labview global variable into dll?And how to use it in vc++ program?

    Hi!
       I want to build labview application into dll and use vc++ to call it.The labview program is a little complex,for it has many interface to vc++ and has while loop in it.When I use vc++ to call it,I must use vc++ to do other things.That is to say,vc++ creates a new thread to provide for the labview dll to run.the vc main thread goes on to other things.But the vc++ main thread must communicate with the labview dll by setting its inputs' parameters and get the results of running labview dll.Can you advise me how to realize it?
       I think global variable of labview could be useful when realizing the communication betweeb vc thread and labview dll.So I want to ask whether the labview global variable could also be built into dll and use it.Could you please tell me how to realize my idea?
       Thank you!

    [email protected] wrote:
    Hi!
    I want to build labview application into dll and use vc++ to call
    it.The labview program is a little complex,for it has many interface to
    vc++ and has while loop in it.When I use vc++ to call it,I must use
    vc++ to do other things.That is to say,vc++ creates a new thread to
    provide for the labview dll to run.the vc main thread goes on to other
    things.But the vc++ main thread must communicate with the labview dll
    by setting its inputs' parameters and get the results of running
    labview dll.Can you advise me how to realize it?
       I
    think global variable of labview could be useful when realizing the
    communication betweeb vc thread and labview dll.So I want to ask
    whether the labview global variable could also be built into dll and
    use it.Could you please tell me how to realize my idea?
       Thank you!
    You
    can't access LabVIEW globals directly from a caller to the LabVIEW DLL.
    However there is no problem in providing specific accessor VI functions
    to that global and export them as additional functions from the DLL.
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Local and global variables in ABAP Debugger

    hi guys.
    we have the following support package:
    SAP_BASIS     640     0025     SAPKB64025     SAP Basiskomponente
    I would like to use in the debugger the local and global variables tab strip, but I can not find it. Is it possible. that our support package is too low for this functionality?
    Thanks a lot.
    rudit
    Edited by: Rudolf Tremmel on Aug 17, 2010 8:35 AM

    Starting with SAP NetWeaver 6.40, SAP released a new version of the Debugger.
    The Debugger available in Release 6.40 was not considered complete (and was
    not the default debugger as a result)
    The Variable Fast Display tool currently has four tabs . The first
    two are provided empty, and you can either type or double click a name in the
    source code to add it to the list. The third tab (Locals) shows all local variables
    for the current program modularization unit, and the fourth (Globals) shows all
    global variables in the current program.

  • Making dll from VI containing labview global variable ?

    I've made dll from VI containing labview global variable.
    But, when I write a c program calling a function from the dll, it returns just error.
    The goal is to read a labview global variables from c program. What can i do for it ?

    Hi
    If you don't use the dll in your LV app, it will be difficult, because it will be in the adress-range of you c app. So any writing of values to the global variable in LV, won't affect the variable in the dll.
    What you can do is some kind of client-server architecture. You need a third app, which just does the data exchange - so you should be able to write a value from LV and read it from c.
    There already have been discussions about similar topics - just search the forum.
    Thomas
    Using LV8.0
    Don't be afraid to rate a good answer...

Maybe you are looking for

  • Pages 08 will not open

    Pages 08 is very slow to open or will not open at all.  I am using OS X version 10.9.3 and having the same problem on my imac and macbook pro.

  • Changing id3 tags from iTunes to original file

    Hi! I have been changing a lot of id3 tags to the files through iTunes but it doesn't change it for the original file. Is there anyway to make that work? Thanks!

  • Only Partitions Showing Up In Disk Utility, No USB Drive

    I recently reformatted a 1TB WD My Passport Ultra to the GUID partition table with three partitions (400-550-50) using the Mac OSX Extended Case-Sensitive Journaled Encrypted filesystem. Now in Disk Utility the actual disk is not showing up, instead

  • Tips on making my iMac 7.1 run faster?

    I've tried cleaning (with Clean My Mac), moving files to external hard drive, not opening applictions on launch, etc. Still painfully slow... If I re-start it works faster for a while, then seriously slows down if I have more than 3 or 4 applications

  • Does Target Disk Mode work between FireWire 400 and FireWire 800 ports?

    Can I mount one as an external volume for the other Mac and vice versa? The one with FireWire 400 port runs on OS X 10.5, and FireWire 800 one has OS X 10.6 installed. If it works, I am thinking of buying an 800-400 adapter.