Project Overview
In this project, I will design a 60 second timer on MultiSim using two common cathode displays with 74LS48 drivers, a 74LS163 counter for the ones place, and an asynchronous counter with J/K flip flops for the tens place. The display will count, in seconds, from 00 to 59, and after 59, it will reset back to 00 and count again. When a reset switch is pressed, or connected to ground, the display will be 00 and it will hold until this switch is connected to power.
This project has many similarities, and small differences, to the previous project. For the Deli Counter project, I combined two up-counting circuits, as in this project, for the ones and tens places. In the Deli Counter project, rather than creating a continuous count that would repeat when it reached a certain number as in this project, I designed the circuit to pause when it reached 80. The 60 second timer does not pause at a certain number. Both projects, however, do incorporate the use of a reset switch, which resets the display to 00 until switched again, allowing the display to count up from 00. The Deli Counter project only used asynchronous counters while this project utilized a synchronous counter. A 74LS93 counter and a D flip flop counter were used for the Deli Counter and I used a synchronous 74LS163 counter and an asynchronous J/K flip flop counter for this project.
Final Project Conclusions
Synchronous circuits use the same time, or clock, while asynchronous circuits use one clock signal that goes through the first flip flop and then is distributed after that, creating a ripple effect. The 74LS163 is an example of a synchronous counter, while the 74LS193 is an asynchronous counter. The '163 contains four bits and only counts up; it also displays the last number that it senses before resetting. The '193 contains four bits and can count up or down; however, it does not display the number that it senses, it displays the one before that. I first started by copying and pasting a previously completed synchronous J/K flip flop, and setting it to load a 0 and detect a 6, because this will be the tens place, so it will count from 0-5 and then repeat. Then I made my ‘163 circuit based off of a previous circuit for the ones place; I grounded all of the load inputs (to load a 0), connected the clock (at 1Hz), and connected everything else to power, besides “LOAD.” I connected probes and used inverter gates to detect a 9, which means that a “9” will be displayed and then it will reset, and then I combined this “9” into a NAND gate, which will in turn reset the count to 0. At this time, I implemented the ’48 BCD to seven segment display drivers into each circuit, including the 220 ohm resistors for each segment, and the seven segment displays of course. With the use of the ’48 drivers, common cathode displays must be used, and these displays must be grounded. I tested both circuits individually to make sure that they were working as expected. Then I originally connected the two counters by inverting the output of the NAND4 gate for the ones place circuit, but I later ran into problems, so instead mirrored the design of the AOI logic below the ‘163 and created a NAND gate that would detect a 0, and I then connected that output to the clock of the tens place to fix the problem of the tens place advancing when the ones place displayed a “9.” I observed that the circuit automatically started again at “00” just after displaying “59,” and this is because of the limits that I set each counter to detect. The last thing that I had to do was create a single reset and hold switch. In order to do this, I added an AND gate just after the NAND gates for each counter, and one input of each AND gate was then connected to the switch, while the other was connected to the output of the NAND gate. When the switch was connected to ground, the output of each of those AND gates was a 0, resetting the count and holding in there because the CLEARs for the J/K flip flop were active low and so was the LOAD for the ‘163. Most of my classmates' circuits differed from mine because their clock for the synchronous tens place was connected from the load of the ones place with an inverter gate in between. Instead, I added additional logic below the ones place in order to toggle the tens place up when a "0" is displayed in the ones place.