This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Compiler: DLPC350 trigger out for camera capture(software control)

Other Parts Discussed in Thread: DLP4500, DLPC350, DLP-ALC-LIGHTCRAFTER-SDK

Tool/software: TI C/C++ Compiler

Hello,I have a problem about trigger out.

I want to control DLP4500 project patterns and trigger out camera to capture patterns at the same time,but I find the camera only can be triggered once!where my error in my code?

the following is my C++ codes,wishing for solving my question.Thank you very much!

Tips:I can use LightCrafer 4500 control software to trigger camera normally! so I think the problem occured in my code.

----------------------------------

DLPC350_USB_Init();
    DLPC350_USB_Open();
    if (!DLPC350_USB_IsConnected()) {
        return -1;
    }

    DLPC350_SetMode(true);
    DLPC350_PatternDisplay(0);
    DLPC350_SetPatternDisplayMode(false);
    DLPC350_ClearPatLut();
    DLPC350_SetPatternTriggerMode(1);
    DLPC350_SetExposure_FramePeriod(90000, 90000);


    DLPC350_SetTrigIn1Delay(1);
    /*
    DLPC350_SetTrigOutConfig(unsigned int trigOutNum,bool invert,unsigned int rising,unsigned int falliing)
    trigOutNum:1=TRIG_OUT_1;2=TRIG_OUT_2
    invert:0=active high signal,1=active low signal
    rising:rising edge delay control.each bit adds 101.2ns 0xBB=0.00us
    falling:falling edge delay control.

    return >=0 = pass
    */
    DLPC350_SetTrigOutConfig(1, false, 187, 187);
    DLPC350_SetTrigOutConfig(2, false, 187, 187);

    const int numberOfPatterns = 8;
    const int numberofImages = 6;
    unsigned char imageIndices[numberOfPatterns];
    int countr = 0;
    for (int j = 0; j < numberofImages; j++) {
        for (int i = 0; i < numberOfPatterns; i++) {
            imageIndices[countr] = j;
            if (i == 7000) {
                DLPC350_AddToPatLut(0, i, 1, 7, false, false, false, false);
            }
            else {
                DLPC350_AddToPatLut(0, i, 1, 7, false, false, true, false);
            }
            countr++;
        }
    }

    DLPC350_SendImageLut(imageIndices, countr);
    DLPC350_SendPatLut();
    DLPC350_SetPatternConfig(numberOfPatterns*numberofImages, false, numberOfPatterns*numberofImages, numberOfPatterns*numberofImages);
    unsigned int status;
    DLPC350_ValidatePatLutData(&status);


    DLPC350_PatternDisplay(2);

-----------------------------------------------