How to use the logisim software to design your first digital clock

163 VIEWS

·

Logisim is free computer software used for digital circuits simulation. It was developed by Carl Burch of Hendrix University (from 2001 to 2011). It was created using JAVA and the Swing graphical user interface library. The Logisim software can be found and downloaded for free through a simple google search.

Familiarizing yourself with the Logisim software interface

After downloading and installing the Logisim software, you will need to first familiarize yourself with its graphical user interface before you can use it without any difficulty. In this article, I will give a very brief overview of the graphical user interface of the Logisim software. However, I would suggest that you read through the documentation of the Logisim software (which can be found here: http://www.cburch.com/logisim/docs.html), to give you more knowledge on how to navigate through the software.

The user interface of the Logisim software

Fig. 1 below depicts the various parts of a typical Logisim software interface.

Fig. 1

–    The Menu Bar: contains the various instructions that can be executed in the Logisim software.

–    The Toolbar: contains shortcuts to the most commonly used commands in the Logisim software. The table in Fig. 2 below depicts the various commands on the Toolbar and their functions.

Fig. 2

–    The Explorer Pane: contains a list of digital circuit components (such as wiring, gates, multiplexers, etc.) that are available for digital circuit design in Logisim.

–    The Attribute Table: gives detailed attributes of digital design components (e.g. AND, OR and XOR gates). It also enables the attributes of these digital design components to be edited.

–    The Canvas: the area in which digital circuits are created and designed. The Canvas enables digital circuits to be designed and simulated simultaneously.

Basic information about the different components of a digital circuit

In this article, I will give a brief overview of only the components I would use to construct the digital clock circuits. However, I would advise that to deeply appreciate and understand the various digital circuit components and their functions, that you read up on them using the following link: https://www.studytonight.com/computer-architecture/basics-of-digital-components

Fig. 3 below showcases the various digital circuit components and their functions.

Fig. 3

 

Designing the digital circuits

To successfully design the circuitry of the digital clock, we must first design the circuitry of the Seven-Segment displays to be used in the digital clock circuit to show the time.

Designing the Seven-Segment display Circuit

The Seven-Segment display circuit is made up of seven different sub-circuits. Each sub-circuit controls a segment of the Seven-Segment display, and each of these segments is identified with an alphabetical letter (from a to f respectively) as shown in Fig. 4 below.

Fig. 4

The main idea behind the Seven-Segment display circuit is that a segment lights up if it constitutes a part of the representation of the number that the Seven-Segment display is trying to depict. For example, as shown in Fig. 5, if the number that the Seven-Segment display is trying to depict is zero, then the segments a, b, c, d, e and f should light up, and the segment g should not.

Fig. 5

The circuit decides whether a segment on the Seven-Segment display should light up or not by checking the input bit value of that segment. If the input bit value of a segment is 1, that segment is lit up by the circuit. However, if the input bit value of a segment is 0, that segment is not lit up by the circuit.

The Seven-Segment display circuit designed for this article operates on a four-bit input signal. Because of this, any number that is to be depicted on a Seven-Segment display is first expressed in terms of four-bit binary digits, and then, the segments of the display associated with this number are lit up. For example, before the number 1 is represented in the digital circuit, it is first represented in its four-bit binary form (which is 0001) and then, the segments in the display which are associated with the number 1 are lit up as displayed in Fig. 6 below:

Fig. 6

The Seven-Segment display circuit can be designed by combining the digital circuit components in the Logisim canvas area, as shown below in Fig. 7:

Fig. 7

Designing the digital clock circuit

After designing the Seven-Segment display digital circuit, create a new Logisim canvas and import two copies of the Seven-Segment display circuit into this new canvas. After doing this, select two Seven-Segment displays from the Explorer Pane of the Logisim software and place each one beside a different Seven-Segment display digital circuit.

After this has been done, select wires from the Explorer Pane of the Logisim software and use them to connect the various output pins of each Seven-Segment display circuit to the input pins of their corresponding Seven-Segment displays, as shown in Fig. 8. This is done to ensure that each segment in a Seven-Segment display is controlled by its corresponding sub-circuit in a Seven-Segment display circuit.

Fig. 8

In Fig. 8, both the first and second Seven-Segment displays represent the minute displays of the digital clock.

The next step is to use a splitter and some wires to connect the input signal pins of each Seven-Segment display circuit to a counter. The main reason for connecting the input signal pins of the Seven-Segment display circuits to the counters is to ensure that the input signals that are sent to the Seven-Segment displays are regulated. This step is demonstrated in Fig. 9:

Fig. 9

The next thing to do is to ensure that the counters do not exceed the number 9. This is because the Seven-Segment displays can only showcase numbers from 0 to 9.

We can ensure that the counters do not exceed the number 9 by using an AND gate to keep track of the value of the numbers that are currently being displayed on the counter. The AND gate is meant to reset the number displayed on the Seven-Segment display to zero immediately if the number displayed on the counter becomes more than 9.

The last step in the formulation of the digital clock circuit is connecting two AND gates, two splitters, two counters and a clock to the circuit. The purpose of the clock in the circuit is to release binary input signals every second. The purpose of the counters is to keep track of the input signals being released by the clock. The purpose of the splitters is to split the input signals released by the clock into the number of binary digits required by the circuit to function effectively. The purpose of the first AND gate is to ensure that an input signal is sent to the first Seven-Segment display circuit every 60 seconds for every 9 minutes. Finally, the purpose of the last AND gate is to ensure that an input signal is sent to the second Seven-Segment display circuit every 10 minutes. If you have done everything properly, your circuit should have no problem displaying from 0 to 59 minutes. Apply the same logic above to connect another Seven-Segment display to the circuit to represent the hour display of the digital clock.

The entire digital clock circuit is displayed in Fig. 10 below:

Fig. 10

After designing all the required circuits, click Simulate and then Ticks Enabled to watch your clock come to life. 

Conclusion:

I hope that through this tutorial you have learned a little about electronics and how to use Logisim to make a digital clock.

Do you think you can beat this Sweet post?

If so, you may have what it takes to become a Sweetcode contributor... Learn More.

David Sasu is a junior studying Computer Science in Ashesi University. He is passionate about understanding technology and using it to solve important problems. He is currently working on the creation of information systems for under-funded orphanages in his country, Ghana. He hopes to specialize in the fields of Artificial Intelligence and cybersecurity to enable him to create systems to help safeguard and improve the African continent.


Discussion

Click on a tab to select how you'd like to leave your comment

Leave a Comment

Your email address will not be published. Required fields are marked *

Menu