Utilize electrical circuit design and 8051 Assembly through the CV-8052 soft processor to make an 8-bit binary adder, A 2-digit BCD adder/subtractor, a programmable HH:MM:SS clock, and a programable calculator.
Through the University of British Columbia, I took CPEN 312, Digital Systems and Microcomputers, where I undertook a diverse set of 8051 Assembly projects. I completed these projects with both simple gates and electrical systems and by using the CV-8052 soft processor on an Altera DE0-CV board. The projects ranged from an 8-bit binary adder to a programable calculator. Utilizing buttons, switches, and VHDL coding, I interfaced with 7-segment displays and LED arrays. The experience included working with finite and programmable state machines, providing a deep dive into ultra-low-level firmware. This exposure ignited my passion for the intersection of software and hardware.
<aside> 💡 These projects introduced me to the world of firmware and allowed me to gain valuable skills in electrical and software design. Interface design with buttons, switches, and 7-segment displays, broadened my expertise. These projects nurtured a unique combination of technical versatility and problem-solving skills. Such skills are invaluable in my engineering career, enabling me to navigate firmware challenges, design efficient interfaces, and integrate software with hardware seamlessly. This hands-on experience has proven instrumental, laying a robust foundation for tackling multifaceted projects in my engineering career and university projects.
</aside>
Design and simulate with Multisim a 2-bit decoder that displays the digits that correspond with 4 specific assigned numbers using a 7-segment common anode display. Using only two push buttons and only DTL NAND logic gates.
For this project, I designed the logic of the different input combinations and their respective outputs.
B | A | Output |
---|---|---|
0 | 0 | 2 |
0 | 1 | 1 |
1 | 0 | 5 |
1 | 1 | 9 |
Rough Sketch of Digital Logic
By utilizing two CD4011 (4 Gate NAND) chips, I was able to use two push buttons and the combinations listed above to display different outputs. The design of this project included wiring the 7-segment display correctly to each gate to change which segments were turned off and on.
The wiring of the chips and 7-segment display was done using a breadboard.
The wires ideally would be flush to the board and straight, but were given in a multitude of lengths in the lab and not cut to length.
This project included designing, coding, and testing using the Altera DE0-CV board an 8-bit binary adder/subtractor. First, using the switches on the board to input numbers then display answers with LEDS.
This project entailed designing, coding, and testing a 2-digit BCD adder/subtractor where the answers were displayed on six 7-segment displays.
This project required implementing a 32-bit calculator using the CV-8052 soft processor and the 7-segment displays available in the DE0-CV board.
To use this