Fastest Finger First Mini Project using 8051 Microcontoller Couch ModePrint ModePrint It
The quiz buzzer systems are idely used in school! colleges and T" #rograms$ The team hich #resses the buzzer earliest is entitled to gi%e the anser$ &t times it becomes %ery di''icult to identi'y hich team has #ressed the button hen to teams #ress the buzzer ithin a %ery small time ga#$ In such cases the decision can be biased due to human inter%ention$ The quiz buzzer #resented here ta(es care o' the a'oresaid #roblem$ This quiz buzzer disables the other in#uts as soon as the 'irst buzzer is #ressed$ This quiz buzzer can be used 'or a ma)imum o' eight teams$ It is build around 8051 microcontroller microcont roller *&T8+C51,$
This quiz buzzer system has eight in#ut #ins corres#onding to eight teams$ The out#ut is dis#layed on a se%en segment dis#lay*inter'aced dis#lay*inter'aced ith microcontroller,! hich shos the number corres#onding to the team hich has #ressed the button 'irst$ & buzzer is also sounded 'or a small duration to gi%e an acoustic alarm$ The connections o' the se%en segment! in#ut #ins and out#ut #ins is shon in the circuit diagram$ For more details! re'er -se%en segment inter'acing .$ There are a total o' nine in#ut #ins$ /ight #ins o' #ort P o' the microcontroller are corres#onding to eight in#uts and one sto# st o# #i #in n 'o 'orr re rese sett ttin ing g th thee bu buzz zzer er sy syst stem em$$ n th thee ou out# t#ut ut si side de a se se%e %en n se segm gmen entt is connected to dis#lay the corres#onding out#ut number$ There is also a #ro%ision 'or sounding a buzzer 'or a small duration$
2hen the system starts! the se%en segment does not dis#lays any out#ut$ The microcontroller (ee#s scanning the in#ut #ins$ &s soon as any one o' the in#uts is #ressed! the buzzer sounds 'or a small duration$ The se%en segment dis#lays the number corres#onding to the in#ut #ressed$ 3o e%en i' any other in#ut #in is #ressed! there ill be no e''ect on the system till the time the sto# #in is #ressed to reset the system$ Proteous 4o'tare simulation
C6#rogramming code 'or abo%e Project is gi%en 7elo
include9reg51$h: unsigned int digi;%al<10=>?0)@0!0)F+!0)@!0)A0!0)1+!0)1!0)0!0)F8!0)00!0)10B DD Ee) %alue corres#onding to the digits 0 to + sbit out#ut;on;#in > PA0 sbit sto#;#in > PA1 sbit buzzer;#in>P00
DD /nable #in to enable the se%en segment$
DD 4to# #in to reset the buzzer$ DD 7uzzer #in to sound the buzzer$
int 'lag %oid delay*,
DD Time delay 'unction
? int i!j 'or*i>0i900iGG, 'or*j>0j91H5jGG, B %oid dis#lay*unsigned int current;dig,
DD Function to dis#lay the resultant digit on
the se%en segment and sound the buzzer$ ? P>digi;%al 1 buzzer;#in>0 delay*,
buzzer;#in>1 hile*sto#;#in > 0, B %oid buzzer*, DDFunction to monitor the in#ut sitches ? 'lag > 0 hile*1, ? hile *P1 >> 0)FF, hile *P1 >> 0)F/,
DDChec( i' sitch 1 is #ressed
? 'lag > 1
dis#lay*1, B hile *P1 >> 0)FJ,
DDChec( i' sitch is #ressed
? 'lag >
dis#lay*, B hile *P1 >> 0)F7 ,
DDChec( i' sitch A is #ressed
? 'lag > A
dis#lay*A, B hile *P1 >> 0)FH ,
DDChec( i' sitch @ is #ressed
? 'lag > @
dis#lay*@, B hile *P1 >> 0)/F ,
DDChec( i' sitch 5 is #ressed
? 'lag > 5
dis#lay*5, B hile *P1 >> 0)JF,
DDChec( i' sitch K is #ressed
? 'lag > K
dis#lay*K, B hile *P1 >> 0)7F ,
DDChec( i' sitch H is #ressed
? 'lag > H
dis#lay*H, B hile *P1 >> 0)HF , ? 'lag > 8
dis#lay*8, B P1 > 0)FF sto#;#in > 1 out#ut;on;#in > 0 B
B %oid main*, ? out#ut;on;#in>0 sto#;#in > 1 P1 > 0)FF buzzer*,
DDChec( i' sitch 8 is #ressed
B