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

📄 plc_run.c

📁 以前做的一个仿PLC程序
💻 C
📖 第 1 页 / 共 3 页
字号:
		 PLC_TEMP2=PLC_ByteRead16(PLC_PC+6);
		 PLC_TEMP3=PLC_ByteRead16(PLC_PC+10);
		 PLC_TEMP4=PLC_ProgAddReturn(PLC_PC+14);
		 if(PLC_TEMP1>PLC_TEMP3)
		   {PLC_BIT_ON(PLC_TEMP4);PLC_BIT_OFF(PLC_TEMP4+1);PLC_BIT_OFF(PLC_TEMP4+2);}
		 else if(PLC_TEMP2<PLC_TEMP3)
		 	{PLC_BIT_OFF(PLC_TEMP4);PLC_BIT_OFF(PLC_TEMP4+1);PLC_BIT_ON(PLC_TEMP4+2);}
		 else{PLC_BIT_OFF(PLC_TEMP4);PLC_BIT_ON(PLC_TEMP4+1);PLC_BIT_OFF(PLC_TEMP4+2);}
		 }}//END PLC_ACC_BIT&0x01
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=18;}break; //ZCP
	 case 0x1028:
	 	{if(PLC_ACC_BIT&0x01)
	 		{if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
		       {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
			    PLC_ByteWrite16(PLC_PC+6,PLC_ByteRead16(PLC_PC+2));}}
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=10;}break; //MOV
	 case 0x102E:
	 	{if(PLC_ACC_BIT&0x01){
		 if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
		 {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		 PLC_TEMP5=PLC_ProgAddReturn(PLC_PC+2)+PLC_R_START_ADD;
		 PLC_TEMP6=PLC_ProgAddReturn(PLC_PC+6)+PLC_R_START_ADD;
		 PLC_TEMP3=PLC_ByteRead16(PLC_PC+10)*2;
		 for(PLC_TEMP4=0;PLC_TEMP3>PLC_TEMP4;PLC_TEMP4+=2)
		 	{if(PLC_BIT_TEST(M8024)){PLC_RAM16(PLC_TEMP5+PLC_TEMP4)=PLC_RAM16(PLC_TEMP6+PLC_TEMP4);}
			 else {PLC_RAM16(PLC_TEMP6+PLC_TEMP4)=PLC_RAM16(PLC_TEMP5+PLC_TEMP4);}
			}
		 }}//END PLC_ACC_BIT&0x01
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=14;}break; //BMOV(M8024)
/********************(D)传送比较指令(P)******************************************/
	 case 0x1025://CMP
	 	{if(PLC_ACC_BIT&0x01){
		 if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
		 {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		 PLC_TEMP5=PLC_ByteRead32(PLC_PC+2);
		 PLC_TEMP6=PLC_ByteRead32(PLC_PC+10);
		 PLC_TEMP3=PLC_ProgAddReturn(PLC_PC+18);
		 if(PLC_TEMP5>PLC_TEMP6)
		   {PLC_BIT_ON(PLC_TEMP3);PLC_BIT_OFF(PLC_TEMP3+1);PLC_BIT_OFF(PLC_TEMP3+2);}
		 else if(PLC_TEMP5==PLC_TEMP6)
		 	{PLC_BIT_OFF(PLC_TEMP3);PLC_BIT_ON(PLC_TEMP3+1);PLC_BIT_OFF(PLC_TEMP3+2);}
		 else{PLC_BIT_OFF(PLC_TEMP3);PLC_BIT_OFF(PLC_TEMP3+1);PLC_BIT_ON(PLC_TEMP3+2);}
		 }}//END PLC_ACC_BIT&0x01
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=26;}break; //CMP
	 case 0x1027://ZCP
	 	{if(PLC_ACC_BIT&0x01){
		 if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
		 {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		 PLC_TEMP5=PLC_ByteRead32(PLC_PC+2);
		 PLC_TEMP6=PLC_ByteRead32(PLC_PC+10);
		 PLC_TEMPA=PLC_ByteRead32(PLC_PC+18);
		 PLC_TEMP4=PLC_ProgAddReturn(PLC_PC+26);
		 if(PLC_TEMP5>PLC_TEMPA)
		   {PLC_BIT_ON(PLC_TEMP4);PLC_BIT_OFF(PLC_TEMP4+1);PLC_BIT_OFF(PLC_TEMP4+2);}
		 else if(PLC_TEMP6<PLC_TEMPA)
		 	{PLC_BIT_OFF(PLC_TEMP4);PLC_BIT_OFF(PLC_TEMP4+1);PLC_BIT_ON(PLC_TEMP4+2);}
		 else{PLC_BIT_OFF(PLC_TEMP4);PLC_BIT_ON(PLC_TEMP4+1);PLC_BIT_OFF(PLC_TEMP4+2);}
		 }}//END PLC_ACC_BIT&0x01
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=34;}break; //ZCP
	 case 0x1029://MOV
	 	{if(PLC_ACC_BIT&0x01)
	 		{if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
		       {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
			    PLC_ByteWrite32(PLC_PC+10,PLC_ByteRead32(PLC_PC+2));}}
		 else{PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}	  
		 PLC_PC+=18;}break; //MOV
