lib/bcd_to_int.txt
changeset 40 873a5b60a7ea
parent 39 e08c65e27557
child 41 8998c8b24b60
--- a/lib/bcd_to_int.txt	Wed Jul 11 09:53:27 2007 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,98 +0,0 @@
-(*
- * (c) 2003 Mario de Sousa
- *
- * Offered to the public under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
- * Public License for more details.
- *
- * This code is made available on the understanding that it will not be
- * used in safety-critical situations without a full and competent review.
- *)
-
-(*
- * An IEC 61131-3 IL and ST compiler.
- *
- * Based on the
- * FINAL DRAFT - IEC 61131-3, 2nd Ed. (2001-12-10)
- *
- *)
-
-(*
- * This is part of the library conatining the functions
- * and function blocks defined in the standard.
- *
- * Conversion from BCD
- * -------------------
- *)
-
-
-
-FUNCTION BYTE_BCD_TO_USINT: USINT
-  VAR_INPUT
-    BCD : BYTE;
-  END_VAR
-
-  BYTE_BCD_TO_USINT := BCD MOD 16;
-  BCD := BCD / 16;
-  BYTE_BCD_TO_USINT := BYTE_BCD_TO_USINT + 10*BCD;
-END_FUNCTION
-
-
-
-
-FUNCTION WORD_BCD_TO_UINT: UINT
-  VAR_INPUT
-    BCD : WORD;
-  END_VAR
-
-  WORD_BCD_TO_UINT := BCD MOD 16;
-  BCD := BCD / 16;
-  WORD_BCD_TO_UINT := WORD_BCD_TO_UINT + 10*(BCD MOD 16);
-  BCD := BCD / 16;
-  WORD_BCD_TO_UINT := WORD_BCD_TO_UINT + 100*(BCD MOD 16);
-  BCD := BCD / 16;
-  WORD_BCD_TO_UINT := WORD_BCD_TO_UINT + 1000*BCD;
-END_FUNCTION
-
-
-
-
-FUNCTION DWORD_BCD_TO_UDINT: UDINT
-  VAR_INPUT
-    BCD : DWORD;
-  END_VAR
-
-  DWORD_BCD_TO_UDINT := BCD MOD 16;
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 10*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 100*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 1000*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 1_0000*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 10_0000*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 100_0000*(BCD MOD 16);
-  BCD := BCD / 16;
-  DWORD_BCD_TO_UDINT := DWORD_BCD_TO_UDINT + 1000_0000*BCD;
-END_FUNCTION
-
-
-
-
-FUNCTION LWORD_BCD_TO_ULINT: ULINT
-  VAR_INPUT
-    BCD : LWORD;
-  END_VAR
-
-  LWORD_BCD_TO_ULINT := DWORD_BCD_TO_UDINT(BCD MOD (256*256*256*256));
-  BCD := BCD / (256*256*256*256);
-  LWORD_BCD_TO_ULINT := LWORD_BCD_TO_ULINT + 1_0000_0000*DWORD_BCD_TO_UDINT(BCD);
-END_FUNCTION