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

📄 main_soft_run.c

📁 单片机工业控制板,具备I/O,KEYBOARD,步进电机伺服电机等功能
💻 C
📖 第 1 页 / 共 4 页
字号:
							
							if(KR5) KR_staus=0;
							else KR_staus=1;
							
							break;

						case 10:				//x left limit
							if(!KR0) KR_staus=0;
							else KR_staus=1;
							
							break;
						case 1:				//x right limit
							if(!KR1) KR_staus=0;
							else KR_staus=1;
							
							break;

						case 2:				//z upword limit
							if(!KR2) KR_staus=0;
							else KR_staus=1;
							
							break;

							
						default:
							KR_staus=0;
						break;
						}

			}

			

		}

		chk_busy();
		if(!BUSY)
		{

			if(xx_photo==1)
			{
				if(EXCHANGE==11)
				{
					chn_disp1(tab1);
	//					j=4;
	//					wr_lcd(dat,chn1[j]);
					EXCHANGE=12;
				
				}
	
				else if(EXCHANGE==26)
				{
		
					chn_disp3(tab3);
	//					j=3;
	//					wr_lcd(dat,chn3[j]);
					EXCHANGE=27;
				
				}
	
				else if(EXCHANGE==41)
				{
					array(y_totallength,1000);
	
					EXCHANGE=42;
				
				}
	
			}
	
			else if(xx_photo==2)
			{
				if(EXCHANGE==11)
				{
					wr_lcd(comm,0x30);
					EXCHANGE=12;
				}
				else if(EXCHANGE==26)
				{
					chn_disp6(tab6);
	//				j=5;
	//				wr_lcd(dat,chn6[j]);
	
					EXCHANGE=27;
				}
	
				else if(EXCHANGE==41)
				{	
					j=6;
					number(j);
					EXCHANGE=42;
				}
				else if(z_waitpostion_staus==11)
				{
					if(ADDR==0)
						wr_lcd(comm,0x0C);
					z_waitpostion_staus=0;
					}
	
	
	
	
			}
	
			else if(xx_photo==3)
	
			{
				if(EXCHANGE==11)
				{
					wr_lcd(comm,0x30);
					EXCHANGE=12;
				
				}
				else if(EXCHANGE==26)
				{
					j=1;
					number(j);
					EXCHANGE=27;
				}
	
				else if(EXCHANGE==41)
				{
					j=9;
					number(j);
					EXCHANGE=42;
				}
	
				else if(z_postion_staus==11)
				{
	
					
							
					wr_lcd(comm,0x0C);
					z_postion_staus=0;
	
					}
	
	
			}
	
			else if(xx_photo==4)
			{
	
				if(EXCHANGE==11)
				{
					wr_lcd(comm,0x30);
				
					EXCHANGE=12;
				
				}
	
				else if(EXCHANGE==26)
				{
					
					chn_disp12(tab12);
	//					j=5;
	//					wr_lcd(dat,chn12[j]);
	
					EXCHANGE=27;
				}
	
				else if(EXCHANGE==41)
				{
					j=1;
					number(j);
					
					EXCHANGE=42;
				}
	
	
	
			}		
		}






	}			


	if(Cont.bits.W_LED1==1)
	{
//		DelayUmSec(5);
		Back_xx_photo=xx_photo;//back xx_photo
		chk_busy();
		if(!BUSY)
		{
			TRISB=0X00;
			TRISD=0X00;
			_TRISE8=0;
			PORTD=0X03;				//138 Y3=LED_EN
			_RE8=0;

			LATB=out_buffer;
			_RD3=1;
			Nop();
			Nop();
			_RD3=0;
		}
		chk_busy();
		if(!BUSY)
		{

			if(xx_photo==1)
			{
				if(EXCHANGE==12)
				{
					chn_disp1(tab1);
//					j=5;
//					wr_lcd(dat,chn1[j]);
					EXCHANGE=13;
			
				}
				else if(EXCHANGE==27)
				{
	
					chn_disp3(tab3);
//					j=4;
//					wr_lcd(dat,chn3[j]);
					EXCHANGE=28;
			
				}
				else if(EXCHANGE==42)
				{
					wr_lcd(comm,0x30);

					EXCHANGE=43;
			
				}



			}

			else if(xx_photo==2)
			{
				if(EXCHANGE==12)
				{
					wr_lcd(comm,0x90);
					EXCHANGE=13;
				}

				else if(EXCHANGE==27)
				{	
					array(guangmo_times,100);
					EXCHANGE=28;
				}

				else if(EXCHANGE==42)
				{	
					j=7;
					number(j);
					EXCHANGE=43;
				}

			}

			else if(xx_photo==3)
			{
				if(EXCHANGE==12)
				{
					wr_lcd(comm,0x90);
					EXCHANGE=13;
			
				}

				else if(EXCHANGE==27)
				{
					j=2;
					number(j);
					EXCHANGE=28;
				}
				else if(EXCHANGE==42)
				{

					wr_lcd(comm,0x30);
					EXCHANGE=43;
				}




			}

			else if(xx_photo==4)
			{

				if(EXCHANGE==12)
				{
					wr_lcd(comm,0x90);
			
					EXCHANGE=13;
			
				}

				else if(EXCHANGE==27)
				{
				
				
					array(z_up_speed,1000);
					EXCHANGE=28;
				}

				else if(EXCHANGE==42)
				{
					j=2;
					number(j);
				
					EXCHANGE=43;
				}


			}		

		}




		Cont.bits.W_LED1=0;

	}		

	
	if(Cont.bits.W_LED2==1)
	{
//		DelayUmSec(5);
		Back_xx_photo=xx_photo;//back xx_photo
		_TRISE4=0;
		_LATE4=LED_num.bits.LED8;
	
		chk_busy();
		if(!BUSY)
		{
			if(xx_photo==1)
			{
				if(EXCHANGE==13)
				{
					wr_lcd(comm,0x30);
					EXCHANGE=14;
				
				}
				else if(EXCHANGE==28)
				{
		
					chn_disp3(tab3);
	//					j=5;
	//					wr_lcd(dat,chn3[j]);
					EXCHANGE=29;
				
				}
				else if(EXCHANGE==43)
				{
					wr_lcd(comm,0x8C);
	
					EXCHANGE=44;
				
				}
	
	
	
	
			}
	
			else if(xx_photo==2)
			{
				if(EXCHANGE==13)
				{
					chn_disp5(tab5);
	//					j=0;
	//				wr_lcd(dat,chn5[j]);
					EXCHANGE=14;
				}
				else if(EXCHANGE==28)
				{	
					wr_lcd(comm,0x30);
					EXCHANGE=29;
				}
	
				else if(EXCHANGE==43)
				{	
					j=8;
					number(j);
					EXCHANGE=44;
				}
	
			}
	
			else if(xx_photo==3)
			{
	
	
				if(EXCHANGE==13)
				{
					chn_disp8(tab8);
	//					j=0;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=14;
				}
	
				else if(EXCHANGE==28)
				{
					j=3;
					number(j);
					EXCHANGE=29;
				}
	
				else if(EXCHANGE==43)
				{

					wr_lcd(comm,0x0C);
					EXCHANGE=44;
				}
	
	
	
	
			}
	
			else if(xx_photo==4)
			{
	
				if(EXCHANGE==13)
				{
					chn_disp11(tab11);
	//					j=0;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=14;
				}
	
				else if(EXCHANGE==28)
				{
					
					wr_lcd(comm,0x30);
					EXCHANGE=29;
				}
	
				else if(EXCHANGE==43)
				{
					j=3;
					number(j);
					
					EXCHANGE=44;
				}
	
	
			}		


		}












		Cont.bits.W_LED2=0;


	}		


	if(Cont.bits.W_KEYSCAN==1)
	{
//		DelayUmSec(5);
		Back_xx_photo=xx_photo;//back xx_photo
		chk_busy();
		if(!BUSY)
		{
			keyscan();
	
			SW4=SW3;
			SW3=SW2;
			SW2=SW1;
			SW1=SW;
	
	
	
			if((SW==SW1)&&(SW==SW2)&&(SW==SW3)&&(SW==SW4)&&(SW!=0))
			{	
				keyboard_flag=1;
				
				
			}
	
			else
			{
				T2_ON=0;
				PWM_ON=0;								//stop pwm
				keyboard_flag=0;
				KEYUPDOWN=0;
				operator_mode=0;//TEST
				if(operator_mode==0)			//manual
				{
					//SW_flag=0;//
					if(!SW_flag)
					{
	
						LR_num.bits.LR5=1;			//close x left
						LR_num.bits.LR6=1;			//close x right
	
						}
					else
						X_LEFTANDRIGHT();			//x go and back
	
	
	
	
	
					LR_num.bits.LR3=1;				//close y head
					LR_num.bits.LR4=1;				//clode y backwards
				}
				else if(operator_mode==1)			//half auto
				{
					if(HALFAUTO)					//half auto 
					{
						DelayUmSec(y_distance*1000);//delay ms
					
						LR_num.bits.LR3=0;	
						LR_num.bits.LR4=0;	
						}
				}
				else if(operator_mode==2)			// auto
					autorun();		
	
				KEYUPDOWN=0;
	
			}
		}
		chk_busy();
		if(!BUSY)
		{
			if(xx_photo==1)
			{
				if(EXCHANGE==14)
				{
					wr_lcd(comm,0x90);
					EXCHANGE=15;
				
				}
				else if(EXCHANGE==29)
				{
					array(jingei_times,100);
	
						EXCHANGE=30;
				
				}
	
				else if(EXCHANGE==44)
				{
					j=1;
					number(j);
					EXCHANGE=45;
				
				}
	
	
	
			}
	
			else if(xx_photo==2)
			{
				if(EXCHANGE==14)
				{
					chn_disp5(tab5);
	//					j=1;
	//				wr_lcd(dat,chn5[j]);
					EXCHANGE=15;
				}
				else if(EXCHANGE==29)
				{	
					wr_lcd(comm,0x94);
					EXCHANGE=30;
				}
			}
	
			else if(xx_photo==3)
			{
				if(EXCHANGE==14)
				{
					chn_disp8(tab8);
	//					j=1;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=15;
				}
	
				else if(EXCHANGE==29)
				{
					j=4;
					number(j);
					EXCHANGE=30;
				}
	
			}
	
	
			else if(xx_photo==4)
			{
	
				if(EXCHANGE==14)
				{
					chn_disp11(tab11);
	//					j=1;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=15;
				}
	
				else if(EXCHANGE==29)
				{
					
					wr_lcd(comm,0x94);
					EXCHANGE=30;
				}
	
				else if(EXCHANGE==44)
				{
					j=4;
					number(j);
					
					EXCHANGE=45;
				}
	
	
			}		


		}











		Cont.bits.W_KEYSCAN=0;


	}		

	if(Cont.bits.W_KEYBOARD==1)

	{
//		DelayUmSec(5);
		Back_xx_photo=xx_photo;//back xx_photo

//************************************************************************

		chk_busy();
		{
			if(!BUSY)
			{	
//				if(!KR0)						//NPN limit 感应到KR=0
//				{
//					if(KR_input==0)KR_input=1; 
//					LR_num.bits.LR5=1;		//x left limit
//					}
//	
//				if(!KR1)
//				{
//					if(KR_input==0)KR_input=1; 
//					LR_num.bits.LR6=1;		// x right limit
//					}
//				if(!KR2)
//				{
//					if(KR_input==0)KR_input=1; 
//					PWM_ON=0;		// z upward limit close z motor
//					}
//
//
//
//
//
//
//
//				if(!KR4)						
//				{
//					if(KR_input==0)KR_input=1; 
//					LR_num.bits.LR3=1;		//y fristword limit
//					}
//
//				 if(!KR5)
//				{
//					if(KR_input==0)KR_input=1; 
//					LR_num.bits.LR4=1;		//y backword limit
//					}
//


			if(KR_staus==1)
			{
				EXCHANGE=1;
				KR_staus=0;
				KR_input=0;
				limit_staus=0;

				}





			}
		}

//***************************************************************************


		chk_busy();
		if(!BUSY)
		{

			if(keyboard_flag==1)
			{
				keyboard();


			}
		}
		chk_busy();
		if(!BUSY)
		{
			if(xx_photo==1)
			{
				if(EXCHANGE==15)
				{
					chn_disp2(tab2);
	//					j=0;
	//					wr_lcd(dat,chn2[j]);
					EXCHANGE=16;
				
				}
			
				else if(EXCHANGE==30)
				{
					wr_lcd(comm,0x30);
	
					EXCHANGE=31;
				
				}
	
				else if(EXCHANGE==45)
				{
					j=2;
					number(j);
					EXCHANGE=46;
				
				}
	
			}
			else if(xx_photo==2)
			{
				if(EXCHANGE==15)
				{
					chn_disp5(tab5);
	//					j=2;
	//				wr_lcd(dat,chn5[j]);
					EXCHANGE=16;
				}
	
				else if(EXCHANGE==30)
				{	
					j=1;
					number(j);
					EXCHANGE=31;
				}
	
				else if(EXCHANGE==44)
				{	
					j=9;
					number(j);
					EXCHANGE=45;
				}
	
			}
	
			else if(xx_photo==3)
			{
	
				if(EXCHANGE==15)
				{
					chn_disp8(tab8);
	//					j=2;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=16;
				}
	
				else if(EXCHANGE==30)
				{
					array_num(z_postion,100);
					EXCHANGE=31;
				}
	
			}
	
	
			else if(xx_photo==4)
			{
	
				if(EXCHANGE==15)
				{
					chn_disp11(tab11);
	//					j=2;
	//				wr_lcd(dat,chn8[j]);
					EXCHANGE=16;
				}
	
				else if(EXCHANGE==30)
				{
					
					j=1;
					number(j);
					EXCHANGE=31;
				}
				else if(EXCHANGE==45)
				{
					j=5;
					number(j);
					
					EXCHANGE=46;
				}
	
	
	
			}

		}








		Cont.bits.W_KEYBOARD=0;

	}	




}
























⌨️ 快捷键说明

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