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.

[OMAP-L137] Problem of Using dsp to control GPIO.

Other Parts Discussed in Thread: OMAP-L137

I add these codes to main() of loop example in dsplink(dspside),

 PINMUX11 = PINMUX11|0x00800000;
 GPIO_DIR23 = 0;
 GPIO_OUT_DATA23=0;

then my command is ./loopgpp loop.out 1024 100

but the pin GP3[14] isn't low level ,I can't control it.

Can you help me ? I am a starter.

 

  • What device is this?

  • my device is omap-L137,

    I change PINMUX11 = PINMUX11|0x00800000  to PINMUX11 = 0x00800000  ,the pin works, ha .

    but the arm side error, Linux is running on arm, linux give me a message "time warp detected",then linux can't run anymore.

    so ,I change this line to

    PINMUX11 &= 0xFF0FFFFF;

    PINMUX11 |=  0x00800000;

    the result is OK,arm and dsp both work well.But I can't understand,why? 

  • Your first try should have worked if PINMUX11[23:20] had a zero value.  Since it didn't, my guess is that PINMUX11[23:20] was set to a non-zero value when you performed the bit-OR function.  Instead of updating the value to 0x8, it added 0x8 to whatever value was already there.