Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

I need your help (digital circuit)

Status
Not open for further replies.

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
I was assigned a new project. This is the content of it:

We have 10 LED, each LED has a switch. When no switch is pressed, each LED is light up in every second, for example,
- at time t LED i is on then at time t+1 LED i+1 is on and LED i is off

When switch i is pressed, LED i is on forever and the process above continues without LED i. In other words, at time t, LED i-1 is on then at time t+1 LED i+1 is on (LED i is ignore).

How can I design the logic circuit to implement the above project. I need your help!
 

gauiver

Member level 5
Joined
May 10, 2003
Messages
90
Helped
2
Reputation
4
Reaction score
2
Trophy points
1,288
Activity points
676
well it depends how u want to do, either by microcontroller or gate level approach. suppose u want to do taht with a micro controller. when the key is pressed generate interrupt. with this generation of interrupt, the subroutine must be like
i=i+1;
this will automatically ignore the next LED due to increment.

if u want that in the future after pressing the key LED remains off then over-write the complete array discarding the no. of the desired one. i hope this might have helped u.
 

eltonjohn

Advanced Member level 4
Joined
Feb 22, 2002
Messages
1,435
Helped
64
Reputation
126
Reaction score
28
Trophy points
1,328
Activity points
16,326
Hi I don't know the level of your studies . This is pretty straight foward
if the system is synthetised from a state machine

is basically a counter with 4 variables ..defining 10 states ..
The state machine is the constructed by the trasition scheme


(state i ) ------- if CONDITION1 ----------> (state i+1)
(state i-1) --------if CONDITION2 -----------> (state i+1)


CONDITION 1: if NOT CONDITION2
CONDITION 2 : if switch i is closed


by constructing a machine with this transition scheme for i = 0 to 9
and synthesizing the equations you will solve your logic circuit !
 

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
my tutor does not allow us use microcontrollers. Please, I need your help.
(I can use only digital gates, Flip-Flop, counter, and register)
 

flatulent

Advanced Member level 5
Joined
Jul 19, 2002
Messages
4,629
Helped
489
Reputation
980
Reaction score
150
Trophy points
1,343
Location
Middle Earth
Activity points
46,689
state machine

Make an oscillator which drives each led with a square wave of the frequency you need. Then OR this with the switch to make the led go on all the time when the switch is thrown.
 

shahrol_hisham

Advanced Member level 4
Joined
Aug 1, 2002
Messages
111
Helped
2
Reputation
4
Reaction score
2
Trophy points
1,298
Location
malaysia
Activity points
869
u can used demux or shift register, if u used demux the input is pulse and the selector is point to counter ic. the output is connected to and gate each one. the another leg of and gate is cinnected to vcc
 

Igor_S

Member level 1
Joined
Sep 7, 2003
Messages
34
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
324
You may be would like to implement this like following:
1) Use shift register with "1" in single bit, shifting it with 1 Hz clock.
2) Each LED is controlled by 2-input OR gate.
3) Input 1 of each OR gate is connected to corresponding output of register
4) Input 2 of each gate is connected to output of RS flipflop
5) Each switch sets corresponding flipflop to "1".

Thus you provide that LEDs for flipflop settled to "1" are lit forever, others are flashing one by ojavascript:emoticon(':eek:')
Surprisedne.
 

volta

Junior Member level 3
Joined
Sep 8, 2003
Messages
30
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Location
Sweden
Activity points
265
Well I agree with some of the guys:

There are two approaches to solving this problem
- Use a microcontroller circuit
- Use a glue logic to implement your FSM (Finite State Machine).

Since you are not interested in using the ucontroller approach, then you should try to implement FSM using the following technique.

Any FSM has the following general path:

__________________ __________
Inputs ---> | Combinational Logic | --------> | Register(s) |
------------------------- ----------------
^-----------------| Feedback | --------<
You can easily implement the logic part using a MUX and you can use a simple D-Type latch / flip flop for implementing the storage element. 8)
 

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
shahrol_hisham said:
here is the circuit

Dear shahrol_hisham

First of all, I would like to send my best thank to you.

Secondly, can you tell me, what's dsa pin in 74HC164 ????

Lastly, I think you misunderstood my project. According to your circuit, the led is not ignored when contactor is pressed.

My project told that: when contactor No is pressed, the Led array is considered to lose the LED .

I can describe like that:

If no contactor is pressed, the LED array is relatively on every second (The CLK 1 Hz will do this job, period is 10 times). but when the contactor is is pressed, it is ignored in the sense that the period is 9 only.

If we use counter, when no contactor is pressed, the Mod of the counter is 10 but when the contactor is pressed, the mod reduces to 9.

Can some-one help me?

Thank you in advance!
 

boyzplus

Member level 1
Joined
Mar 15, 2002
Messages
35
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
253
hi all,

this kind of project is so simple if implemented with a micro... however i don't think that simple if implemented with discret circuit.

semiconductor, i have a good look at your problem can you tell

1. where are you up-to with this project?
2. when do you have to hand-in this in by? (eg 20/10/03)

cheers,
boyzplus
 

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
first of all, thank you for your interest of my problem boypluz.

Now, I'll answer your question:
2. My last due date is Nov 8, 2003
1. I don't understand your first question

Even I've been thinking of it and I've made some circuits to carry out this task, but all fail. I really need your helps!
 

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
yeah, I got 74hc164 datasheet! but your design does not give the solution to my project. Can you help me!
 

boyzplus

Member level 1
Joined
Mar 15, 2002
Messages
35
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
253
hi all,

semiconductor, sorry my question one is not clear... try again

up to this point in time you must have general solution to your problem eg. what solution(s) have you got so we can assist - based on your idea, what circuit(s) have you try?

in term of project timming you still have three weeks (good news) to come up the circuit and about one week to write your report

about your solutions. i have an idea and i want your feedback. instead of design the "whole" circuit at one go (which is not easy), consisder the problem and divide into smaller problems. that is instead of having 10 switches and 10 leds consider only 2 switches and 2 leds. if it is working then consider 3 switches and 3 leds and so on...

ah... just one question

i know you can use gates, flip-flops etc to design the circuit what about, can you use the devices listed below?

a. mux (multiplexer)
b. PROM
c. PAL
d. CPLD


cheers,
boyzplus
 

semiconductor

Full Member level 4
Joined
Apr 4, 2003
Messages
236
Helped
4
Reputation
8
Reaction score
0
Trophy points
1,296
Activity points
2,737
My design makes use of demultiplexer (Demux).
It is as below:
First, I simulate with 4 leds (4 switchs accompanied)
I has design the 1Hz oscilator (by using Timer IC 555).
I has design the modulo-4 counter (2 bits: from 00 to 11 and return)
The outputs of the counter is connected to 2 control pins of DEMUX (to select channel).
If no switch changes its status from OFF to ON, this counter counts as usual (00,01,10,11,00,....)
But if for example, switch 2 is changed from OFF to ON, the status 01 is neglected and the counter have to count as follow: 00,10,11,00. But I don’t know to to control the counter pass over the status 01 to jump from 00 to 10. It seems a difficult task to me. And I’m now continueing to find solution to this problem since I think this is a possible idea to finish this assignment.
I really need your help!

ps. I'm not good at english (since I'm living in non-English speaking country). If there are some things that you do not understand, plz tell me and I'll try to express it again in English!
 

boyzplus

Member level 1
Joined
Mar 15, 2002
Messages
35
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
253
hi all,

semiconductor, how are you going with your project?

i think i have a solution to your problem IF you answer yes to this question

==> are you allow to use an EPROM in your project?

cheers,
boyplus.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top