First of all what is a stop watch and the idea how we can build that with the help of low cost microcontroller named atmel 89c51 .
Here only the ideas are given. And also what are the things required as well as the concepts are given here. There are plenty of materials on the internet to get the circuit etc but they won’t explain the circuit and general concept ,that’s why this note is required to get some idea about the concept on what you are going to build rather copying only the circuit and soldering etc.
Stop watch is just a watch which we start and timing starts and when stopped it shows the time elapsed. This is type of watch is very good for sports etc events as well as whenever you want to measure some “how much time elapsed in an event “.
You need to write microcontroller codes to show the time on a LCD display.
So what are the things you need to write as code (89c51 code)
We know that 8051 can be used to generate pulses with a particular duration.
So just be writing some code we can generate a pulse having proper width. Say we want to generate some delay with the microcontroller 8051(note:I am mentioning 8051 as 89c51 is the part number by atmel and actually there is 8051 core inside).
So once we can generate a delay ,so it is also possible to create a delay of x seconds ,and also possible to generate delay of 60 seconds and so 1 min and so on. We just need to update and display the things on the LCD, The main things involved in the embedded program is that the delay generation part as well as the LCD part.
Before you start the clock just reset switch(a pin of 89c51) when reset switch pressed then all the digits made zero and then started from ? 00:00:00.
The display routine will do that I mean when reset pressed then make all the digits 0 in LCD module.
We need to write a display routine for the LCD module.
How ? How we can write display module routine. The answer is just see the LCD display functions and details of pin etc and interface that with the 89c51 microcontroller and write your interface routine by 89c51 codes.
Then just have to display properly display update the digits.
Say after 60 seconds update the minute part in LCD (i.e increase by one ) after 60 minute update the hour part in the display so on.
When you stop the watch just stop the delay generating part as well as LCD updating part. So the watch will show the time elapsed.
If you want to implement this project please write your query as comment, I will try to answer that .