Shop OBEX P1 Docs P2 Docs Learn Events
Pull-up and pull-down testing on I/O pins — Parallax Forums

Pull-up and pull-down testing on I/O pins

Tonight I've been testing pull-ups and pulldowns on the I/O pins.

While this is not exhaustive testing and there maybe my problems lurking, this is what seems to be happening.

The test routine in the ROM seems to need changing to
DRVL
WAITX
FLTL
WAITX 2-5 clocks
TESTP PA WC

and
DRVH
WAITX
FLTH (note H !!!)
WAITX 2-5 clocks
TESTP PA WC

I've done this on pins 7, 9, 11 & 13. Note TAQOZ reports pins 11 & 13 as pulldowns even tho the pin should be floating. Note a number of pins report as low!!!
Now, I tested with 5K, 10K and 15K pull-ups and pulldowns.
However, I always read pin 13 as LOW even with a 5K pull-up :(
As I said, I am not certain it's not my fault.

Next testing tomorrow evening.

Comments

  • We saw the same thing, Ray.
    Here's the thread with captures and table of what we saw, pin by pin. Along the the ten posts or so after it (Peter confirms he also seems something similar.
    forums.parallax.com/discussion/comment/1447899/#Comment_1447899

    There's a race condition going on with DIR and OUT that seems to cause the glitch.

    Peter reported he could clean up the dip with a small capacitor, I think he mentioned 20pF was enough. I noticed when I had the cro probe on P11 its 'phantom pulldown' (as reported by taqoz lsio command) disappeared.

  • Cluso99Cluso99 Posts: 18,069
    Ok. I hadn't associated the glitch with sampling the pins for pull-ups and pulldowns.
  • FYI
    I just tested P2D2 pin #13.
    4k7 pullup shows 'h' in TAQOZ and 'd' as pulldown.
    With no resistor shows 'd' instead of '~'

  • cgraceycgracey Posts: 14,133
    edited 2018-10-18 21:09
    On some pins, OUT-low reaches the pin circuit a few nanoseconds earlier than DIR-low. So, the pin starts driving low before it goes floating.
  • jmgjmg Posts: 15,145
    edited 2018-10-18 21:10
    cgracey wrote: »
    On some pins, OUT-low reaches the pin circuit a few nanoseconds earlier than DIR-low. So, the pin starts driving low before it goes floating.

    Are there any opcodes/pinmodes that can totally avoid that OUT-affects-DIR DIR-affects-OUT cross coupling ?
    Is it worth patching the ROM, so that those are used instead, as added insurance in case OnSemi cannot nail this issue entirely ?
  • cgraceycgracey Posts: 14,133
    jmg wrote: »
    cgracey wrote: »
    On some pins, OUT-low reaches the pin circuit a few nanoseconds earlier than DIR-low. So, the pain starts driving low before it goes floating.

    Are there any opcodes/pinmodes that can totally avoid that OUT-affects-DIR DIR-affects-OUT cross coupling ?
    Is it worth patching the ROM, so that those are used instead, as added insurance in case OnSemi cannot nail this issue entirely ?

    Absolutely. We can set the pin to drive high and float low, to avoid the whole problem. I was just thinking of changing the ROM this morning to do this.
  • evanhevanh Posts: 15,187
    Enabling registered outputs would be the safest.

Sign In or Register to comment.