How to use Counters ONLY to construct a School Bell circuit

counter

I am really stuck here, our instructor told us not to use the 555 timer (and to be honest I never used it). So we are supposed to make a circuit by using counters only, I guess.

How can I generate time periods, and set time in seconds or minutes? Is Johnson Counter the best to use here?

I included the project needed and the periods I made, if any one could help me on that.
My project is due to next Monday, and I would be really grateful if someone could give me an idea or a hint to start.


The Project: Design a digital circuit that can be attached to a school bill which can work automatically
from 7:00 AM to 12:45 PM, and it has the following features

1- Rings for 5 seconds.

2- Start ringing 7:00 AM to announce for the field gathering.

3- Rings 7:20 for going to class.

4- Rings for the start of the first class period at 7:35 AM.

5- Rings for end of each period after 40 minutes from its start.

6- Rings for break after 10 minutes from the end of the previous period to announce for
the next class period.

7- After the third period, a break of 30 minutes.


*The Bell rings for 5 seconds.

7:00 AM (Ring for field gathering)

7:20 AM (Ring for going to class)

7:35 AM (Ring for the 1st class START)

8:15 AM (Ring for the 1st class END)

8:15 AM – 8:25 AM (Break for 10 minutes)

8:25 AM (Ring for the 2nd class START)

9:05 AM (Ring for the 2nd class END)

9:05 AM – 9:15 AM (Break for 10 minutes)

9:15 AM (Ring for the 3rd class START)

9:55 AM (Ring for the 3rd class END)

9:55 AM – 10:25 AM (Break for 30 minutes)

10:25 AM (Ring for the 4th class START)

11:05 AM (Ring for the 4th class END)

11:05 AM – 11:15 AM (Break for 10 minutes)

11:15 AM (Ring for the 5th class START)

11:55 AM (Ring for the 5th class END)

11:55 AM – 12:05 AM (Break for 10 minutes)

12:05 AM (Ring for the 6th class START)

12:45 AM (Ring for the 6th class END)

Best Answer

However you do it you will require some kind of time signal as a base for your system.

That could be the (banned by your teacher) 555 timer, or a crystal oscillator, or anything which will give a regular on/off signal with a known frequency.

Then you have your counters.

Now, a binary counter module (like the 74xx393 for example) is also a frequency divider.

Take this truth table for example:

 IN | Q1 | Q2 | Q3 | Q4
----+----+----+----+----
  0 |  0 |  0 |  0 |  0 
  1 |  0 |  0 |  0 |  0
  0 |  1 |  0 |  0 |  0
  1 |  1 |  0 |  0 |  0
  0 |  0 |  1 |  0 |  0
  1 |  0 |  1 |  0 |  0
  0 |  1 |  1 |  0 |  0
  1 |  1 |  1 |  0 |  0
  0 |  0 |  0 |  1 |  0
  1 |  0 |  0 |  1 |  0
  0 |  1 |  0 |  1 |  0
  1 |  1 |  0 |  1 |  0
  0 |  0 |  1 |  1 |  0
  1 |  0 |  1 |  1 |  0
  0 |  1 |  1 |  1 |  0
  1 |  1 |  1 |  1 |  0
  0 |  0 |  0 |  0 |  1
  1 |  0 |  0 |  0 |  1
  0 |  1 |  0 |  0 |  1
  1 |  1 |  0 |  0 |  1
  0 |  0 |  1 |  0 |  1
  1 |  0 |  1 |  0 |  1
  0 |  1 |  1 |  0 |  1
  1 |  1 |  1 |  0 |  1
  0 |  0 |  0 |  1 |  1
  1 |  0 |  0 |  1 |  1
  0 |  1 |  0 |  1 |  1
  1 |  1 |  0 |  1 |  1
  0 |  0 |  1 |  1 |  1
  1 |  0 |  1 |  1 |  1
  0 |  1 |  1 |  1 |  1
  1 |  1 |  1 |  1 |  1

You can see that Q1 is toggling at half the speed of the IN pin. Q2 is toggling at half the speed again, and Q3 at yet half again - and so on.

So, it could be said that the frequency of Q1 is half IN, and Q2 is 1/4 IN and Q3 is 1/8 IN and q4 is 1/16 IN.

Therefore, if you have an input frequency of, say, 32768Hz (the speed watch crystals run at) then just using counters you can get:

  • 32768Hz
  • 16384Hz
  • 8192Hz
  • 4096Hz
  • 2048Hz
  • 1024Hz
  • 512Hz
  • 256Hz
  • 128Hz
  • 64Hz
  • 32Hz
  • 16hz
  • 8Hz
  • 4Hz
  • 2Hz
  • 1Hz - that's 1 second pulses
  • 0.5Hz - 2 seconds
  • 0.25Hz - you're at 4 second pulses now
  • 0.125Hz - 8 seconds
  • 0.0625Hz - 16 seconds
  • 0.03125Hz - 32 seconds

etc

You can see how it's possible to build up some fairly long periods from what starts out as quite a fast input clock. Combine various counters together and you can soon get lots of different times.

Of course, if you start with a different frequency you can get different time combinations. For instance, if you create a 0.2Hz clock signal to begin with (that's a 5 second pulse) then use the counters, you can make 10 seconds, 20 seconds, 40 seconds, 80 seconds, 160 seconds, etc quite easily.