Go to previous topic
Go to next topic
Last Post 22 Oct 2015 10:14 AM by  chad.grant
uP_GPIO_1
 5 Replies
Author Messages
chad.grant
New Member
New Member
Posts:18


--
21 Oct 2015 04:20 PM

    Hi,

    Still working on porting the DM3730 to work on our board that was originally developed for the iMX31. We were using a GPIO pin that is now connected to uP_GPIO_1 of the DM3730. I've set it up using the GPIO library:

    #define T_RADIO_BIN             (GPIO_11)


        GPIOHandle = GPIOOpen();


        GPIOSetMode(GPIOHandle, T_RADIO_BIN, GPIO_DIR_OUTPUT);


        GPIOSetBit(GPIOHandle, T_RADIO_BIN);


        GPIOClose(GPIOHandle);


     

    But when I put a logic analyzer on it, instead of it being at 1.8V it is going up and down as though something else is controlling it.

    I even tried setting the CONTROL_PADCONF register to make sure it was set up to go through GPIO_11:

    #define JTAG_EMU0               (0x48002A24)

        SetDWordAndValue(JTAG_EMU0, 0xFFFF0000);
        SetDWordOrValue(JTAG_EMU0, 0x00000004);

    I can see in the schematic that this pin is also EMU_0 and connected to a header, is that what is causing problems, and if so how do I turn it off?

    Thanks,

    Chad

    Stephen Bell
    New Member
    New Member
    Posts:5


    --
    22 Oct 2015 07:17 AM
    What OS are you using?
    Adam Ford
    Advanced Member
    Advanced Member
    Posts:794


    --
    22 Oct 2015 08:41 AM
    I assume you're using Windows CE with Logic Loader. My first instinct is that the pin Muxing is setup for JTAG. I have to do a little digging. I am off site today without a SOM-LV to test but I can try to point you to the information.

    If you download the DM3730 Techincal Reference Manual from TI (http://www.ti.com/lit/pdf/sprugn4) look for Table 13-6.

    In there is lists the pins, addresses and functions.

    CONTROL_PADCONF_JTAG_EMU0[15:0] 0x4800 2A24 must be set to MODE4 in order for it to act as GPIO.

    Hopefully that can help get you moving toward the direction you need. When I get back in the office, I'll try to test it on a SOM-LV.

    adam

    Adam Ford
    Advanced Member
    Advanced Member
    Posts:794


    --
    22 Oct 2015 08:43 AM
    You might want to try to modify the register in Logic Loader.

     

    I re-read your message, and it also looks like you're overriding the high bits to 0 in addition to the low bits.  I don't know if that is your intent, but it will make GPIO_31 muxed to the JTAG.

     

    I would suggest reading the contents of the register and change just the bottom bits [0:15].  If you don't want to use GPIO_31, you should leave it in safe mode.

     

    adam

    bradb
    Basic Member
    Basic Member
    Posts:203


    --
    22 Oct 2015 09:22 AM
    Chad,

    In WinCE, gpio_11 (uP_GPIO_01) is being used as a debug LED. Changes to the OEMWriteDebugLED function in platform\logic_arm_a8\src\oal\oallib\debug.c will be required before you can use gpio_11 (uP_GPIO_01) in your application.

    In Linux, gpio_11 (uP_GPIO_01) is also being used as a debug LED. Changes to the GPIO_LED2_SOM_LV define seen in arch/arm/mach-omap2/board-omap3logic.c at line 522 will be required before you can use gpio_11 (uP_GPIO_01) in your application.

    Best Regards,
    Brad
    chad.grant
    New Member
    New Member
    Posts:18


    --
    22 Oct 2015 10:14 AM
    Thanks for your help Adam and Brad. I am using WinCE and it was the OEMWriteDebugLED function in debug.c that was causing the problem. Thanks for pointing me in the right direction.

    Chad


    ---