/********************四则.逻辑运算*******************************************/
	 case 0x0038://ADD(+)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)+PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //ADD(+)
	 case 0x003A://SUB(-)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)-PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //SUB(-)
	 case 0x003C://MUL(*)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite32(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)*PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //MUL(*)
	 case 0x003E: //DIV(/)
	 	{if(PLC_ACC_BIT&0x01){
		 PLC_TEMP1=PLC_ByteRead16(PLC_PC+2);
		 PLC_TEMP2=PLC_ByteRead16(PLC_PC+6);
		 PLC_ByteWrite32(PLC_PC+10,(PLC_TEMP1/PLC_TEMP2)+((PLC_TEMP1%PLC_TEMP2)*0x10000));
		 }//END PLC_ACC_BIT
		 PLC_PC+=14;}break; //DIV(/)
	 case 0x0040://INC(++)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite16(PLC_PC+2,PLC_ByteRead16(PLC_PC+2)+1);}
		 PLC_PC+=6;}break;  //INC(++)
	 case 0x0042://DEC(--)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite16(PLC_PC+2,PLC_ByteRead16(PLC_PC+2)-1);}
		 PLC_PC+=6;}break;  //DEC(--)
	 case 0x0044://WAND
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)&PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //WAND
	 case 0x0046://WOR
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)|PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //WOR
	 case 0x0048://WXOR
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)^PLC_ByteRead16(PLC_PC+6));}
		 PLC_PC+=14;}break; //WXOR
/********************(D)四则.逻辑运算*******************************************/
	 case 0x0039://ADD(+)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)+PLC_ByteRead32(PLC_PC+10));}
		 PLC_PC+=26;}break; //ADD(+)
	 case 0x003B://SUB(-)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)-PLC_ByteRead32(PLC_PC+10));}
		 PLC_PC+=26;}break; //SUB(-)M8020(零标志)M8021(借位)M8022(进位)
	 case 0x003D://MUL(*)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_TEMP8=PLC_ByteRead32(PLC_PC+2);
		    PLC_TEMP9=PLC_ByteRead32(PLC_PC+10);
			PLC_TEMP7=PLC_TEMP8*PLC_TEMP9;
		    PLC_ByteWrite64(PLC_PC+18,PLC_TEMP7,(PLC_TEMP7/0x100000000));}
		 PLC_PC+=26;}break; //MUL(*)
	 case 0x003F://DIV(/)
	 	{if(PLC_ACC_BIT&0x01){
		 PLC_TEMP5=PLC_ByteRead32(PLC_PC+2);
		 PLC_TEMP6=PLC_ByteRead32(PLC_PC+10);
		 PLC_ByteWrite64(PLC_PC+18,PLC_TEMP5/PLC_TEMP6,PLC_TEMP5%PLC_TEMP6);
		 }//END PLC_ACC_BIT
		 PLC_PC+=26;}break; //DIV(/)
	 case 0x0041://INC(++)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite32(PLC_PC+2,PLC_ByteRead32(PLC_PC+2)+1);}
		 PLC_PC+=10;}break; //INC(++)
	 case 0x0043://DEC(--)
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_ByteWrite32(PLC_PC+2,PLC_ByteRead32(PLC_PC+2)-1);}
		 PLC_PC+=10;}break; //DEC(--)
	 case 0x0045://WAND
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)&PLC_ByteRead32(PLC_PC+10));}
		 PLC_PC+=26;}break; //WAND
	 case 0x0047://WOR
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)|PLC_ByteRead32(PLC_PC+10));}
		 PLC_PC+=26;}break; //WOR
	 case 0x0049://WXOR
	 	{if(PLC_ACC_BIT&0x01)
		  {PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)^PLC_ByteRead32(PLC_PC+10));}
		 PLC_PC+=26;}break; //WXOR
