当前位置:网站首页>Eight way responder system 51 Single Chip Microcomputer Design [with Proteus simulation, C program, schematic diagram, PCB files, component list and papers, etc.]

Eight way responder system 51 Single Chip Microcomputer Design [with Proteus simulation, C program, schematic diagram, PCB files, component list and papers, etc.]

2022-04-23 14:23:00 Jiang Yuzhi

The design requirements
1) The responder is also available for 8 Players or 2 A team game , Use them separately 8 Button S0-S7 Express ;
2) Set a system clear and answer control switch S, The switch is controlled by the host ;
3) The responder has the functions of latch and display . That is, the player presses the button , Latch the corresponding number , And keep the number of the first responder until the host clears the system ;
4) The responder has the function of timing responder , And the time of a rush answer is set by the host ( Such as 30s etc. ). When the host starts “ Start ” After keystroke , The timer decrements , At the same time, the speaker makes a short sound , The duration of the sound is 0.5s about ;
5) The contestants will rush to answer within the set time , Answer effectively , The timer stops working , The display shows the contestant's number and the answer time , And keep it until the host clears the system ;
6) If the timing time comes , No one answered , This rush answer is invalid , The system alarms and forbids answering , The timing display shows 00;
7) Design software programming method , And write the source code ;
8) The host and slave realize wireless response ;
9) use Proteus Conduct simulation ,Altium Designer Draw the schematic and PCB;

summary
This paper introduces the composition of the circuit of digital display eight channel responder 、 Design and function , The responder not only has the basic responder function , It also has the functions of timing and alarm . The host preset the time for rush answer through the time preset switch , The system will complete the automatic countdown .

If there is a rush to answer within the specified time , The timing will stop automatically , If no one answers within the specified time , Then the buzzer in the system will sound , Prompt the host that this round of rush answer is invalid , Realize the alarm function , If the response time is exceeded, the response will be invalid .

The system adopts 51 Single chip microcomputer is the core of the whole control system . The control system is mainly composed of : Display module 、 Control module 、 It is composed of alarm module and emergency response module .

Working hours , The system inputs the rush response signal through the matrix keyboard , After being processed by single chip microcomputer , Output control signal , Using a 4 Digital tube to complete the display function and alarm with buzzer , Use the keys to let the contestants answer , Display which group answers first on the nixie tube , So as to realize the whole rush to answer process .
 Insert picture description here
proteus Simulation circuit diagram
 Insert picture description here
 Insert picture description here

System schematic diagram
 Insert picture description here
PCB chart
 Insert picture description here
Analysis of simulation results
load “ Eight way responder .hex” File to 51 Single chip microcomputer , Click on the run . After the eight way responder program is initialized , The nixie tube shows :----. Wait for the host to press the key to enter .
 Insert picture description here
Press down “ host ” key , The nixie tube shows :00-0. here , Can pass “ timing +” and “ timing -” key , Set the timing time . In this case , We set the timing time to 30 second .
 Insert picture description here
 Insert picture description here
Press again “ host ” key , The buzzer beeps , Countdown starts ,8 Contestants can start to answer . hypothesis 3 Contestant No , Answer successfully within the time limit . here , Count stop , The nixie tube displays the remaining timing and the current player number , Their corresponding 3 Number LED The light is on .
 Insert picture description here
count down , And then there were 5 seconds , If there are still no contestants to answer , At this time, the buzzer gives a continuous prompt sound . If the timing ends , No one answered , At this time, the nixie tube displays :00-0; Press down “ host ” key , The nixie tube shows :----; Press again “ host ” key , Show 30-0; If the timing time is not modified , Press again “ host ” key , A new round of timing begins .

If , When the host doesn't start timing , That is, before the rush to answer , Someone scrambled to answer . hypothesis 2 Contestant No , At this time, the nixie tube displays :FF-2, The buzzer keeps ringing ,2 Number red LED The light is on . After the player answers for a foul , Press down ‘ host ’ key , The buzzer stops , The nixie tube shows :00-0, The host sets the time , restart .
 Insert picture description here
part C Code

