Diff of /trunk/IoDrvMEGAIO/ICmpIoDrv/IoDrvWriteOutputs/svnobj [000000] .. [r4]  Maximize  Restore

Switch to side-by-side view

--- a
+++ b/trunk/IoDrvMEGAIO/ICmpIoDrv/IoDrvWriteOutputs/svnobj
@@ -0,0 +1,185 @@
+Gx_l?=!0…jüoå+Qdy2¢VEåSystem.StringL{f8a58466-d7f6-439f-bbb8-d4600e41d099}ImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocumentL{f3878285-8e4f-490b-bb1b-9acbb7eb04db}TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}	Id
+longTagText
nIoDrvWriteOutputs_Count := IoDrvWriteOutputs_Count + 1;VIF pConnectorMapList = 0 OR nCount = 0 THENV	IoDrvWriteOutputs := Errors.ERR_PARAMETER;	RETURN;END_IF2FOR i:=0 TO nCount - 1 DOf	IF (pConnectorMapList[i].dwNumOfChannels = 0) THEN		CONTINUE;	END_IF	FOR j:= 0 TO UDINT_TO_UINT(pConnectorMapList[i].dwNumOfChannels) - 1 DO¢		wSrcIndex := pConnectorMapList[i].pChannelMapList[j].wIecAddressBitOffset / 8; ’		pbyIecAddress := pConnectorMapList[i].pChannelMapList[j].pbyIecAddress;				//Digital Out¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 0) THENx			IF pConnectorMapList[i].pChannelMapList[j].wSize = 1 THENV				bySrcValue := pbyIecAddress[wSrcIndex];¸				wParameterByteOffset := pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset / 8; ~				pbyDO := ADR(_TestFB.byDigitalOut) + wParameterByteOffset;	!þ				IF (pbyIecAddress[wSrcIndex] AND SHL(BYTE#1, pConnectorMapList[i].pChannelMapList[j].wIecAddressBitOffset MOD 8)) <> 0 THEN"H				{IF defined (pou:SysCpuSetBit2)}#À					SysCpuSetBit2(pbyDO, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			$"    			{ELSE}    %¾					SysCpuSetBit(pbyDO, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			&&    			{END_IF}    '				ELSE(L				{IF defined (pou:SysCpuResetBit2)})Æ					SysCpuResetBit2(pbyDO, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				*Ä					SysCpuResetBit(pbyDO, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				+&    		{	END_IF}    ,				END_IF			-~			ELSIF pConnectorMapList[i].pChannelMapList[j].wSize = 8 THEN.|				pbyDO := ADR(_TestFB.byDigitalOut) + wParameterByteOffset;/N				pbyDO^ := pbyIecAddress[wSrcIndex];0			END_IF 1		END_IF2		//Analog Out3¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 2) THEN4²			dwChannel := pConnectorMapList[i].pChannelMapList[j].pParameter^.dwParameterId - 2100;5|			_TestFB.awAnalogOut[dwChannel] := pbyIecAddress[wSrcIndex];6 		//Control Byte7¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 3) THEN8€				pbyCB := ADR(_TestFB.byControlByte) + wParameterByteOffset;	9À					SysCpuSetBit2(pbyCB, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			:¾					SysCpuSetBit(pbyCB, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			;Æ					SysCpuResetBit2(pbyCB, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				<Ä					SysCpuResetBit(pbyCB, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				=~				pbyCB := ADR(_TestFB.byControlByte) + wParameterByteOffset;>N				pbyCB^ := pbyIecAddress[wSrcIndex];?		//HW Config@¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 4) THENA|				pbyHWC := ADR(_TestFB.byHWConfig) + wParameterByteOffset;	BÂ					SysCpuSetBit2(pbyHWC, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			CÀ					SysCpuSetBit(pbyHWC, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			DÈ					SysCpuResetBit2(pbyHWC, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				EÆ					SysCpuResetBit(pbyHWC, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				Fz				pbyHWC := ADR(_TestFB.byHWConfig) + wParameterByteOffset;GP				pbyHWC^ := pbyIecAddress[wSrcIndex];H		//User LedsI¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 5) THENJz				pbyUL := ADR(_TestFB.byUserLeds) + wParameterByteOffset;	KÀ					SysCpuSetBit2(pbyUL, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			L¾					SysCpuSetBit(pbyUL, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			MÆ					SysCpuResetBit2(pbyUL, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				NÄ					SysCpuResetBit(pbyUL, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				Ox				pbyUL := ADR(_TestFB.byUserLeds) + wParameterByteOffset;PN				pbyUL^ := pbyIecAddress[wSrcIndex];Q$		//User Leds MaskR¨		IF (pConnectorMapList[i].pChannelMapList[j].pParameter^.dwDriverSpecific = 6) THENS‚				pbyULM := ADR(_TestFB.byUserLedMask) + wParameterByteOffset;	TÂ					SysCpuSetBit2(pbyULM, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			UÀ					SysCpuSetBit(pbyULM, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);			VÈ					SysCpuResetBit2(pbyULM, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				WÆ					SysCpuResetBit(pbyULM, pConnectorMapList[i].pChannelMapList[j].wParameterBitOffset MOD 8);				X€				pbyULM := ADR(_TestFB.byUserLedMask) + wParameterByteOffset;YP				pbyULM^ := pbyIecAddress[wSrcIndex];Z	END_FOR[END_FOR\FIoDrvWriteOutputs := Errors.ERR_OK;]Interface^L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}_:{attribute 'conditionalshow'}`@METHOD IoDrvWriteOutputs : UDINTaVAR_INPUTbj	pConnectorMapList : POINTER TO IoConfigConnectorMap;c	nCount : DINT;dEND_VAReVARf	i,j : DINT;g	k: UINT;h	wSize : WORD;iB	pbyIecAddress : POINTER TO BYTE;j&	bySrcValue : BYTE;k&	wSrcIndex : WORD;	l$	bySrcMask : BYTE;m(	wDestIndex : WORD;	n.	pdw: POINTER TO DWORD;o*	pw: POINTER TO WORD;pX	pbyDO : POINTER TO BYTE; // pointer to DO'sqh	pbyCB : POINTER TO BYTE; // Pointer to Control Byterb	pbyHWC: POINTER TO BYTE; // Pointer to HW Configs`	pbyUL : POINTER TO BYTE; // Pointer to UserLedstj	pbyULM : POINTER TO BYTE; // Pointer to UserLed Masku:	wParameterByteOffset : WORD;v$	dwChannel: DWORD;ÐÐÐE›ÐÐ	
+­ÁÚÐ-
ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­	ÚÐ-ÐÐ	
+­îÚÐ-ÐÐ	

+ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­íÚÐ-ÐÐ	
+­üÚÐ-ÐÐ	
+­ýÚÐ-ÐÐ	
+­ôÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­gÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ-ÐÐ	
+­ÚÐ- ÐÐ	
+­ÚÐ-!ÐÐ	
+­ÚÐ-"ÐÐ	
+­ÚÐ-#ÐÐ	
+­ÚÐ-$ÐÐ	
+­ÚÐ-%ÐÐ	
+­ÚÐ-&ÐÐ	
+­ÚÐ-'ÐÐ	
+­ÚÐ-(ÐÐ	
+­ÚÐ-)ÐÐ	
+­ ÚÐ-$ÐÐ	
+­!ÚÐ-*ÐÐ	
+­"ÚÐ-+ÐÐ	
+­#ÚÐ-,ÐÐ	
+­$ÚÐ--ÐÐ	
+­%ÚÐ-ÐÐ	
+­&ÚÐ-.ÐÐ	
+­'ÚÐ-/ÐÐ	
+­+ÚÐ-0ÐÐ	
+­õÚÐ-1ÐÐ	
+­fÚÐ-ÐÐ	
+­,ÚÐ-2ÐÐ	
+­öÚÐ-3ÐÐ	
+­÷ÚÐ-4ÐÐ	
+­øÚÐ-5ÐÐ	
+­úÚÐ-1ÐÐ	
+­ÚÐ-ÐÐ	
+­„ÚÐ-6ÐÐ	
+­…ÚÐ-7ÐÐ	
+­†ÚÐ-ÐÐ	
+­‡ÚÐ-ÐÐ	
+­ˆÚÐ-ÐÐ	
+­‰ÚÐ-8ÐÐ	
+­ŠÚÐ-!ÐÐ	
+­‹ÚÐ-"ÐÐ	
+­ŒÚÐ-9ÐÐ	
+­ÚÐ-$ÐÐ	
+­ŽÚÐ-:ÐÐ	
+­ÚÐ-&ÐÐ	
+­ÚÐ-'ÐÐ	
+­‘ÚÐ-(ÐÐ	
+­’ÚÐ-;ÐÐ	
+­“ÚÐ-$ÐÐ	
+­”ÚÐ-<ÐÐ	
+­•ÚÐ-+ÐÐ	
+­–ÚÐ-,ÐÐ	
+­—ÚÐ--ÐÐ	
+­˜ÚÐ-ÐÐ	
+­™ÚÐ-=ÐÐ	
+­šÚÐ->ÐÐ	
+­›ÚÐ-0ÐÐ	
+­‚ÚÐ-1ÐÐ	
+­ƒÚÐ-ÐÐ	
+­žÚÐ-?ÐÐ	
+­ŸÚÐ-@ÐÐ	
+­ ÚÐ-ÐÐ	
+­¡ÚÐ-ÐÐ	
+­¢ÚÐ-ÐÐ	
+­£ÚÐ-AÐÐ	
+­¤ÚÐ-!ÐÐ	
+­¥ÚÐ-"ÐÐ	
+­¦ÚÐ-BÐÐ	
+­§ÚÐ-$ÐÐ	
+­¨ÚÐ-CÐÐ	
+­©ÚÐ-&ÐÐ	
+­ªÚÐ-'ÐÐ	
+­«ÚÐ-(ÐÐ	
+­¬ÚÐ-DÐÐ	
+­­ÚÐ-$ÐÐ	
+­®ÚÐ-EÐÐ	
+­¯ÚÐ-+ÐÐ	
+­°ÚÐ-,ÐÐ	
+­±ÚÐ--ÐÐ	
+­²ÚÐ-ÐÐ	
+­³ÚÐ-FÐÐ	
+­´ÚÐ-GÐÐ	
+­µÚÐ-0ÐÐ	
+­œÚÐ-1ÐÐ	
+­ÚÐ-ÐÐ	
+­hÚÐ-HÐÐ	
+­iÚÐ-IÐÐ	
+­jÚÐ-ÐÐ	
+­kÚÐ-ÐÐ	
+­lÚÐ-ÐÐ	
+­mÚÐ-JÐÐ	
+­nÚÐ-!ÐÐ	
+­oÚÐ-"ÐÐ	
+­pÚÐ-KÐÐ	
+­qÚÐ-$ÐÐ	
+­rÚÐ-LÐÐ	
+­sÚÐ-&ÐÐ	
+­tÚÐ-'ÐÐ	
+­uÚÐ-(ÐÐ	
+­vÚÐ-MÐÐ	
+­wÚÐ-$ÐÐ	
+­xÚÐ-NÐÐ	
+­yÚÐ-+ÐÐ	
+­zÚÐ-,ÐÐ	
+­{ÚÐ--ÐÐ	
+­|ÚÐ-ÐÐ	
+­}ÚÐ-OÐÐ	
+­~ÚÐ-PÐÐ	
+­ÚÐ-0ÐÐ	
+­3ÚÐ-1ÐÐ	
+­·ÚÐ-ÐÐ	
+­¹ÚÐ-QÐÐ	
+­ºÚÐ-RÐÐ	
+­»ÚÐ-ÐÐ	
+­¼ÚÐ-ÐÐ	
+­½ÚÐ-ÐÐ	
+­¾ÚÐ-SÐÐ	
+­¿ÚÐ-!ÐÐ	
+­ÀÚÐ-"ÐÐ	
+­ÁÚÐ-TÐÐ	
+­ÂÚÐ-$ÐÐ	
+­ÃÚÐ-UÐÐ	
+­ÄÚÐ-&ÐÐ	
+­ÅÚÐ-'ÐÐ	
+­ÆÚÐ-(ÐÐ	
+­ÇÚÐ-VÐÐ	
+­ÈÚÐ-$ÐÐ	
+­ÉÚÐ-WÐÐ	
+­ÊÚÐ-+ÐÐ	
+­ËÚÐ-,ÐÐ	
+­ÌÚÐ--ÐÐ	
+­ÍÚÐ-ÐÐ	
+­ÎÚÐ-XÐÐ	
+­ÏÚÐ-YÐÐ	
+­ÐÚÐ-0ÐÐ	
+­¸ÚÐ-1ÐÐ	
+­ÚÐ-ÐÐ	
+­þÚÐ-ZÐÐ	
+­ÚÐ-[ÐÐ	
+­ÿÚÐ-ÐÐ	
+­ìÚÐ-\Ð]^ÐEÐÐ	
+­ëÚÐ-_ÐÐ	
+­ÚÐ-`ÐÐ	
+­ÚÐ-aÐÐ	
+­ÚÐ-bÐÐ	
+­ÚÐ-cÐÐ	
+­ÚÐ-dÐÐ	

ÚÐ-eÐÐ	
+­êÚÐ-fÐÐ	
+­ÚÐ-gÐÐ	
+­$ÚÐ-hÐÐ	
+­)ÚÐ-iÐÐ	
+­FÚÐ-jÐÐ	
+­DÚÐ-kÐÐ	
+­EÚÐ-lÐÐ	
+­ ÚÐ-mÐÐ	
+­ÀÚÐ-nÐÐ	
+­.ÚÐ-oÐÐ	
+­ÚÐ-pÐÐ	
+­IÚÐ-qÐÐ	
+­¶ÚÐ-rÐÐ	
+­€ÚÐ-sÐÐ	
+­ÑÚÐ-tÐÐ	
+­ÒÚÐ-ÐÐ	
+­-ÚÐ-uÐÐ	
+­ÚÐ-vÐÐ	
+­ÚÐ-dÐÐ	
+­ÚÐ-
\ No newline at end of file