BCD is just binary coded decimal. Your using a BCD to 7-segment convertor. The 74SL47N. (not a counter, just converotor) A BCD counter counting down from hex10 would skip 0F, 0E, 0D, 0C, 0B, and 0A and land on hex09. Counting up skipping those same hex numbers. The value is still stored as hex, but counts as if it was decimal. They might be what you need instead of using
binary coded binary to
count in decimal. I noticed one thing while trying to look up the datasheet on the 74LS193N. The 74LS
192N is BCD, so it might be easy to swap the 193's for 192's. I think they have a
carry output that would make it east to trigger the
carry event that you are doing manually. (Although, I wasn't sure I actually was looking at the datasheet for your exact chip. There was something unclear about the designation. Extra letters. I looked at "SN74LS193N3" More experienced people would probably know whether they were looking at the right thing.)
Apart from switching to a new chip...
Is there a way to activate the clock one cycle at a time and look at the logic level at these displayed locations and see what they are when the counter shows 38 and again when it switches to 29?
Just to try and see why this is happening.
--tim
edit:
My thinking is that the U3A NAND should not be triggering the "Decrement and Load" unless all 4 inputs are are 1111 (or 0000. The NANDing and INVERTing is still messing me up a bit.) But certainly not on 0111 or 1000. Not on a 7!!!
:endEdit
edit2:Got a link to the datasheet on the 193's?:endEditTwo