Date of Birth Project
Project Overview
The purpose of this project was to figure out the expressions and then simulate and breadboard them in a seven segment display to create our date of birth. There were 5 constraints, they were: we had to use a common cathode seven segment display, the limiting resistors were only allowed to be 150-270 ohms, we had to use the karnaugh mapping technique to find our expressions for each segment, and we had to have at least 1 segment with NOR and 1 with NAND chips. This page will describe the process and show each individual step of the process from start to finish.
Truth Table and Karnaugh Maps with simplified logic for each of the Seven Segments
The purpose of the truth table is to find the outputs from certain inputs for each individual switch. In this truth table there is also 7 additional columns for the seven segment display.
Truth Table:
This truth table includes 8 outputs, but only 6 are needed because only six are utilized that is why the last two are x' s in all columns. The x's are there because the output doesn't matter for those inputs, it's not relevant for the project. There are the a-g columns to represent each segment of the display and how it acts for each output.
Karnaugh Mapping:
K-mapping works by grouping together as many 1's, on's, as you can then finding the minterm for each group of circled 1's, x's can used as well for a 1 or 0. All of my expressions are in the Sum of Products form instead of product of sums. I arrived at each minterm by taking all the values in the truth table filling in the k-mapping box, grouping, then finding the minterm. K-mapping is used instead of boolean algebra in this project because it requires less work and is quicker saving a lot of time. I have 7 expressions because 1 is for each segment of the seven segment display.
This truth table includes 8 outputs, but only 6 are needed because only six are utilized that is why the last two are x' s in all columns. The x's are there because the output doesn't matter for those inputs, it's not relevant for the project. There are the a-g columns to represent each segment of the display and how it acts for each output.
Karnaugh Mapping:
K-mapping works by grouping together as many 1's, on's, as you can then finding the minterm for each group of circled 1's, x's can used as well for a 1 or 0. All of my expressions are in the Sum of Products form instead of product of sums. I arrived at each minterm by taking all the values in the truth table filling in the k-mapping box, grouping, then finding the minterm. K-mapping is used instead of boolean algebra in this project because it requires less work and is quicker saving a lot of time. I have 7 expressions because 1 is for each segment of the seven segment display.
MultiSim Implementation
The following image is the simulated version of my expressions that were found implemented into a seven segment display. I used this simulation to help me create my breadboarded version.
This circuit is in bus form. It has 3 inverter gates, 3 NAND gates, and 8 NOR gates. That means it requires 4 chips to be built: 1 inverter, 1 NAND, and 2 NOR. We use NAND and NOR because they are universal gates so you may be able to use less chips in some scenarios or just the same chip which is sometimes easier then mixing chips. When I switched from AOI to NAND and NOR it did require less gates for NAND but not NOR. Even though there were more gates with NOR it still only used 2 chips like the AOI, not counting the inverter. This was different with the NAND though because only 1 NAND chip was required. This is important because it makes it so that the circuit is simpler because less chips are used and so it is easier to follow wires and not get them confused. Seven segment display works by having an expression be wired or programmed for each individual segment create desired values when certain switches are changed. The difference between common cathode and common anode is that cathode requires power to work and anode requires ground to work. I'm using a common cathode because it is easier and is less confusing then trying to program and wire 0s instead of 1s which we have been doing for a while now. The purpose of the resistor before the seven segment display is to limit some of the power going into the display, only needs enough to power each LED, and the common value is about 220 ohms (150-270 range).
Bill of Materials
This table shows all the materials used to construct the simplified version of the circuit.
Component: Quantity:
NOR Chip 2
NAND Chip 1
Inverter Chip 1
MyDAQ 1
Breadboard 1
Wires 55
Component: Quantity:
NOR Chip 2
NAND Chip 1
Inverter Chip 1
MyDAQ 1
Breadboard 1
Wires 55
Bread-boarding
In this photo I am just beginning to create my circuit and had started by putting in my chips.
|
This is about halfway through my circuit and I was working on my more complex segments since they were more time consuming then the others.
|
This is the final product after all seven segments were created and it worked well when all the chips were pressed down.
|
During this second experience bread boarding I made only a couple mistakes. The first one was i had the inputs and outputs backwards for the NOR because I didn't pay attention to the orientation of it. The second mistake was that I forgot to put the output of the NOR chip into itself at the end, so I thought it was broken for like 10 minutes. I learned how to properly wire the common cathode while keeping in mind the chips and their orientations while creating it. The only trouble shooting I had to do was press in chips and test every time I completed a new segment.
Conclusion
During this project I learned how to properly use the common cathode seven segment display and how to use NAND and NOR chips correctly. The only thing I would do differently next time would be that I would pay closer attention to details with chips and take more time when figuring out the simplest solutions to wiring because when I was trying to make simple segments I sometimes overlooked things that were obvious and it took more time to find that solution. The only questions that I might have would be: How to make this but with a common anode and Is there a way to simplify the circuit even more.