After I posted my ATDH1150 teardown yesterday, I got to thinking about the "JTAG-X" port on the device:
It's a 2x7 JTAG port that looks to be wired to the same lines as the 2x5 "JTAG-A", except that one of the two rows is almost, if not all, connected to GND. I'd seen this done other ribbon cable type connections, but I never really thought much about why this was done. The effect of it is to make every other wire in the ribbon a GND line. I'm probably butchering terminology here, but I think this is a form of shielding. It helps to reduce electromagnetic interference, or cross-talk(is that the right term?) between the signal lines.
My experiments so far with my AVR Dragon-breadboard setup lead me to strongly suspect that noise was the culprit, and contrary to my initial intuition, many types of noise can become more of problem with higher voltages.
I have some extra long 0.1" header pins on order, to make a new lean and mean JTAG ribbon cable-Breadboard adapter, but in the mean time, I decided that maybe trying to "shield" the ribbon cable might work around my problem. So I rigged a super crude shielded ribbon cable:
My shielded JTAG cable, MacGyver style. |
It worked! As the time of writing, I have not put it to heavy duty use, but my test use case passed 10/10 times where before it failed 10/10. (My test case was just running the "verify" in the Atmel AVR programming dialog, I was a afraid of burning out my flash with repeated flash attempts).
To make this shielding, I took a length of wire almost as long as the ribbon cable, and stripped it and very loosely wound it around the cable. I then took a rectangle of aluminum foil and made an "envelope" around the cable and wrapped it twice.
I think I'm going to construct a more sturdy solution and use that with the new programming header I'm going to make, and I
yay science.
--P
No comments:
Post a Comment
I welcome you're thoughts. Keep it classy, think of the children.