Labdabeta 182 Posting Pro in Training Featured Poster


I am working on making myself a digital clock (as a fun little project) and I want to have two buttons, one to increase a value (like the hour) and one to decrease, mainly because I am tired of the clocks where you have to button mash the 'increase' button to bring the hour back down. As such I want to construct an up-down counter that would increment on the rising edge of one input and decrement on the rising edge of another. I have one that increments on the rising edge of the clock if the extra input is 1 otherwise it decreases with the clock. The issue is that I need to convert this to what I want. I have tried the following, but it didn't work. Is it merely an issue with my simulator? or do I need a better solution?

The circles at the top are outputs, the squares at the bottom are the reset inputs. The square chips are positive edge triggered toggle flip flops with set marked as 1 and reset marked as 0. The unmarked rectangles are signal splitters (left is on when the input is 0 and the enable line is 1, right is on when the input is 1 and the enable line is 1).

Original Clocked version: (top is the increment input [incrementation happens iff it is 1] bottom is clock)


My attempt at unclocked version: (right is increment on rising edge, left is decrement on rising edge)