/********************四则.逻辑运算(P)*******************************************/
	 case 0x1038://ADD(+)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)+PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //ADD(+)
	 case 0x103A://SUB(-)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)-PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //SUB(-)
	 case 0x103C://MUL(*)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)*PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //MUL(*)
	 case 0x103E: //DIV(/)
	 	{if(PLC_ACC_BIT&0x01){
		if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_TEMP1=PLC_ByteRead16(PLC_PC+2);
		       PLC_TEMP2=PLC_ByteRead16(PLC_PC+6);
		       PLC_ByteWrite32(PLC_PC+10,(PLC_TEMP1/PLC_TEMP2)+((PLC_TEMP1%PLC_TEMP2)*0x10000));}
		 }//END PLC_ACC_BIT
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //DIV(/)
	 case 0x1040://INC(++)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+2,PLC_ByteRead16(PLC_PC+2)+1);}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=6;}break;  //INC(++)
	 case 0x1042://DEC(--)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+2,PLC_ByteRead16(PLC_PC+2)-1);}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=6;}break;  //DEC(--)
	 case 0x1044://WAND
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)&PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //WAND
	 case 0x1046://WOR
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)|PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //WOR
	 case 0x1048://WXOR
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite16(PLC_PC+10,PLC_ByteRead16(PLC_PC+2)^PLC_ByteRead16(PLC_PC+6));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=14;}break; //WXOR
/********************(D)四则.逻辑运算(P)*******************************************/
	 case 0x1039://ADD(+)M8020(零标志)M8021(借位)M8022(进位)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)+PLC_ByteRead32(PLC_PC+10));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //ADD(+)
	 case 0x103B://SUB(-)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	 
		       PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)-PLC_ByteRead32(PLC_PC+10));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //SUB(-)M8020(零标志)M8021(借位)M8022(进位)
	 case 0x103D://MUL(*)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_TEMP8=PLC_ByteRead32(PLC_PC+2);
		       PLC_TEMP9=PLC_ByteRead32(PLC_PC+10);
			   PLC_TEMP7=PLC_TEMP8*PLC_TEMP9;
		       PLC_ByteWrite64(PLC_PC+18,PLC_TEMP7,PLC_TEMP7/0x100000000);}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //MUL(*)
	 case 0x103F://DIV(/)
	 	{if(PLC_ACC_BIT&0x01){
		 if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_TEMP5=PLC_ByteRead32(PLC_PC+2);
		       PLC_TEMP6=PLC_ByteRead32(PLC_PC+10);
		       PLC_ByteWrite64(PLC_PC+18,PLC_TEMP5/PLC_TEMP6,PLC_TEMP5%PLC_TEMP6);}
		 }//END PLC_ACC_BIT
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //DIV(/)
	 case 0x1041://INC(++)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+2,PLC_ByteRead32(PLC_PC+2)+1);}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=10;}break; //INC(++)
	 case 0x1043://DEC(--)
	 	{if(PLC_ACC_BIT&0x01)
		   {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+2,PLC_ByteRead32(PLC_PC+2)-1);}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=10;}break; //DEC(--)
	 case 0x1045://WAND
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)&PLC_ByteRead32(PLC_PC+10));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //WAND
	 case 0x1047://WOR
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)|PLC_ByteRead32(PLC_PC+10));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);}
		 PLC_PC+=26;}break; //WOR
	 case 0x1049://WXOR
	 	{if(PLC_ACC_BIT&0x01)
		  {if(PLC_FNC_P_BIT_TEST(PLC_PC-PLC_PROG_START_ADD2)==0) 
			  {PLC_FNC_P_BIT_ON(PLC_PC-PLC_PROG_START_ADD2);	  
		       PLC_ByteWrite32(PLC_PC+18,PLC_ByteRead32(PLC_PC+2)^PLC_ByteRead32(PLC_PC+10));}}
		 else {PLC_FNC_P_BIT_OFF(PLC_PC-PLC_PROG_START_ADD2);} 
		 PLC_PC+=26;}break; //WXOR
/********************数据处理************************************************/
	 case 0x0060: //ZRST
	 	{if(PLC_ACC_BIT&0x01)
		   {PLC_TEMP1=PLC_ProgTypeReturn(PLC_PC+2);
		    if(PLC_TEMP1==0x02)
			  {PLC_TEMP2=PLC_ProgAddReturn(PLC_PC+6)+1;
			   if(PLC_TEMP2>=0x0C00&&PLC_TEMP2<=0x0CDF){PLC_TEMP2+=2;}
			   PLC_ByteReset(PLC_ProgAddReturn(PLC_PC+2),PLC_TEMP2);}
			else if(PLC_TEMP1==0x0b)

⌨️ 快捷键说明

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