Digital Combination Lock using simple gates and flipflops

AI Thread Summary
The discussion centers on creating a digital combination lock circuit that verifies a hexadecimal input of 5-A-7 and activates an 'Unlocked' LED. A key limitation is that the combination is fixed, which can be addressed by incorporating memory to store three hex numbers and a method to switch between programming and operation modes. Participants explore options for storing input values, suggesting components like buffers or counters with parallel load features. There is also mention of using software tools like Diglog and LogicWorks for circuit design, with some uncertainty about permissible components for the assignment. Ultimately, the conversation emphasizes flexibility in design choices, noting that multiple solutions may exist for the problem.
sid78669
Messages
3
Reaction score
0

Homework Statement


Digital Combination Lock: To create a circuit that verifies the input from a hexadecimal as 5-A-7 and then lights up an 'Unlocked' LED. (DONE)

Bonus Points for:
The obvious limitation of this circuit is that the combination cannot be changed. This limitation can be
corrected by adding sufficient memory to store three hex numbers and a means of switching between
"program mode" and "operation mode." If you wish, you may use separate keypads for each hex digit and
the "input" (giving a total of 4 keypads). If you prefer, you may employ one keypad for programming and
another for input with a means of switching between each of the three digit storage cells. You may, if you
wish, use only one keypad for operation and programming all inputs. The choice is yours.

For full extra credit:

• Any hex digit 0 . . F can be stored in any of the three memory cells.
• The hex digits stored in the memory cells, result in a new combination for the lock and the lock will
open when the new combination is supplied via the input keypad.
• The combination is stored (persists) until it is changed by reprogramming the lock.
• The circuit uses only standard combinational and sequential logic components

Homework Equations


I am unable to understand what exactly can I use to 'store' the correct input value?


The Attempt at a Solution


attached is the basic circuit I created that verifies 5-A-7.
 

Attachments

  • Circuit.JPG
    Circuit.JPG
    23 KB · Views: 2,958
Physics news on Phys.org
sid78669 said:

Homework Statement


Digital Combination Lock: To create a circuit that verifies the input from a hexadecimal as 5-A-7 and then lights up an 'Unlocked' LED. (DONE)

Bonus Points for:
The obvious limitation of this circuit is that the combination cannot be changed. This limitation can be
corrected by adding sufficient memory to store three hex numbers and a means of switching between
"program mode" and "operation mode." If you wish, you may use separate keypads for each hex digit and
the "input" (giving a total of 4 keypads). If you prefer, you may employ one keypad for programming and
another for input with a means of switching between each of the three digit storage cells. You may, if you
wish, use only one keypad for operation and programming all inputs. The choice is yours.

For full extra credit:

• Any hex digit 0 . . F can be stored in any of the three memory cells.
• The hex digits stored in the memory cells, result in a new combination for the lock and the lock will
open when the new combination is supplied via the input keypad.
• The combination is stored (persists) until it is changed by reprogramming the lock.
• The circuit uses only standard combinational and sequential logic components

Homework Equations


I am unable to understand what exactly can I use to 'store' the correct input value?

What about using buffer or a counter that has a parallel load feature to store it?
 
Last edited:
I'm using diglog (my prof likes this software and so do I for its simplicity). The counter I found is 16 count. I however, have no idea how it works, other than just count the number of times it received a pulse at its clock.
 
sid78669 said:
I'm using diglog (my prof likes this software and so do I for its simplicity). The counter I found is 16 count. I however, have no idea how it works, other than just count the number of times it received a pulse at its clock.

I don't know about that software; I have LogicWorks. It has a component called a buffer which is just what you need. It stores whatever is on its inputs to its outputs when it receives an enable signal and ignores changing inputs otherwise.
 
OK, from the sound of it, it seems its the same thing as an SRAM8K. I'm still trying to learn how to use it, but I'm not sure if I am allowed to use it in the assignment. I have mailed my prof about it and if she's ok with it, I think I have a solution.

But just to clear all doubt, This is the only way to do it, right?
 
sid78669 said:
OK, from the sound of it, it seems its the same thing as an SRAM8K. I'm still trying to learn how to use it, but I'm not sure if I am allowed to use it in the assignment. I have mailed my prof about it and if she's ok with it, I think I have a solution.

But just to clear all doubt, This is the only way to do it, right?

With digital design I would never say something is the only way. You could always build your own buffer out of J-K or D flip-flops. It all depends on what parts you are allowed for the assignment.
 
Back
Top