/********************************************************  The name of the function :void scan(void)  Function function : Key detection function   Parameter description : ********************************************************/ 
void scan(void)
{
    	
	uchar qiangda_num=0;
	// Host key 
	if(key_zhu==0)		   // Press the key 
	{
    
		delayms(7);		   // Show dithering 
		if(key_zhu==0&&zhu_f!=2&&qiang_f==0&&wan_f==0)// Judge whether someone has committed a foul or whether the rush to answer has started or whether the rush to answer has been completed 
		{
    
			zhu_f++;	   // Match phase marks +1
			if(zhu_f==2)   // The game officially begins 
			{
    
				TR0=1;	   // The game begins , Opening timing 
				wan_f=0;   // Clear the game completion flag 
				bajing();  // Prompt the start of the game 
			}			
		}
		else
			if(key_zhu==0&&qiang_f==1)   // Judge whether someone has committed a foul 
			{
    
				buzz=1;					 // Clear the alarm 
				qiang_f=0;				 // Clear the answer flag 
				number=0;				 // Clear player number 
				time=EEPROM_read(0x2000);// The total time of re reading the stored response 
				led_kongzhi(0,0,0);
			}
			else						 
				if(key_zhu==0&&wan_f==1) // Determine whether someone has completed 
				{
    
					buzz=1;				 // Clear the alarm 
					wan_f=0;			 // Clear the... Completion flag 
					number=0;			 // Clear player number 
					time=EEPROM_read(0x2000);// The total time of re reading the stored response 
					led_kongzhi(0,0,0);
				}
				else
					if(key_zhu==0&&zhu_f==2) // Pause the game 
					{
    
						TR0=0;				 // Turn off timing 
						zhu_f=1;			 // Go back to setting the game time 
						bajing();			 // Prompt to suspend the game 
					}
		while(!key_zhu);// The detection key is released 
	}

	// Bonus key , Support to click 
	if(key_jia==0&&zhu_f==1&&qiang_f==0)	 // Determine whether the countdown time is being set 
	{
    
		delayms(7);							 // Delay chattering 
		if(key_jia==0)						 // Press the judgment key again 
		{
    
			if(time<99)	                     // Maximum game time 99S
				time++;					 	 // Time of the game +1S
			EEPROM_delete(0x2000);			 // erase EEPROM Fan District 
			EEPROM_write(0x2000,time);		 // write in 【 Time of the game 】 Save the data 
			display(time/10,time%10,10,0);	 // Display and set the game time 
		}
	}

	// Impairment key , Support to click 
	if(key_jian==0&&zhu_f==1&&qiang_f==0)	 // Determine whether the countdown time is being set 
	{
    
		delayms(7);							 // Delay chattering 
		if(key_jian==0)						 // Press the judgment key again 
		{
    
			if(time!=0)	  					 // Minimum game time 0S
				time--;		                 // Time of the game -1S
			EEPROM_delete(0x2000);			 // erase EEPROM Fan District 
			EEPROM_write(0x2000,time);		 // write in 【 Time of the game 】 Save the data 
			display(time/10,time%10,10,0);	 // Display and set the game time 
		}
	}
	// The player presses the key 
	qiangda_num=qianda();
	if(qiangda_num!=0)                              // Determine whether a player presses the button 
	{
     
		if(zhu_f!=2&&qiang_f==0&&wan_f==0)// If you haven't started answering, press 
		{
    
			zhu_f=1;
			buzz=0;						  // Buzzer alarm 
			qiang_f=1;					  // Rush to answer the foul mark 
			number=qiangda_num;
			led_kongzhi(number,1,0);
		}
		else
			if(zhu_f==2&&wan_f==0)			 // Press... When starting the rush answer 
			{
    
				wan_f=1;					 // Mark the answer complete 
				zhu_f=0;					 // Host mark reset 
				TR0=0;						 // Turn off the countdown timer 
				number=qiangda_num;
				led_kongzhi(number,1,0);
				bajing();					 // Prompt someone to answer 
			}
	}  
}

/*********************************************************  The name of the function :void main()  Function function : Main function   Parameter description : *********************************************************/
void main()
{
    
	uchar i=0;
	T0_init();						 // Timer initialization 
	if(key_jian==0)	  
	{
    
		delayms(100);
		if(key_jian==0)
		{
    
			EEPROM_delete(0x2000);	 // erase EEPROM Fan District 
			EEPROM_write(0x2000,30); // write in 【 Time of the game 】 Save the data  
		}
	}
	time=EEPROM_read(0x2000);		 // Read stored 【 Time of the game 】 data 

	for(i=0;i<9;i++)
	{
    
		led_kongzhi(i,1,1);
		delayms(10);	
	}

	for(i=9;i>0;i--)
	{
    
		led_kongzhi(i-1,0,1);
		delayms(10);	
	}
	led_kongzhi(0,0,0);
	while(1)						 // Dead cycle 
	{
    
		scan();						 // Key detection processing 
		if(zhu_f==0&&wan_f==0)		 // Judge whether it has not entered the competition stage 

The shared resources are
(1) be based on 51 MCU eight way responder system design graduation thesis complete version ;
(2)Proteus Simulation file ;
(3)Keil C Program files ;
(4) List of components ;
(5)Visio flow chart ;
(6) Schematic diagram and PCB file ;

Resources are shared as follows
 Insert picture description here
 Insert picture description here
 Insert picture description here
 Insert picture description here
 Insert picture description here
Resource acquisition method
Resource acquisition method
Resource acquisition method
Important things are to be repeated for 3 times !!!!!!!!!!!,
Get a complete eight way Responder design paper 、Proteus Simulation 、C Program 、PCB And schematic diagram 、Visio flow chart 、 A complete set of information such as component list . Please search WeChat for official account : Jiaoyuan Xiaozhi

版权声明
本文为[Jiang Yuzhi]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204231412472366.html