0

In my current environment, the interrupt source comes from an FPGA on a daughter board and connects to a GPIO pin on an EVB:

daughter board (interrupt output signal from SD controller)--> EVB(GPIO pin with interrupt enabled).

The GPIO interrupt polarity is set as active-low. The GPIO pin's voltage is 3.3 V and the daughter board output signal is 0 V.

When I connect both signals, no interrupt is triggered.

If I connect the ground pin on the EVB to the GPIO pin, an interrupt can be triggered.

It seems that the daughter board output is not 'strong' enough to drive the GPIO pin to low.

I am not familiar with the details of electronics wrt GPIO interrupt level-sensitive trigger mechanism.

How is this possible?

What is a possible solution for it?

Update: Problem Now Solved

I have since resolved the issue.

The reason is that on the daughter board there is a switch (with a indicating LED) to turn on the pins. I was not aware of this switch until I report the issue to the FPGA engineer.

TonyM
  • 22,898
  • 4
  • 39
  • 64
bruin
  • 411
  • 2
  • 9
  • 3
    Are your grounds connected ? You can't have a wire with 0V at one end and 3.3 V at the other. – jp314 Apr 29 '22 at 01:27
  • Thanks for your comments @jp314. You are right, probably the voltage measurement was not correct. – bruin Apr 29 '22 at 02:46

1 Answers1

4

This does not sound like a "drive strength" problem. Either...

  1. Your signal grounds are not connected OR
  2. You do not have a true low impedance path between your interrupt source and interrupt destination. You can probably cross this one off quickly by measuring the resistance between the interrupt source and destination.
  3. Your pinout/wiring is incorrect

If you want to keep the two boards electrically isolated you will need to use a digital isolator or similar. Note that you will have to connect both signal and ground for both the source and destination in order to implement this.

If isolation is not a requirement then, as stated in the comments, you should connect the grounds between the two boards and try your experiment again. If this still does not solve the problem, then I would double check your wiring and pinouts.

mooshoomatt
  • 596
  • 2
  • 10
  • Thanks for your reply. for item 1, I just measured the resistance among 3 grounds (from evb, fpga, and daughter board), they are all zeros; for item 2, the dupond wire connecting the source and destiontation has a zero resistance; So it leaves item 3. I will double check the pin config on the daughter board. Thanks again. – bruin Apr 29 '22 at 02:43
  • Issue resolved, and yes, it's sort of incorrect wiring (updated my question in PS section). Thanks! – bruin Apr 29 '22 at 09:59
  • @bruin I am glad you got it figured out! – mooshoomatt Apr 29 '22 at 18:26