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.

CCS/PROCESSOR-SDK-AM335X: GPIO doesn't detect input signal

Part Number: PROCESSOR-SDK-AM335X
Other Parts Discussed in Thread: AM3356

Tool/software: Code Composer Studio

 I use AM3356-ZCZ and would like to use K17pin and K16pin as QEP mode as encoder counter.

But it is necessary to detect present High/Low status of the pins as GPI mode, too.

When I input 3.3V into 16pin, the voltage of K16 becomes 2.2V.

And GPI_INPUT_REGISER is kept "0".

I think that even if K16 is QEP mode, GPI register detects whether High or Low.

What should I check?

  • No, this is not true. The GPIO_DATAIN register will reflect the pin states only if the pin is pinmuxed to GPIO mode.
  • Hi,Biser-san.
    Thank you for your prompt response, but I face to strange issue.

    I changed Pad-configuration from "QEP" to "GPIO".
    GPIO configuration is Input.
    I put 3.3V into those pins, but GPIO_DATAIN remains "0".

    I removed any connections to those pins, and I changed GPIO configurations into output.
    When I set output "1", and those pins changed to 0.7V.
    Then INPUT status were kept "0".

    I tried other GPIO pins, but their INPUT status changed "1" when GPO ="1".

    I tied another identical board, it showed same phenomenon.
    (K16 and K17 can't output 3.3V.)

    I can't guess any reason.

    If you have any idea, please let me know how to check this problem.

    Thank you, best regards.
  • Do you have anything connected to these pins?
  • Hi, Biser-san.

    Thank you for your inquiry.

    I attached the connection diagram of these GPIO pins and other correct pins.

    Though GPIOs (in P.2) are correct , GPIO(P.3) are incorrect.

    Of course, when I tried GPO mode in K16 and K17 pins, I removed R556 and R557

    in order to avoid output colligion.

     I don't think there are any broken process or incorrect usage.

    Please confirm attached file, and if any idea, pelase let me know.

    Thank you, best regards.

  •  Hi,Biser-san. Happy New Year.

    I found strange behavior while starting up.

    As attached below, I started up my board without any firmware (FLASH is empty.),

    and connected K18 pin and K16 pin to 3.3V directly.

    The left image is correct behavior (K18 pin as GPIO3_9), so that 3.3V is kept flat.

    The right image is incorrect behavior (K16 pin as GPIO0_21), so that 3.3V dropped to 2.2V at 3.0s after starting up.

    I think that K16 pin is pulled to GND inside the AM3356 device, except starting-up 3.0s.

    If you have any idea or clue, please let me know.

    I'm sorry that our office is off until 8/Jan. Please be patient unless any response.

    Thank you, best regards.

    GPIO_strange_starting_up.pdf

  • What is your boot sequence?
  • Is this resolved? If so, please mark the thread as answered so we can close it.
  • Hi, Biser-san.

    I'm sorry that my response is so late.

    This problem is carrying on now.

    My boot sequence is below.

    SYSBOOT[4:0] = "10001".

    1st = XIP w/WAIT(MUX1)

    2nd = UART0

    3rd = EMAC1

    4th = MMC0

    At first, AM3356 boot up via NOR-FLASH, but now NOR-FLASH is empty.

    Then, UART0(E15,E16pin) is unconnected.(If E15 and E16 is UART0 boot)

    I can't understand which pin  EMAC1 and MMC0 is.

    Please give me any advise.

    Please take care of myself this year.

  • I think I can see what's happening now. Pins K16 and K18 are used in EMAC boot (see section 26.1.9.4.4 of the AM335x TRM Rev. P), and there may be a voltage level conflict. Can you try a boot sequence where EMAC boot is not present? for example SYSBOOT[4:0] = 00101b or 00100b ?
  •   Hi, Biser-san. Thank you for your answer.

    I confirmed that GPI can detect signals correctly without EMAC boot.

    I suppose that EMAC mode caused any latch-up and even if PAD-control changed into GPIO mode,

    the pin didn't work correctly.