⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main1_1013.c.bak

📁 基于485的51单片机多机通讯程序
💻 BAK
📖 第 1 页 / 共 2 页
字号:
//	VOLTAGE=0;
//	AVC=0;
//	decrease=0;
//	rot_front=0;
//	rot_reverse=0;
//	wire_add=0;
//	wire_dec=0;
//	osc_l=0;
//	osc_r=0;
//	avc_up=0;
//	avc_down=0;
	temp_motor_stop=0;
//	motor_stop=0;
	new_switch1=0;
	new_switch2=0;
	new_switch3=0;
//	start_again=0;
	need_para=0;
	p_changed=0;
	edited=0;

	POINTER0=0;
	SSUM=0;
	S_ANSW=0;
	POINTER1=0;
	RSUM=0;
	ans=0;
	R_ANSW=0;
	r_byte_nums=4;
	noans_ok=1;
	overtime=0;
	s_p=0;				//1,发送参数
	need_finish=0;
	pc_operate=0;

//	rc_forbided=1;

	while(start==0||pc_ok==0)
	{
		if(connect==1)
		{
			ini_sbuf(M_PC,answer,OK,0,0);
			s_byte_nums=4;
			TR_noans();
			pc_ok=1;
                        connect=0;
		}
		if(break_connect==1)
		{
			ini_sbuf(M_PC,answer,OK,0,0);
			s_byte_nums=4;
			TR_noans();
			pc_ok=0;
			break_connect=0;
		}
/*
		if(p_forbid==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			p_forbided=1;
			p_actived=0;
			p_forbid=0;
		}
		if(rc_forbid==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			rc_forbided=1;
			rc_actived=0;
			rc_forbid=0;
		}
*/
		if(temp_motor_stop==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			motor_stop=1;
			temp_motor_stop=0;
		}
		if(editing==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();

			while(p_received==0)
			{
				if(urgent_stop==1)
				{
					if(pc_stop==0)
					{
						while(err_ok==0);
//						ini_sbuf(M_PC,err_infor,0,err,0);
//						s_byte_nums=5;
//						TR_noans();
					}
					else if(pc_stop==1)
					{
						ini_sbuf(M_PC,answer,S_ANSW,0,0);
						s_byte_nums=4;
						TR_noans();
						stop=0;
						delay(5);
						stop=1;
						while(err_ok==0);
					}
					goto BEGIN;
				}
				if(resend==1)
				{
					ini_sbuf(M_PC,answer,S_ANSW,0,0);
					s_byte_nums=4;
					TR_noans();
                                        p_received=0;
					resend=0;
				}
			}
			point=&pp.pn;
			delt=0;
			for(i=2;i<55;i++)
			{
				*(point+i-2)=rbuffer[i+delt]*256+rbuffer[i+delt+1];
				delt++;
			}
			p_received=0;
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();

			while(p_received==0)
			{
				if(urgent_stop==1)
				{
					if(pc_stop==0)
					{
						while(err_ok==0);
//						ini_sbuf(M_PC,err_infor,0,err,0);
//						s_byte_nums=5;
//						TR_noans();
					}
					else if(pc_stop==1)
					{
						ini_sbuf(M_PC,answer,S_ANSW,0,0);
						s_byte_nums=4;
						TR_noans();
						stop=0;
						delay(5);
						stop=1;
						while(err_ok==0);
					}
					goto BEGIN;
				}
				if(resend==1)
				{
					ini_sbuf(M_PC,answer,S_ANSW,0,0);
					s_byte_nums=4;
					TR_noans();
					p_received=0;
					resend=0;
				}
			}
			point=&pp.k2;
			delt=0;
			for(i=2;i<51;i++)
			{
				*(point+i-2)=rbuffer[i+delt]*256+rbuffer[i+delt+1];
				delt++;
			}
			p_received=0;
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();

			while(p_received==0)
			{
				if(urgent_stop==1)
				{
					if(pc_stop==0)
					{
						while(err_ok==0);
//						ini_sbuf(M_PC,err_infor,0,err,0);
//						s_byte_nums=5;
//						TR_noans();
					}
					else if(pc_stop==1)
					{
						ini_sbuf(M_PC,answer,S_ANSW,0,0);
						s_byte_nums=4;
						TR_noans();
						stop=0;
						delay(5);
						stop=1;
						while(err_ok==0);
					}
					goto BEGIN;
				}
				if(resend==1)
				{
					ini_sbuf(M_PC,answer,S_ANSW,0,0);
					s_byte_nums=4;
					TR_noans();
					p_received=0;
					resend=0;
				}
			}
			point=&pp.k4;
			delt=0;
			for(i=2;i<53;i++)
			{
				*(point+i-2)=rbuffer[i+delt]*256+rbuffer[i+delt+1];
				delt++;
			}
			pp.sec_num=rbuffer[52];
			p_received=0;
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();

			if(pp.sec_num>0)
			{
				for(j=0;j<pp.sec_num;j++)
				{
					while(p_received==0)
					{
						if(urgent_stop==1)
						{
							if(pc_stop==0)
							{
								while(err_ok==0);
//								ini_sbuf(M_PC,err_infor,0,err,0);
//								s_byte_nums=5;
//								TR_noans();
							}
							else if(pc_stop==1)
							{
								ini_sbuf(M_PC,answer,S_ANSW,0,0);
								s_byte_nums=4;
								TR_noans();
								stop=0;
								delay(5);
								stop=1;
								while(err_ok==0);
							}
							goto BEGIN;
						}
						if(resend==1)
						{
							ini_sbuf(M_PC,answer,S_ANSW,0,0);
							s_byte_nums=4;
							TR_noans();
							resend=0;
							p_received=0;
						}
					}
					p_received=0;
					nonce_sec=rbuffer[2];
					point=&pp.x[nonce_sec][0];
					i=3;
					for(delt=0;delt<30;delt++)
					{
						*(point+delt)=rbuffer[i]*256+rbuffer[i+1];
						i=i+2;
					}
					ini_sbuf(M_PC,answer,S_ANSW,0,0);
					s_byte_nums=4;
					TR_noans();
				}
				
			}
			while(edit_finish==0)
			{
				if(urgent_stop==1)
				{
					if(pc_stop==0)
					{
						while(err_ok==0);
//						ini_sbuf(M_PC,err_infor,0,err,0);
//						s_byte_nums=5;
//						TR_noans();
					}
					else if(pc_stop==1)
					{
						ini_sbuf(M_PC,answer,S_ANSW,0,0);
						s_byte_nums=4;
						TR_noans();
						stop=0;
						delay(5);
						stop=1;
						while(err_ok==0);
					}
					goto BEGIN;
				}
			}
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			edit_finish=0;
			pc_edit=1;
		}

		if(need_para==1||edited==1||p_changed==1)
		{
			
			if(edited==1||p_changed==1)
			{
				ini_sbuf(M_PC,command,com_receive_p,0,0);
				s_byte_nums=4;
				TR_ans();
			}
//			delay(50);
			ini_sbuf(M_PC,program,0,0,0);
			sbuffer[2]=pp.pn%256;
			s_byte_nums=4;
			TR_ans();
//			delay(100);
			send_param();
			need_para=0;
			edited=0;
			p_changed=0;
		}
/*			
		if(p_active==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			p_forbided=0;
			p_actived=1;
			p_active=0;
		}
		
		if(rc_active==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			rc_forbided=0;
			rc_actived=1;
			rc_active=0;
		}
*/		
		if(new_switch1==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			new_switch11=1;
			new_switch1=0;
		}
		
		if(new_switch2==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			new_switch22=1;
			new_switch2=0;
		}

		if(new_switch3==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			delt_switch=1;
			new_switch3=0;
		}

		if(urgent_stop==1)
		{
			if(pc_stop==0)
			{
				while(err_ok==0);
//				ini_sbuf(M_PC,err_infor,0,err,0);
//				s_byte_nums=5;
//				TR_noans();
			}
			else if(pc_stop==1)
			{
				ini_sbuf(M_PC,answer,S_ANSW,0,0);
				s_byte_nums=4;
				TR_noans();
				stop=0;
				delay(5);
				stop=1;
				while(err_ok==0);
			}
			goto BEGIN;
		}
				
	}

	ini_sbuf(M_PC,answer,S_ANSW,0,0);
	s_byte_nums=4;
	TR_noans();

	s_p=0;
	while(decrease==0)
	{
		if(need_finish==1)
		{
			sbuffer[0]=M_PC;
			sbuffer[1]=parameter1;
			sbuffer[2]=FINISH/256;
			sbuffer[3]=FINISH%256;
			sbuffer[4]=0;
			s_byte_nums=5;
			TR_noans();
			need_finish=0;
		}
		
		if(urgent_stop==1)
		{
			if(pc_stop==0)
			{
				while(err_ok==0);
//				ini_sbuf(M_PC,err_infor,0,err,0);
//				s_byte_nums=5;
//				TR_noans();
				if(pc_operate==1)
				{
					while(need_finish==0);
					sbuffer[0]=M_PC;
					sbuffer[1]=parameter1;
					sbuffer[2]=0xFE;
					sbuffer[3]=0;
					sbuffer[4]=0;
					s_byte_nums=5;
					TR_noans();
					need_finish=0;	
				}
			}
			if(pc_stop==1)
			{
				ini_sbuf(M_PC,answer,S_ANSW,0,0);
				s_byte_nums=4;
				TR_noans();
//				stop=0;
//				delay(5);
				stop=1;
				while(err_ok==0);	
			}
			goto BEGIN;
		}
		
		if(temp_motor_stop==1)
		{
			ini_sbuf(M_PC,answer,S_ANSW,0,0);
			s_byte_nums=4;
			TR_noans();
			motor_stop=1;
			temp_motor_stop=0;
		}
	}
	s_p=0;
	ini_sbuf(M_PC,answer,S_ANSW,0,0);
	s_byte_nums=4;
	TR_noans();

	while(decrease_ok==0)
	{
		if(urgent_stop==1)
		{
			if(pc_stop==0)
			{
				while(err_ok==0);
//				ini_sbuf(M_PC,err_infor,0,err,0);
//				s_byte_nums=5;
//				TR_noans();
				if(pc_operate==1)
				{
					while(need_finish==0);
					sbuffer[0]=M_PC;
					sbuffer[1]=parameter1;
					sbuffer[2]=0xFE;
					sbuffer[3]=0;
					sbuffer[4]=0;
					s_byte_nums=5;
					TR_noans();
					need_finish=0;
				}
			}
			else if(pc_stop==1)
			{
				ini_sbuf(M_PC,answer,S_ANSW,0,0);
				s_byte_nums=4;
				TR_noans();
				stop=0;
				delay(5);
				stop=1;
				while(err_ok==0);
			}
			goto BEGIN;
		}
		
		if(need_finish==1)
		{
			sbuffer[0]=M_PC;
			sbuffer[1]=parameter1;
			sbuffer[2]=FINISH/256;
			sbuffer[3]=FINISH%256;
			sbuffer[4]=0;
			s_byte_nums=5;
			TR_noans();
			need_finish=0;
		}
	}
	
	if(pc_operate==1)
	{
		while(need_finish==0)
		{
			if(urgent_stop==1)
			{
				if(pc_stop==0)
				{
					while(err_ok==0);
	//				ini_sbuf(M_PC,err_infor,0,err,0);
	//				s_byte_nums=5;
	//				TR_noans();
					while(need_finish==0);
					sbuffer[0]=M_PC;
					sbuffer[1]=parameter1;
					sbuffer[2]=0xFE;
					sbuffer[3]=0;
					sbuffer[4]=0;
					s_byte_nums=5;
					TR_noans();
					need_finish=0;
				}
				else if(pc_stop==1)
				{
					ini_sbuf(M_PC,answer,S_ANSW,0,0);
					s_byte_nums=4;
					TR_noans();
					stop=0;
					delay(5);
					stop=1;
					while(err_ok==0);
				}
				goto BEGIN;
			}
		}
		sbuffer[0]=M_PC;
		sbuffer[1]=parameter1;
		sbuffer[2]=FINISH/256;
		sbuffer[3]=FINISH%256;
		sbuffer[4]=0;
		s_byte_nums=5;
		TR_noans();
		need_finish=0;
	
	FINISH=0;
	while(need_finish==0)
	{
		if(urgent_stop==1)
		{
			if(pc_stop==0)
			{
				while(err_ok==0);
//				ini_sbuf(M_PC,err_infor,0,err,0);
//				s_byte_nums=5;
//				TR_noans();
				while(need_finish==0);
				sbuffer[0]=M_PC;
				sbuffer[1]=parameter1;
				sbuffer[2]=0xFE;
				sbuffer[3]=0;
				sbuffer[4]=0;
				s_byte_nums=5;
				TR_noans();
				need_finish=0;
			}
			else if(pc_stop==1)
			{
				ini_sbuf(M_PC,answer,S_ANSW,0,0);
				s_byte_nums=4;
				TR_noans();
				stop=0;
				delay(5);
				stop=1;
				while(err_ok==0);
			}
			goto BEGIN;
		}
	}
	sbuffer[0]=M_PC;
	sbuffer[1]=parameter1;
	sbuffer[2]=0xFF;
	sbuffer[3]=0;
	sbuffer[4]=0;
	s_byte_nums=5;
	TR_noans();
	}
	else
		FINISH=0;
	goto BEGIN;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -