Wednesday 7 September 2011

I SPI

I've been doing further assembly on my Milestag UMT PCB. I bought a serially driven 7 segment display module from Sparkfun. This module is the one recommended for use with the Milestag UMT board. It is used to display clip rounds remaining and life. However, I could not get the display to function correctly. I sometimes (about 80% of the time) got a corrupted display. I resorted to removing the PIC MPU from the PCB and wiring it up on a breadboard with just the display and run from a stabilised PSU. I still got the same results:
This should be displaying " 042". I made various attempts to fix it: Rewiring, shielded cable, more filtering caps, shorter sires. Nothing worked. I then noticed that when I picked the display up, it changed. I noted that this module has both SPI and TTL level serial inputs and when I touched the TTL input the display became corrupted. TTL level serial idles at logic 1, so I tied the serial input line high and I haven't seen any corruption since. The module accepts segment level commands. i.e. You can send 4 bytes of data representing the segments in each digit. Obviously the serial input was getting noise and this was being interpreted as a valid display command.

No comments: