To begin, my friend was building an 7 seg display counter using a programmable logic chip the other day. He was using a push button to control the pulses going into the PLD. We obviously had a bad bounce problem with the push button, but sometimes we could get it so all the numbers would sequence like they should(1,2,3,4,5..etc) with no jumps. In order to get a clean switch, I tried 2 things. I first tried an ordinary debouncing circuit using a 555 timer, and then when that didn't work right, I tried a one-shot multivibrator using the same 555. What was happening was the numbers would jump on the seven segment.(i.e. 0,2,3,4,5,7,9, repeat) always skipping the same numbers(1,6,8) as it sequenced. I thought maybe there was still some bounce issues or something so I tried it as an astable MV. Same thing happend, it would sequence through skipping the same numbers.
I looked at it on the scope and it looked fairly clean but I am no expert.
To make a long story short, I still can't figure out why it's happening. I can at least occationally sequence through all the numbers using the push button. But when using the 555 it skips numbers. Usually the same ones over again. There must be some reason why it's doing this, but it's beyond my current knowledge. Anyone know what's going on?
Any help is appreciated. Thanks.
EDIT: Also, the PLD is programmed so that it counts up only as the rising edge passes. 0 to 1. Not 1 to 0. Or in otherwords +dv/dt not -dv/dt if that helps.