I've noticed a little bit of "ghosting" (i.e. the segments displayed on one digit are being carried over a little onto the next), and I wondered if that's because the ULN2803 is not switching fast enough - should I add resistors to discharge any residual capacitance? (and, if so, what value/where should they be placed?!)
I'm assuming that the hardware looks ok to you then
I see that I could use a MAX7219 just to drive the segment anodes (via the UDN2981) in place of the 74HC595, but, as I understand the datasheet, the DIG0-DIG7 pins can only sink <500mA @ 5V, so I'd still need to use the ULN2803 on the low side? So not sure what the gain of using the MAX7219 over the 74HC595 would be?
Is there anything equivalent to the TPIC6B595 that can source current? (i.e. that could replace both the 74HC595 and the UDN2981 on the high side?)