//************************************************************************************
//**  
//**  File name:     G:\30F6012A\master\master.c
//**  Generated by:  Flowcode v4.4.13.69
//**  Date:          Friday, June 10, 2011 12:40:47
//**  Licence:       Professional
//**  Registered to: wolfgang sachs
//**  
//**  
//**  http://www.matrixmultimedia.com
//************************************************************************************


#define MX_PIC_16BIT

//Defines for microcontroller
#define P30F6012A
#define MX_CLKS_PER_INST 4
#define MX_EE
#define MX_EE_SIZE 4096
#define MX_SPI1
#define MX_SPI1_PORT_F
#define MX_SPI1_SDI 2
#define MX_SPI1_SDO 3
#define MX_SPI1_SCK 6
#define MX_SPI2
#define MX_SPI2_PORT_G
#define MX_SPI2_SDI 7
#define MX_SPI2_SDO 8
#define MX_SPI2_SCK 6
#define MX_UART1
#define MX_UART1_PORT_F
#define MX_UART2
#define MX_UART2_PORT_F
#define MX_MI2C1
#define MX_I2C1_PORT_G
#define MX_I2C1_SDA 3
#define MX_I2C1_SCL 2
#define MX_PWM
#define MX_PWM_PORT_D
#define MX_PWM_CNT 4
#define MX_PWM_1 0
#define MX_PWM_2 1
#define MX_PWM_3 2
#define MX_PWM_4 3
#define MX_PWM_5 4
#define MX_PWM_6 5
#define MX_PWM_7 6
#define MX_PWM_8 7
#define MX_ECAN

//Functions
#define MX_Fosc 117920000

#include "../support/dsPIC30F/h/p30fxxxx.h"
#include <stdlib.h>
#include <math.h>

#define _RESERVED1(x) int temp1 = (x);
#define _RESERVED2(x) int temp2 = (x);
#define _ICD(x) _FICD(x);

//Configuration data
_FOSC(0x8703)  //addr = 0xf80000
_FWDT(0x3f)  //addr = 0xf80002
_FBORPOR(0x8733)  //addr = 0xf80004
_RESERVED1(0x310f)  //addr = 0xf80006
_RESERVED2(0x330f)  //addr = 0xf80008
_FGS(0x7)  //addr = 0xf8000a
_ICD(0xc003)  //addr = 0xf8000c

//Internal functions
#include "C:\Program Files\Matrix Multimedia\Flowcode PIC24&dsPIC V4\FCD\internals.h"

//Macro function declarations
void FCM_out_off();
void FCM_int1_digitime();
void FCM_out_on();
void FCM_i2c_Q_out(char FCL_Q_PORT1BIS8);
void FCM_digitime01_start();
void FCM_digitime01_abgelaufen();
void FCM_i2c_clock();
void FCM_i2c_stopp();
void FCM_i2c_ack_von_slave();
void FCM_i2_start();
void FCM_i2c_Qx_out_port1bis8();
void FCM_anz_curpos(char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16, char FCL_CUR_AN_AUS_NC);
void FCM_anz_start();
void FCM_anz_wr();
void FCM_digitime(char FCL_NR_1BIS32);
void FCM_digitime02_abgelaufen();
void FCM_digitime02_start();
void FCM_digitime_macros_definieren();
void FCM_digitime03_start();
void FCM_digitime03_abgelaufen();
void FCM_digitime_xx_abgl_bearbeiten(char FCL_NR);
void FCM_digitime_xx_start_bearbeiten(char FCL_NR);
void FCM_test_durchlaufzeit();
void FCM_led_out();
void FCM_ras_tas_lesen();
void FCM_led_reset();
void FCM_i2c_Ix_in_port1bis8();
void FCM_i2c_I1bisI64_lesen(char FCL_I_PORT1BIS8);
void FCM_i2c_eeprom_wr(char FCL_BLOCK_0BIS1, char FCL_AD_HOB, char FCL_AD_LOB, char FCL_DATEN);
void FCM_i2c_eeprom_rd(char FCL_BLOCK_0BIS1, char FCL_AD_HOB, char FCL_AD_LOB);
void FCM_no_ac_eeprom();
void FCM_i2c_eeprom_start();
void FCM_i2c_clock_eeprom();
void FCM_i2c_ack_von_slave_eeprom();
void FCM_i2c_stopp_eeprom();
void FCM_i2c_eeprom_write_byte(char FCL_DATEN);
void FCM_i2c_write_byte(char FCL_DATEN);
void FCM_anz_nummer(short FCL_ZAHL_0BIS32767, char FCL_STELLEN, char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16);
void FCM_anz_text(char* PFCL_TEXT, char FCL_STELLEN, char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16);
void FCM_netz_aus();
void FCM_adc_1bis5_to_variable();
void FCM_alles_nullen();
void FCM_settime_set();
void FCM_digitime04_abgelaufen();
void FCM_digitime05_abgelaufen();
void FCM_digitime06_abgelaufen();
void FCM_digitime07_abgelaufen();
void FCM_digitime08_abgelaufen();
void FCM_digitime09_abgelaufen();
void FCM_digitime10_abgelaufen();
void FCM_digitime11_abgelaufen();
void FCM_digitime12_abgelaufen();
void FCM_digitime13_abgelaufen();
void FCM_digitime14_abgelaufen();
void FCM_digitime15_abgelaufen();
void FCM_digitime16_abgelaufen();
void FCM_digitime17_abgelaufen();
void FCM_digitime18_abgelaufen();
void FCM_digitime19_abgelaufen();
void FCM_digitime20_abgelaufen();
void FCM_digitime21_abgelaufen();
void FCM_digitime22_abgelaufen();
void FCM_digitime23_abgelaufen();
void FCM_digitime24_abgelaufen();
void FCM_digitime25_abgelaufen();
void FCM_digitime26_abgelaufen();
void FCM_digitime27_abgelaufen();
void FCM_digitime28_abgelaufen();
void FCM_digitime29_abgelaufen();
void FCM_digitime30_abgelaufen();
void FCM_digitime31_abgelaufen();
void FCM_digitime32_abgelaufen();
void FCM_digitime33_abgelaufen();
void FCM_digitime04_start();
void FCM_digitime05_start();
void FCM_digitime06_start();
void FCM_digitime07_start();
void FCM_digitime08_start();
void FCM_digitime09_start();
void FCM_digitime10_start();
void FCM_digitime11_start();
void FCM_digitime12_start();
void FCM_digitime13_start();
void FCM_digitime14_start();
void FCM_digitime15_start();
void FCM_digitime16_start();
void FCM_digitime17_start();
void FCM_digitime18_start();
void FCM_digitime19_start();
void FCM_digitime20_start();
void FCM_digitime21_start();
void FCM_digitime22_start();
void FCM_digitime23_start();
void FCM_digitime24_start();
void FCM_digitime25_start();
void FCM_digitime26_start();
void FCM_digitime27_start();
void FCM_digitime28_start();
void FCM_digitime29_start();
void FCM_digitime30_start();
void FCM_digitime31_start();
void FCM_digitime32_start();
void FCM_digitime33_start();
void FCM_RS232();
void FCM_Ra_set();


//Variable declarations
#define FCSZ_SPACE5 5
#define FCSZ_ANZ_TEXT_UPDATE_Z0S1 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S0 16
#define FCSZ_SPACE6 6
#define FCSZ_ANZ_TEXT_UPDATE_Z0S2 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S1 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S10 16
#define FCSZ_SPACE7 7
#define FCSZ_ANZ_TEXT_UPDATE_Z0S3 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S10 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S2 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S11 16
#define FCSZ_SPACE8 8
#define FCSZ_ANZ_TEXT_UPDATE_Z0S4 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S11 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S3 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S12 16
#define FCSZ_SPACE9 9
#define FCSZ_ANZ_TEXT_UPDATE_Z0S5 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S12 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S4 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S13 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S6 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S13 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S5 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S14 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S7 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S14 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S6 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S15 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S8 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S15 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S7 16
#define FCSZ_ANZ_TEXT_UPDATE_Z0S9 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S8 16
#define FCSZ_ANZ_TEXT_UPDATE_Z1S9 16
#define FCSZ_SPACE10 10
#define FCSZ_SPACE11 11
#define FCSZ_SPACE12 12
#define FCSZ_SPACE13 13
#define FCSZ_SPACE1 1
#define FCSZ_SPACE14 14
#define FCSZ_SPACE2 2
#define FCSZ_SPACE15 15
#define FCSZ_SPACE3 3
#define FCSZ_SPACE16 16
#define FCSZ_SPACE4 4
#define FCSZ_ANZ_TEXT_UPDATE_Z0S0 16
volatile char FCV_RA[9];
volatile char FCV_EEPROM;
volatile char FCV_EXTERN;
volatile short FCV_ANZ_NUMMER_UPDATE_Z0[16];
volatile char FCV_SPACE5[FCSZ_SPACE5];
volatile char FCV_ENA0BIS15_08;
volatile char FCV_I2C_DELAY;
volatile char FCV_I2C_IXX_1BIS8;
volatile char FCV_ENA0_AUS;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S1[FCSZ_ANZ_TEXT_UPDATE_Z0S1];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S0[FCSZ_ANZ_TEXT_UPDATE_Z1S0];
volatile char FCV_POTI3_INTEGER;
volatile short FCV_EE_INT_ENDE;
volatile short FCV_ANZ_NUMMER_UPDATE_Z1[16];
volatile char FCV_SPACE6[FCSZ_SPACE6];
volatile char FCV_ENA0BIS15_09;
volatile char FCV_ENA7_TEST;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S2[FCSZ_ANZ_TEXT_UPDATE_Z0S2];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S1[FCSZ_ANZ_TEXT_UPDATE_Z1S1];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S10[FCSZ_ANZ_TEXT_UPDATE_Z1S10];
volatile short FCV_DIGITIME_SETTIME[33];
volatile char FCV_ADC_BYTE[6];
volatile char FCV_SPACE7[FCSZ_SPACE7];
volatile char FCV_LED_1BIS8;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S3[FCSZ_ANZ_TEXT_UPDATE_Z0S3];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S10[FCSZ_ANZ_TEXT_UPDATE_Z0S10];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S2[FCSZ_ANZ_TEXT_UPDATE_Z1S2];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S11[FCSZ_ANZ_TEXT_UPDATE_Z1S11];
volatile char FCV_SETTIME;
volatile char FCV_INTERN;
volatile char FCV_SPACE8[FCSZ_SPACE8];
volatile char FCV_NBET;
volatile char FCV_ZAEHLT;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S4[FCSZ_ANZ_TEXT_UPDATE_Z0S4];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S11[FCSZ_ANZ_TEXT_UPDATE_Z0S11];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S3[FCSZ_ANZ_TEXT_UPDATE_Z1S3];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S12[FCSZ_ANZ_TEXT_UPDATE_Z1S12];
volatile short FCV_RS232_RX_WERT;
volatile char FCV_SPACE9[FCSZ_SPACE9];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S5[FCSZ_ANZ_TEXT_UPDATE_Z0S5];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S12[FCSZ_ANZ_TEXT_UPDATE_Z0S12];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S4[FCSZ_ANZ_TEXT_UPDATE_Z1S4];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S13[FCSZ_ANZ_TEXT_UPDATE_Z1S13];
volatile char FCV_POTI2_INTEGER;
volatile char FCV_I[33];
volatile short FCV_DUMMI;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S6[FCSZ_ANZ_TEXT_UPDATE_Z0S6];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S13[FCSZ_ANZ_TEXT_UPDATE_Z0S13];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S5[FCSZ_ANZ_TEXT_UPDATE_Z1S5];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S14[FCSZ_ANZ_TEXT_UPDATE_Z1S14];
volatile char FCV_POTI5_BYTE;
volatile char FCV_NC;
volatile char FCV_I2C_QXX_1BIS8;
volatile short FCV_EEPROM_DATEN;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S7[FCSZ_ANZ_TEXT_UPDATE_Z0S7];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S14[FCSZ_ANZ_TEXT_UPDATE_Z0S14];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S6[FCSZ_ANZ_TEXT_UPDATE_Z1S6];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S15[FCSZ_ANZ_TEXT_UPDATE_Z1S15];
volatile char FCV_RS232_SEND;
volatile char FCV_POTI4_BYTE;
volatile short FCV_DIGITIME_ORGTIME[33];
volatile char FCV_LED[9];
volatile char FCV_DIGTIME_STATUS_FLAG[33];
volatile char FCV_ENA2_TAS;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S8[FCSZ_ANZ_TEXT_UPDATE_Z0S8];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S15[FCSZ_ANZ_TEXT_UPDATE_Z0S15];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S7[FCSZ_ANZ_TEXT_UPDATE_Z1S7];
volatile short FCV_ADC_INTEGER[6];
volatile char FCV_POTI1_INTEGER;
volatile char FCV_POTI3_BYTE;
volatile char FCV_ENA0BIS15_10;
volatile char FCV_INT_IST_FLAG[33];
volatile char FCV_ANZ_TEXT_UPDATE_Z0S9[FCSZ_ANZ_TEXT_UPDATE_Z0S9];
volatile char FCV_ANZ_TEXT_UPDATE_Z1S8[FCSZ_ANZ_TEXT_UPDATE_Z1S8];
volatile char FCV_POTI2_BYTE;
volatile short FCV_DIGITIME_ARBTIME[33];
volatile char FCV_ENA0BIS15_11;
volatile char FCV_ANZ_TEXT_UPDATE_Z1S9[FCSZ_ANZ_TEXT_UPDATE_Z1S9];
volatile char FCV_RASTAS_WAR[9];
volatile char FCV_POTI1_BYTE;
volatile char FCV_SPACE10[FCSZ_SPACE10];
volatile char FCV_ENA0BIS15_12;
volatile char FCV_I2C_RW;
volatile char FCV_DIGITIME_DIV_FAK[33];
volatile char FCV_POTI5_INTEGER;
volatile char FCV_SPACE11[FCSZ_SPACE11];
volatile char FCV_TAS_1BIS8;
volatile char FCV_ENA0BIS15_13;
volatile char FCV_DIGITIME_CONF[33];
volatile char FCV_SPACE12[FCSZ_SPACE12];
volatile char FCV_ENA0BIS15_14;
volatile char FCV_AUS;
volatile short FCV_EE_INT_START;
volatile char FCV_SPACE13[FCSZ_SPACE13];
volatile char FCV_SPACE1[FCSZ_SPACE1];
volatile char FCV_ENA0BIS15_15;
volatile char FCV_ENA0BIS15_04;
volatile char FCV_AN;
volatile char FCV_BET;
volatile char FCV_Q[33];
volatile char FCV_IX_PORT_1BIS8;
volatile char FCV_RASTAS_IST[9];
volatile char FCV_SPACE14[FCSZ_SPACE14];
volatile char FCV_SPACE2[FCSZ_SPACE2];
volatile char FCV_ENA0BIS15_05;
volatile char FCV_ABGELAUFEN;
volatile char FCV_TA[9];
volatile char FCV_POTI4_INTEGER;
volatile char FCV_SPACE15[FCSZ_SPACE15];
volatile char FCV_SPACE3[FCSZ_SPACE3];
volatile char FCV_ENA0BIS15_06;
volatile char FCV_START;
volatile char FCV_ENA1_ANZ;
volatile char FCV_ENA3_LED;
volatile char FCV_SPACE16[FCSZ_SPACE16];
volatile char FCV_SPACE4[FCSZ_SPACE4];
volatile char FCV_ENA0BIS15_07;
volatile char FCV_ANZ_TEXT_UPDATE_Z0S0[FCSZ_ANZ_TEXT_UPDATE_Z0S0];


//Defines:

/**** Macro Substitutions ****
LATB = D1 Port
TRISB = D1 Data Direction
LATB = D2 Port
TRISB = D2 Data Direction
LATB = D3 Port
TRISB = D3 Data Direction
LATB = D4 Port
TRISB = D4 Data Direction
LATB = RS Port
TRISB = RS Data Direction
LATB = E Port
TRISB = E Data Direction
8 = Data 1_Pin
9 = Data 2 Pin
10 = Data 3 Pin
11 = Data 4 Pin
12 = RS Pin
13 = Enable Pin
LCD_2164998 = Unique Component Reference Number
2 = Row Count
16 = Column Count
******************************/

	//component connections
	#define LCD_2164998_PORT0    LATB
	#define LCD_2164998_TRIS0    TRISB
	#define LCD_2164998_PORT1    LATB
	#define LCD_2164998_TRIS1    TRISB
	#define LCD_2164998_PORT2    LATB
	#define LCD_2164998_TRIS2    TRISB
	#define LCD_2164998_PORT3    LATB
	#define LCD_2164998_TRIS3    TRISB
	#define LCD_2164998_PORT4    LATB
	#define LCD_2164998_TRIS4    TRISB
	#define LCD_2164998_PORT5    LATB
	#define LCD_2164998_TRIS5    TRISB
	#define LCD_2164998_BIT0    	8
	#define LCD_2164998_BIT1    	9
	#define LCD_2164998_BIT2    	10
	#define LCD_2164998_BIT3    	11
	#define LCD_2164998_RS      	12
	#define LCD_2164998_E       	13
	#define LCD_2164998_ROWCNT	2
	#define LCD_2164998_COLCNT	16

	#define LCD_2164998_DELAY   delay_us(120)




//LCDDisplay(0): //Macro function declarations

static void FCD_LCDDisplay0_RawSend(char in, char mask);
static void FCD_LCDDisplay0_Start();
static void FCD_LCDDisplay0_Clear();
static void FCD_LCDDisplay0_PrintASCII(char Character);
static void FCD_LCDDisplay0_Command(char in);
static void FCD_LCDDisplay0_Cursor(char x, char y);
static void FCD_LCDDisplay0_PrintNumber(short Number);
static void FCD_LCDDisplay0_PrintString(char* String, char MSZ_String);
static void FCD_LCDDisplay0_ScrollDisplay(char Direction, char Num_Positions);
static void FCD_LCDDisplay0_ClearLine(char Line);
static void FCD_LCDDisplay0_RAM_Write(char nIdx, char d0, char d1, char d2, char d3, char d4, char d5, char d6, char d7);
//Defines:



//EEPROM(0): //Macro function declarations

static short FCD_EEPROM0_EEPROMRead(short addr);
static void FCD_EEPROM0_WriteEEPROM(short addr, short data);
//Defines:

/**** Macro Substitutions ****
B = RTS Port Letter Uppercase
b = RTS Port Letter Lowercase
B = CTS Port Letter Uppercase
b = CTS Port Letter Lowercase
0 = RTS Pin
4 = CTS Pin
2 = UART Selection		(0-SW / 1-UART1 / 2-UART2)
0 = Flow Control		(0-Off / 1-On)
0 = Debug Enable		(0-Off / 1-On)
0 = Echo Enable		(0-Off / 1-On)
1 = UART TXSTA Value
768 = UART SPBRG Value
RS232_1116170 = Unique ID
Void = Bitbanged Receive Port Letter Uppercase
Void = Bitbanged Receive Port Letter Lowercase
Void = Bitbanged Receive Pin
Void = Bitbanged Transmit Pin
104 = Bitbanged BAUD Rate Delay
0 = Timout	Selection	(0-Legacy / 1-MS Timeout)
0 = Data Size			(0-8 bits / 1-9 bits / 2-7 bits & Only available on BitBanged components)
0 = Parity Enable		(0-No Parity / 1-Odd Parity / 2-Even Parity)
1 = Legacy Return		(0-Legacy mode return 255 / 1-New mode return MSB err flags)
Void = Bitbanged Transmit Port Letter Uppercase
Void = Bitbanged Transmit Port Letter Lowercase
******************************/

#define RS232_1116170_RTS_PORT			PORTB
#define RS232_1116170_RTS_TRIS			TRISB
#define RS232_1116170_CTS_PORT			PORTB
#define RS232_1116170_CTS_TRIS			TRISB
#define RS232_1116170_RTS_PIN			0
#define RS232_1116170_CTS_PIN			4
#define RS232_1116170_UART				2
#define RS232_1116170_TOUT  			0
#define RS232_1116170_DATASIZE			0
#define RS232_1116170_PARITY			0
#define RS232_1116170_LEGACY_RV		1

#if (0 == 1)
  	#define RS232_1116170_HARDWARE
#endif

#if (0 == 1)
  	#define RS232_1116170_DEBUG
#endif

#if (0 == 1)
  	#define RS232_1116170_ECHO
#endif

#if (RS232_1116170_UART == 0)
	#define RS232_1116170_RX_PORT		PORTVoid
	#define RS232_1116170_RX_TRIS		TRISVoid
	#define RS232_1116170_SW_RX		Void
	#define RS232_1116170_SW_TX		Void
	#define RS232_1116170_SW_BAUD		( 104 - 5)
	#define RS232_1116170_TX_PORT		PORTVoid
	#define RS232_1116170_TX_TRIS		TRISVoid
#else
	#define RS232_1116170_TXSTA_VAL  	1
	#define RS232_1116170_SPBRG_VAL  	( 768 / MX_CLKS_PER_INST)
	#define RS232_1116170_SW_BAUD		0
#endif

#define RS232_1116170_STATUS_LOOP		0
#define RS232_1116170_STATUS_TIMEOUT	1
#define RS232_1116170_STATUS_RXBYTE	2




//RS232(0): //Macro function declarations

static void FCD_RS2320_SendRS232Char(short nChar);
static void FCD_RS2320_SendRS232String(char* String, char MSZ_String);
static short FCD_RS2320_ReceiveRS232Char(short nTimeout);
static void FCD_RS2320_ReceiveRS232String(char* FCR_RETVAL, char FCR_RETVAL_SIZE, char nTimeout, char NumBytes);
//Defines:

/**** Macro Substitutions ****
1 = Which ADC Channel
40 = Acquisition time
15 = Conversion Speed
0 = VRef+ Option
500 = VRef Voltage x 0.01V
******************************/




//ADC(1): //Macro function declarations

static void FCD_ADC1_SampleADC();
static char FCD_ADC1_ReadAsByte();
static short FCD_ADC1_ReadAsInt();
static float FCD_ADC1_ReadAsVoltage();
static void FCD_ADC1_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);
//Defines:

/**** Macro Substitutions ****
2 = Which ADC Channel
40 = Acquisition time
15 = Conversion Speed
0 = VRef+ Option
500 = VRef Voltage x 0.01V
******************************/




//ADC(2): //Macro function declarations

static void FCD_ADC2_SampleADC();
static char FCD_ADC2_ReadAsByte();
static short FCD_ADC2_ReadAsInt();
static float FCD_ADC2_ReadAsVoltage();
static void FCD_ADC2_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);
//Defines:

/**** Macro Substitutions ****
3 = Which ADC Channel
40 = Acquisition time
15 = Conversion Speed
0 = VRef+ Option
500 = VRef Voltage x 0.01V
******************************/




//ADC(3): //Macro function declarations

static void FCD_ADC3_SampleADC();
static char FCD_ADC3_ReadAsByte();
static short FCD_ADC3_ReadAsInt();
static float FCD_ADC3_ReadAsVoltage();
static void FCD_ADC3_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);
//Defines:

/**** Macro Substitutions ****
4 = Which ADC Channel
40 = Acquisition time
15 = Conversion Speed
0 = VRef+ Option
500 = VRef Voltage x 0.01V
******************************/




//ADC(4): //Macro function declarations

static void FCD_ADC4_SampleADC();
static char FCD_ADC4_ReadAsByte();
static short FCD_ADC4_ReadAsInt();
static float FCD_ADC4_ReadAsVoltage();
static void FCD_ADC4_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);
//Defines:

/**** Macro Substitutions ****
5 = Which ADC Channel
40 = Acquisition time
15 = Conversion Speed
0 = VRef+ Option
500 = VRef Voltage x 0.01V
******************************/




//ADC(5): //Macro function declarations

static void FCD_ADC5_SampleADC();
static char FCD_ADC5_ReadAsByte();
static short FCD_ADC5_ReadAsInt();
static float FCD_ADC5_ReadAsVoltage();
static void FCD_ADC5_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE);



//LCDDisplay(0): //Macro implementations


static void FCD_LCDDisplay0_RawSend(char in, char mask)
{
		unsigned char pt;

		clear_bit(LCD_2164998_PORT0, LCD_2164998_BIT0);
		clear_bit(LCD_2164998_PORT1, LCD_2164998_BIT1);
		clear_bit(LCD_2164998_PORT2, LCD_2164998_BIT2);
		clear_bit(LCD_2164998_PORT3, LCD_2164998_BIT3);
		clear_bit(LCD_2164998_PORT4, LCD_2164998_RS);
		clear_bit(LCD_2164998_PORT5, LCD_2164998_E);
		pt = ((in >> 4) & 0x0f);
		if (pt & 0x01)
		    set_bit(LCD_2164998_PORT0, LCD_2164998_BIT0);
		if (pt & 0x02)
		    set_bit(LCD_2164998_PORT1, LCD_2164998_BIT1);
		if (pt & 0x04)
		    set_bit(LCD_2164998_PORT2, LCD_2164998_BIT2);
		if (pt & 0x08)
		    set_bit(LCD_2164998_PORT3, LCD_2164998_BIT3);
		if (mask)
		    set_bit(LCD_2164998_PORT4, LCD_2164998_RS);
		LCD_2164998_DELAY;
		set_bit (LCD_2164998_PORT5, LCD_2164998_E);
		LCD_2164998_DELAY;
		clear_bit (LCD_2164998_PORT5, LCD_2164998_E);
		pt = (in & 0x0f);
		LCD_2164998_DELAY;
		clear_bit(LCD_2164998_PORT0, LCD_2164998_BIT0);
		clear_bit(LCD_2164998_PORT1, LCD_2164998_BIT1);
		clear_bit(LCD_2164998_PORT2, LCD_2164998_BIT2);
		clear_bit(LCD_2164998_PORT3, LCD_2164998_BIT3);
		clear_bit(LCD_2164998_PORT4, LCD_2164998_RS);
		clear_bit(LCD_2164998_PORT5, LCD_2164998_E);
		if (pt & 0x01)
		    set_bit(LCD_2164998_PORT0, LCD_2164998_BIT0);
		if (pt & 0x02)
		    set_bit(LCD_2164998_PORT1, LCD_2164998_BIT1);
		if (pt & 0x04)
		    set_bit(LCD_2164998_PORT2, LCD_2164998_BIT2);
		if (pt & 0x08)
		    set_bit(LCD_2164998_PORT3, LCD_2164998_BIT3);
		if (mask)
		    set_bit(LCD_2164998_PORT4, LCD_2164998_RS);
		LCD_2164998_DELAY;
		set_bit (LCD_2164998_PORT5, LCD_2164998_E);
		LCD_2164998_DELAY;
		clear_bit (LCD_2164998_PORT5, LCD_2164998_E);
		LCD_2164998_DELAY;
}

static void FCD_LCDDisplay0_Start()
{
	
		clear_bit(LCD_2164998_TRIS0, LCD_2164998_BIT0);
		clear_bit(LCD_2164998_TRIS1, LCD_2164998_BIT1);
		clear_bit(LCD_2164998_TRIS2, LCD_2164998_BIT2);
		clear_bit(LCD_2164998_TRIS3, LCD_2164998_BIT3);
		clear_bit(LCD_2164998_TRIS4, LCD_2164998_RS);
		clear_bit(LCD_2164998_TRIS5, LCD_2164998_E);

		//Wdt_Delay_Ms(12);

		delay_ms(12);

		FCD_LCDDisplay0_RawSend(0x33, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x33, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x32, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x2c, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x06, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x0c, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

		//clear the display
		FCD_LCDDisplay0_RawSend(0x01, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x02, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

}

static void FCD_LCDDisplay0_Clear()
{
	
		FCD_LCDDisplay0_RawSend(0x01, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
		FCD_LCDDisplay0_RawSend(0x02, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

}

static void FCD_LCDDisplay0_PrintASCII(char Character)
{
	
		FCD_LCDDisplay0_RawSend(Character, 0x10);

}

static void FCD_LCDDisplay0_Command(char in)
{
	
		FCD_LCDDisplay0_RawSend(in, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

}

static void FCD_LCDDisplay0_Cursor(char x, char y)
{
	
	  #if (LCD_2164998_ROWCNT == 1)
	    y=0x80;
	  #endif

	  #if (LCD_2164998_ROWCNT == 2)
		if (y==0)
			y=0x80;
		else
			y=0xc0;
	  #endif

	  #if (LCD_2164998_ROWCNT == 4)
		if (y==0)
			y=0x80;
		else if (y==1)
			y=0xc0;

		#if (LCD_2164998_COLCNT == 16)
			else if (y==2)
				y=0x90;
			else
				y=0xd0;
		#endif

		#if (LCD_2164998_COLCNT == 20)
			else if (y==2)
				y=0x94;
			else
				y=0xd4;
		#endif
	  #endif

		FCD_LCDDisplay0_RawSend(y+x, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

}

static void FCD_LCDDisplay0_PrintNumber(short Number)
{
	
		short tmp_int;
		char tmp_byte;
		if (Number < 0)
		{
			FCD_LCDDisplay0_RawSend('-', 0x10);
			Number = 0 - Number;
		}

		tmp_int = Number;
		if (Number >= 10000)
		{
			tmp_byte = tmp_int / 10000;
			FCD_LCDDisplay0_RawSend('0' + tmp_byte, 0x10);

			while (tmp_byte > 0)
			{
				tmp_int = tmp_int - 10000;
				tmp_byte--;
			}
		}
		if (Number >= 1000)
		{
			tmp_byte = tmp_int / 1000;
			FCD_LCDDisplay0_RawSend('0' + tmp_byte, 0x10);

			while (tmp_byte > 0)
			{
				tmp_int = tmp_int - 1000;
				tmp_byte--;
			}
		}
		if (Number >= 100)
		{
			tmp_byte = tmp_int / 100;
			FCD_LCDDisplay0_RawSend('0' + tmp_byte, 0x10);

			while (tmp_byte > 0)
			{
				tmp_int = tmp_int - 100;
				tmp_byte--;
			}
		}
		if (Number >= 10)
		{
			tmp_byte = tmp_int / 10;
			FCD_LCDDisplay0_RawSend('0' + tmp_byte, 0x10);

			while (tmp_byte > 0)
			{
				tmp_int = tmp_int - 10;
				tmp_byte--;
			}
		}
		FCD_LCDDisplay0_RawSend('0' + tmp_int, 0x10);

}

static void FCD_LCDDisplay0_PrintString(char* String, char MSZ_String)
{
	
		char idx = 0;

		for (idx=0; idx<MSZ_String; idx++)
		{
			if (*String == 0)
			{
				break;
			}
			FCD_LCDDisplay0_RawSend(*String, 0x10);
			String++;
		}

}

static void FCD_LCDDisplay0_ScrollDisplay(char Direction, char Num_Positions)
{
	
		char cmd = 0;
		char count;

		//Choose the direction
		switch (Direction)
		{
			case 0:
			case 'l':
			case 'L':

				cmd = 0x18;
				break;

			case 1:
			case 'r':
			case 'R':

				cmd = 0x1C;
				break;

			default:
				break;
		}

		//If direction accepted then scroll the specified amount
		if (cmd)
		{
			for (count = 0; count < Num_Positions; count++)
				FCD_LCDDisplay0_Command(cmd);
		}

}

static void FCD_LCDDisplay0_ClearLine(char Line)
{
	
		char count;
		char rowcount;

		//Define number of columns per line
		#if (LCD_2164998_ROWCNT == 1)
			rowcount=80;
		#endif

		#if (LCD_2164998_ROWCNT == 2)
			rowcount=40;
		#endif

		#if (LCD_2164998_ROWCNT == 4)
			#if (LCD_2164998_COLCNT == 16)
				rowcount=16;
			#endif
			#if (LCD_2164998_COLCNT == 20)
				rowcount=20;
			#endif
		#endif

		//Start at beginning of the line
		FCD_LCDDisplay0_Cursor (0, Line);

		//Send out spaces to clear line
		for (count = 0; count < rowcount; count++)
			FCD_LCDDisplay0_RawSend(' ', 0x10);

		//Move back to the beginning of the line.
		FCD_LCDDisplay0_Cursor (0, Line);

}

static void FCD_LCDDisplay0_RAM_Write(char nIdx, char d0, char d1, char d2, char d3, char d4, char d5, char d6, char d7)
{
	   //set CGRAM address
	   FCD_LCDDisplay0_RawSend(64 + (nIdx << 3), 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);

	   //write CGRAM data
	   FCD_LCDDisplay0_RawSend(d0, 0x10);
	   FCD_LCDDisplay0_RawSend(d1, 0x10);
	   FCD_LCDDisplay0_RawSend(d2, 0x10);
	   FCD_LCDDisplay0_RawSend(d3, 0x10);
	   FCD_LCDDisplay0_RawSend(d4, 0x10);
	   FCD_LCDDisplay0_RawSend(d5, 0x10);
	   FCD_LCDDisplay0_RawSend(d6, 0x10);
	   FCD_LCDDisplay0_RawSend(d7, 0x10);

	   //Clear the display
	   FCD_LCDDisplay0_RawSend(0x01, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
	   FCD_LCDDisplay0_RawSend(0x02, 0);
		//Wdt_Delay_Ms(2);
		delay_ms(2);
}



//EEPROM(0): //Macro implementations


static short FCD_EEPROM0_EEPROMRead(short addr)
{
	
		#ifdef MX_EE

			unsigned int offset;
			unsigned int data;

			if (addr < (MX_EE_SIZE / 2))
			{
				addr <<= 1;									// word align address
				TBLPAG = __builtin_tblpage(&eeprom);      	// eeprom page
				offset = __builtin_tbloffset(&eeprom) + addr;
				data = __builtin_tblrdl(offset);
				return(data);
			}
			return 0;

		#else
			#error EEPROM error - Device does not have internal EEPROM memory.
		#endif

}

static void FCD_EEPROM0_WriteEEPROM(short addr, short data)
{
	
		#ifdef MX_EE

	        unsigned int offset;

		if (addr < (MX_EE_SIZE / 2))
		{
			//Calculate address
			addr <<= 1;							// word align address

			TBLPAG = __builtin_tblpage(&eeprom);
			offset = __builtin_tbloffset(&eeprom) + addr;
			NVMADR = offset;


			//Erase location
			NVMCON = 0x4044;            // set up to write 1 word

			asm volatile ("disi #6");    // disable irqs for 6 instructions

			__builtin_write_NVM();        // unlock and write

			while(NVMCONbits.WR);        // wait while busy


			//Write data
			NVMCON = 0x4004;            // set up to write 1 word

			__builtin_tblwtl(offset,data);    // prepare data in write latch

			 asm volatile ("disi #6");    // disable irqs for 6 instructions
			 __builtin_write_NVM();        // unlock and write

			while(NVMCONbits.WR);        // wait while busy
		}

		#else
			#error EEPROM error - Device does not have internal EEPROM memory.
		#endif

}



//RS232(0): //Macro implementations


static void FCD_RS2320_SendRS232Char(short nChar)
{
	
	#if (RS232_1116170_UART == 0)

		char dMask;
		char idx;
		char count = 8;

		#ifdef RS232_1116170_HARDWARE
			//wait until CTS is low
			while (( RS232_1116170_CTS_PORT & (1 << RS232_1116170_CTS_PIN) ) != 0);
		#endif

		#if(RS232_1116170_DATASIZE == 1)
			count = 9;
		#endif
		#if(RS232_1116170_DATASIZE == 2)
			count = 7;
		#endif

		clear_bit( RS232_1116170_TX_PORT, RS232_1116170_SW_TX);			// Send Start bit
		delay_us( RS232_1116170_SW_BAUD );

		for (idx = 0; idx < count; idx++)
		{
			dMask = nChar & 0x01;					// Mask off data bit

			if (dMask)
				set_bit( RS232_1116170_TX_PORT, RS232_1116170_SW_TX);
			else
				clear_bit( RS232_1116170_TX_PORT, RS232_1116170_SW_TX);

			delay_us( RS232_1116170_SW_BAUD );
			nChar = nChar >> 1;						// Move to next data bit
		}

		set_bit( RS232_1116170_TX_PORT, RS232_1116170_SW_TX);				// Send Stop bit
		delay_us( RS232_1116170_SW_BAUD );

	#endif

	#if (RS232_1116170_UART == 1)

		U1STAbits.UTXEN = 1;
		while (U1STAbits.UTXBF != 0);

		#ifdef RS232_1116170_HARDWARE
			//wait until CTS is low
			while (( RS232_1116170_CTS_PORT & (1 << RS232_1116170_CTS_PIN) ) != 0);
		#endif

		#if(RS232_1116170_DATASIZE == 1)
			if (test_bit(nChar, 8))
				nChar = nChar & 0x01FF;
			else
				nChar = nChar & 0xFF;
		#endif

		U1TXREG = nChar;

	#endif

	#if (RS232_1116170_UART == 2)

		U2STAbits.UTXEN = 1;
		while (U2STAbits.UTXBF != 0);

		#ifdef RS232_1116170_HARDWARE
			//wait until CTS is low
			while (( RS232_1116170_CTS_PORT & (1 << RS232_1116170_CTS_PIN) ) != 0);
		#endif

		#if(RS232_1116170_DATASIZE == 1)
			if (test_bit(nChar, 8))
				nChar = nChar & 0x01FF;
			else
				nChar = nChar & 0xFF;
		#endif

		U2TXREG = nChar;

	#endif

	#if (RS232_1116170_UART == 3)

		U3STAbits.UTXEN = 1;
		while (U3STAbits.UTXBF != 0);

		#ifdef RS232_1116170_HARDWARE
			//wait until CTS is low
			while (( RS232_1116170_CTS_PORT & (1 << RS232_1116170_CTS_PIN) ) != 0);
		#endif

		#if(RS232_1116170_DATASIZE == 1)
			if (test_bit(nChar, 8))
				nChar = nChar & 0x01FF;
			else
				nChar = nChar & 0xFF;
		#endif

		U3TXREG = nChar;

	#endif

	#if (RS232_1116170_UART == 4)

		U4STAbits.UTXEN = 1;
		while (U4STAbits.UTXBF != 0);

		#ifdef RS232_1116170_HARDWARE
			//wait until CTS is low
			while (( RS232_1116170_CTS_PORT & (1 << RS232_1116170_CTS_PIN) ) != 0);
		#endif

		#if(RS232_1116170_DATASIZE == 1)
			if (test_bit(nChar, 8))
				nChar = nChar & 0x01FF;
			else
				nChar = nChar & 0xFF;
		#endif

		U4TXREG = nChar;

	#endif

}

static void FCD_RS2320_SendRS232String(char* String, char MSZ_String)
{
		char idx;
		for(idx = 0; idx < MSZ_String; idx++)
		{
			if (*String == 0)
				break;
			else FCD_RS2320_SendRS232Char(*String);
			String++;
		}
}

static short FCD_RS2320_ReceiveRS232Char(short nTimeout)
{
	
		char delay1 = 0;
		char regcheck = 0;
		char dummy = 0;
		short retVal = 512;
		char bWaitForever = 0;
		char rxStatus = RS232_1116170_STATUS_LOOP;
		char idx;
		char count = 8;

		#if ( RS232_1116170_LEGACY_RV == 0)
			retVal = 255;
		#endif

		#ifdef RS232_1116170_HARDWARE
			clear_bit( RS232_1116170_RTS_PORT, RS232_1116170_RTS_PIN);		//ready to accept data
		#endif

		if (nTimeout == 255)
			bWaitForever = 1;

		while (rxStatus == RS232_1116170_STATUS_LOOP)
		{
			if (bWaitForever == 0)
			{
				//don't wait forever, so do timeout thing...
				if (nTimeout == 0)
				{
					rxStatus = RS232_1116170_STATUS_TIMEOUT;
				}
				else
				{
					if ( RS232_1116170_TOUT)
					{
						delay_us(10);
						delay1 = delay1 + 1;
						if(delay1 == 100)
						{
							nTimeout = nTimeout - 1;
							delay1 = 0;
						}
					}
					else
					{
						//decrement timeout
						delay1 = delay1 - 1;
						if (delay1 == 0)
						{
							nTimeout = nTimeout - 1;
						}
					}
				}
			}

			#if ( RS232_1116170_UART == 0)
				regcheck = test_bit(RS232_1116170_RX_PORT, RS232_1116170_SW_RX);	//Test for start bit
				if (regcheck == 0)
					rxStatus = RS232_1116170_STATUS_RXBYTE;
			#endif

			#if ( RS232_1116170_UART == 1)
				regcheck = U1STAbits.URXDA;
				if (regcheck != 0)
					rxStatus = RS232_1116170_STATUS_RXBYTE;
			#endif

			#if ( RS232_1116170_UART == 2)
				regcheck = U2STAbits.URXDA;
				if (regcheck != 0)
					rxStatus = RS232_1116170_STATUS_RXBYTE;
			#endif

			#if ( RS232_1116170_UART == 3)
				regcheck = U3STAbits.URXDA;
				if (regcheck != 0)
					rxStatus = RS232_1116170_STATUS_RXBYTE;
			#endif

			#if ( RS232_1116170_UART == 4)
				regcheck = U4STAbits.URXDA;
				if (regcheck != 0)
					rxStatus = RS232_1116170_STATUS_RXBYTE;
			#endif
		}

		if (rxStatus == RS232_1116170_STATUS_RXBYTE)
		{
			#if ( RS232_1116170_UART > 0)

				#if ( RS232_1116170_UART == 1)
					regcheck = U1STAbits.FERR;
				#endif

				#if ( RS232_1116170_UART == 2)
					regcheck = U2STAbits.FERR;
				#endif

				#if ( RS232_1116170_UART == 3)
					regcheck = U3STAbits.FERR;
				#endif

				#if ( RS232_1116170_UART == 4)
					regcheck = U4STAbits.FERR;
				#endif

				if (regcheck != 0)
				{
					#if ( RS232_1116170_UART == 1)
						dummy = U1RXREG;      //need to read the rcreg to clear FERR
					#endif

					#if ( RS232_1116170_UART == 2)
						dummy = U2RXREG;      //need to read the rcreg to clear FERR
					#endif

					#if ( RS232_1116170_UART == 3)
						dummy = U3RXREG;      //need to read the rcreg to clear FERR
					#endif

					#if ( RS232_1116170_UART == 4)
						dummy = U4RXREG;      //need to read the rcreg to clear FERR
					#endif

					#ifdef RS232_1116170_DEBUG
						FCD_RS2320_SendRS232Char('<');
						FCD_RS2320_SendRS232Char('F');
						FCD_RS2320_SendRS232Char('E');
						FCD_RS2320_SendRS232Char('R');
						FCD_RS2320_SendRS232Char('R');
						FCD_RS2320_SendRS232Char('>');
					#endif

					#if ( RS232_1116170_LEGACY_RV == 1)
						retVal = 0x400;					//Framing Error Flag
					#endif
				}
				else
				{
					#if ( RS232_1116170_UART == 1)
						regcheck = U1STAbits.OERR;
					#endif

					#if ( RS232_1116170_UART == 2)
						regcheck = U2STAbits.OERR;
					#endif

					#if ( RS232_1116170_UART == 3)
						regcheck = U3STAbits.OERR;
					#endif

					#if ( RS232_1116170_UART == 4)
						regcheck = U4STAbits.OERR;
					#endif

					if (regcheck != 0)
					{
						//need to clear the OERR flag to clear error
						#if ( RS232_1116170_UART == 1)
							U1STAbits.OERR = 0;
						#endif

						#if ( RS232_1116170_UART == 2)
							U2STAbits.OERR = 0;
						#endif

						#if ( RS232_1116170_UART == 3)
							U3STAbits.OERR = 0;
						#endif

						#if ( RS232_1116170_UART == 4)
							U4STAbits.OERR = 0;
						#endif

						#ifdef RS232_1116170_DEBUG
							FCD_RS2320_SendRS232Char('<');
							FCD_RS2320_SendRS232Char('O');
							FCD_RS2320_SendRS232Char('E');
							FCD_RS2320_SendRS232Char('R');
							FCD_RS2320_SendRS232Char('R');
							FCD_RS2320_SendRS232Char('>');
						#endif

						#if ( RS232_1116170_LEGACY_RV == 1)
							retVal = 0x800;					//Overrun Error Flag
						#endif

					}
					else
					{
						//no error, so rx byte is valid
						#if ( RS232_1116170_UART == 1)
							#if( RS232_1116170_DATASIZE == 1)
								retVal = U1RXREG & 0x1FF;
							#else
								retVal = U1RXREG & 0xFF;
							#endif
						#endif

						#if ( RS232_1116170_UART == 2)
							#if( RS232_1116170_DATASIZE == 1)
								retVal = U2RXREG & 0x1FF;
							#else
								retVal = U2RXREG & 0xFF;
							#endif
						#endif

						#if ( RS232_1116170_UART == 3)
							#if( RS232_1116170_DATASIZE == 1)
								retVal = U3RXREG & 0x1FF;
							#else
								retVal = U3RXREG & 0xFF;
							#endif
						#endif

						#if ( RS232_1116170_UART == 4)
							#if( RS232_1116170_DATASIZE == 1)
								retVal = U4RXREG & 0x1FF;
							#else
								retVal = U4RXREG & 0xFF;
							#endif
						#endif

						#ifdef RS232_1116170_ECHO
							FCD_RS2320_SendRS232Char(retVal);
						#endif
					}
				}
			#else
				#if( RS232_1116170_DATASIZE == 1)
					count = 9;
				#endif

				delay_us( RS232_1116170_SW_BAUD );
				for (idx = 0; idx < count; idx++)
				{
					retVal = retVal >> 1;

					if(count == 9)
					{
						if (test_bit( RS232_1116170_RX_PORT, RS232_1116170_SW_RX))
							retVal = retVal | 0x100;
					}
					else
					{
						if (test_bit( RS232_1116170_RX_PORT, RS232_1116170_SW_RX))
							retVal = retVal | 0x80;
					}
					delay_us( RS232_1116170_SW_BAUD );
				}

				#ifdef RS232_1116170_ECHO
					FCD_RS2320_SendRS232Char(retVal);
				#endif

			#endif
		}
		#ifdef RS232_1116170_HARDWARE
			//not ready to accept data
			set_bit( RS232_1116170_RTS_PORT, RS232_1116170_RTS_PIN);
		#endif

		return (retVal);
}

static void FCD_RS2320_ReceiveRS232String(char* FCR_RETVAL, char FCR_RETVAL_SIZE, char nTimeout, char NumBytes)
{
		int idx;
		short in;

		#if ( RS232_1116170_LEGACY_RV == 0 )
			#define RS232_TO 	255
		#else
			#define RS232_TO 	256
		#endif

		if (NumBytes > FCR_RETVAL_SIZE)
			NumBytes = FCR_RETVAL_SIZE;

		for (idx = 0; idx < NumBytes; idx++)
		{
			in = FCD_RS2320_ReceiveRS232Char(nTimeout);
			if(in < RS232_TO)
				FCR_RETVAL[idx] = in & 0xFF;
			else
				break;
		}

		if (idx < FCR_RETVAL_SIZE)
			FCR_RETVAL[idx] = 0;

		#undef RS232_TO
}



//ADC(1): //Macro implementations


static void FCD_ADC1_SampleADC()
{
	
	/*******Supported Devices******************************************************************
	dsPIC30 Family
	******************************************************************************************/

		#define MX_ADC_CHANNEL		1
		#define MX_ADC_SAMP_TIME 	40
		#define MX_ADC_CONV_SP		15
		#define MX_ADC_VREF_OPT		0

		//set up ADC conversion
		volatile char cnt;
		unsigned int old_tris;

		//Store old tris register and set the i/o pin as an input
		old_tris = TRISB;
		set_bit(TRISB, MX_ADC_CHANNEL);

		//Setup ADC Channel
		ADCON1 = 0x0000;
		ADCON2 = 0x0000;
		ADCON3 = 0x0000;
		ADCHS = 0x0000;

		clear_bit(ADPCFG, MX_ADC_CHANNEL);
		ADCHS = (MX_ADC_CHANNEL & 0x000F);

		//Setup Vref+ functionality
		#if (MX_ADC_VREF_OPT == 0)
			ADCON2 = ADCON2 & 0x1FFF;
		#else
			ADCON2 = ADCON2 | 0x2000;
			#if (MX_ADC_CHANNEL == 0)
				#error Target device is currently using AN0 for VREF+
			#endif
		#endif

		//Assign conversion speed
		ADCON3 = (MX_ADC_CONV_SP & 0x3F);
		ADCON3bits.ADRC = 0;
		ADCON3 |= 0x0100;

		//Turn on ADC
		ADCON1bits.ADON = 1;
		ADCON1bits.SAMP = 1;

		//wait the acquisition time
		cnt = 0;
		while (cnt < MX_ADC_SAMP_TIME) cnt++;

		//begin conversion and wait until it has finished
		ADCON1bits.SAMP = 0;
		while (!ADCON1bits.DONE);

		//restore old tris value, and reset adc registers
		TRISB = old_tris;
		ADPCFG = 0xFFFF;

		#undef MX_ADC_CHANNEL
		#undef MX_ADC_TRIS_REG
		#undef MX_ADC_TRIS_MSK
		#undef MX_ADC_SAMP_TIME
		#undef MX_ADC_CONV_SP
		#undef MX_ADC_VREF_OPT

}

static char FCD_ADC1_ReadAsByte()
{
	
		FCD_ADC1_SampleADC();
		char cRetVal = (ADCBUF0 >> 4);
		ADCON1bits.ADON = 0;
		return (cRetVal);

}

static short FCD_ADC1_ReadAsInt()
{
	
		FCD_ADC1_SampleADC();
		short nRetVal = ADCBUF0;
		ADCON1bits.ADON = 0;
		return (nRetVal);

}

static float FCD_ADC1_ReadAsVoltage()
{
	

		int iSample;
		float fSample, fVoltage, fVperDiv;

		#define MX_ADC_VREF_V		500

		FCD_ADC1_SampleADC();
		iSample = ADCBUF0;												//Read as 10-bit Integer
		ADCON1bits.ADON = 0;

		fVoltage = MX_ADC_VREF_V;										//Convert reference voltage count to floating point (0 - 330 x 10mV)
		fVoltage = fVoltage * 0.01;										//Convert reference voltage count to actual voltage (0 - 3.3)
		fVperDiv = fVoltage * 0.000976;									//Convert actual voltage to voltage per division (VRef / 1024)
		fSample = iSample;												//Convert to floating point variable
		fVoltage = fSample * fVperDiv;									//Calculate floating point voltage

		#undef MX_ADC_VREF_V
		return (fVoltage);

}

static void FCD_ADC1_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE)
{
	
		float fVoltage;

		fVoltage = FCD_ADC1_ReadAsVoltage();
		FCI_FLOAT_TO_STRING(fVoltage, 2, FCR_RETVAL, FCR_RETVAL_SIZE);	//Convert to String

}



//ADC(2): //Macro implementations


static void FCD_ADC2_SampleADC()
{
	
	/*******Supported Devices******************************************************************
	dsPIC30 Family
	******************************************************************************************/

		#define MX_ADC_CHANNEL		2
		#define MX_ADC_SAMP_TIME 	40
		#define MX_ADC_CONV_SP		15
		#define MX_ADC_VREF_OPT		0

		//set up ADC conversion
		volatile char cnt;
		unsigned int old_tris;

		//Store old tris register and set the i/o pin as an input
		old_tris = TRISB;
		set_bit(TRISB, MX_ADC_CHANNEL);

		//Setup ADC Channel
		ADCON1 = 0x0000;
		ADCON2 = 0x0000;
		ADCON3 = 0x0000;
		ADCHS = 0x0000;

		clear_bit(ADPCFG, MX_ADC_CHANNEL);
		ADCHS = (MX_ADC_CHANNEL & 0x000F);

		//Setup Vref+ functionality
		#if (MX_ADC_VREF_OPT == 0)
			ADCON2 = ADCON2 & 0x1FFF;
		#else
			ADCON2 = ADCON2 | 0x2000;
			#if (MX_ADC_CHANNEL == 0)
				#error Target device is currently using AN0 for VREF+
			#endif
		#endif

		//Assign conversion speed
		ADCON3 = (MX_ADC_CONV_SP & 0x3F);
		ADCON3bits.ADRC = 0;
		ADCON3 |= 0x0100;

		//Turn on ADC
		ADCON1bits.ADON = 1;
		ADCON1bits.SAMP = 1;

		//wait the acquisition time
		cnt = 0;
		while (cnt < MX_ADC_SAMP_TIME) cnt++;

		//begin conversion and wait until it has finished
		ADCON1bits.SAMP = 0;
		while (!ADCON1bits.DONE);

		//restore old tris value, and reset adc registers
		TRISB = old_tris;
		ADPCFG = 0xFFFF;

		#undef MX_ADC_CHANNEL
		#undef MX_ADC_TRIS_REG
		#undef MX_ADC_TRIS_MSK
		#undef MX_ADC_SAMP_TIME
		#undef MX_ADC_CONV_SP
		#undef MX_ADC_VREF_OPT

}

static char FCD_ADC2_ReadAsByte()
{
	
		FCD_ADC2_SampleADC();
		char cRetVal = (ADCBUF0 >> 4);
		ADCON1bits.ADON = 0;
		return (cRetVal);

}

static short FCD_ADC2_ReadAsInt()
{
	
		FCD_ADC2_SampleADC();
		short nRetVal = ADCBUF0;
		ADCON1bits.ADON = 0;
		return (nRetVal);

}

static float FCD_ADC2_ReadAsVoltage()
{
	

		int iSample;
		float fSample, fVoltage, fVperDiv;

		#define MX_ADC_VREF_V		500

		FCD_ADC2_SampleADC();
		iSample = ADCBUF0;												//Read as 10-bit Integer
		ADCON1bits.ADON = 0;

		fVoltage = MX_ADC_VREF_V;										//Convert reference voltage count to floating point (0 - 330 x 10mV)
		fVoltage = fVoltage * 0.01;										//Convert reference voltage count to actual voltage (0 - 3.3)
		fVperDiv = fVoltage * 0.000976;									//Convert actual voltage to voltage per division (VRef / 1024)
		fSample = iSample;												//Convert to floating point variable
		fVoltage = fSample * fVperDiv;									//Calculate floating point voltage

		#undef MX_ADC_VREF_V
		return (fVoltage);

}

static void FCD_ADC2_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE)
{
	
		float fVoltage;

		fVoltage = FCD_ADC2_ReadAsVoltage();
		FCI_FLOAT_TO_STRING(fVoltage, 2, FCR_RETVAL, FCR_RETVAL_SIZE);	//Convert to String

}



//ADC(3): //Macro implementations


static void FCD_ADC3_SampleADC()
{
	
	/*******Supported Devices******************************************************************
	dsPIC30 Family
	******************************************************************************************/

		#define MX_ADC_CHANNEL		3
		#define MX_ADC_SAMP_TIME 	40
		#define MX_ADC_CONV_SP		15
		#define MX_ADC_VREF_OPT		0

		//set up ADC conversion
		volatile char cnt;
		unsigned int old_tris;

		//Store old tris register and set the i/o pin as an input
		old_tris = TRISB;
		set_bit(TRISB, MX_ADC_CHANNEL);

		//Setup ADC Channel
		ADCON1 = 0x0000;
		ADCON2 = 0x0000;
		ADCON3 = 0x0000;
		ADCHS = 0x0000;

		clear_bit(ADPCFG, MX_ADC_CHANNEL);
		ADCHS = (MX_ADC_CHANNEL & 0x000F);

		//Setup Vref+ functionality
		#if (MX_ADC_VREF_OPT == 0)
			ADCON2 = ADCON2 & 0x1FFF;
		#else
			ADCON2 = ADCON2 | 0x2000;
			#if (MX_ADC_CHANNEL == 0)
				#error Target device is currently using AN0 for VREF+
			#endif
		#endif

		//Assign conversion speed
		ADCON3 = (MX_ADC_CONV_SP & 0x3F);
		ADCON3bits.ADRC = 0;
		ADCON3 |= 0x0100;

		//Turn on ADC
		ADCON1bits.ADON = 1;
		ADCON1bits.SAMP = 1;

		//wait the acquisition time
		cnt = 0;
		while (cnt < MX_ADC_SAMP_TIME) cnt++;

		//begin conversion and wait until it has finished
		ADCON1bits.SAMP = 0;
		while (!ADCON1bits.DONE);

		//restore old tris value, and reset adc registers
		TRISB = old_tris;
		ADPCFG = 0xFFFF;

		#undef MX_ADC_CHANNEL
		#undef MX_ADC_TRIS_REG
		#undef MX_ADC_TRIS_MSK
		#undef MX_ADC_SAMP_TIME
		#undef MX_ADC_CONV_SP
		#undef MX_ADC_VREF_OPT

}

static char FCD_ADC3_ReadAsByte()
{
	
		FCD_ADC3_SampleADC();
		char cRetVal = (ADCBUF0 >> 4);
		ADCON1bits.ADON = 0;
		return (cRetVal);

}

static short FCD_ADC3_ReadAsInt()
{
	
		FCD_ADC3_SampleADC();
		short nRetVal = ADCBUF0;
		ADCON1bits.ADON = 0;
		return (nRetVal);

}

static float FCD_ADC3_ReadAsVoltage()
{
	

		int iSample;
		float fSample, fVoltage, fVperDiv;

		#define MX_ADC_VREF_V		500

		FCD_ADC3_SampleADC();
		iSample = ADCBUF0;												//Read as 10-bit Integer
		ADCON1bits.ADON = 0;

		fVoltage = MX_ADC_VREF_V;										//Convert reference voltage count to floating point (0 - 330 x 10mV)
		fVoltage = fVoltage * 0.01;										//Convert reference voltage count to actual voltage (0 - 3.3)
		fVperDiv = fVoltage * 0.000976;									//Convert actual voltage to voltage per division (VRef / 1024)
		fSample = iSample;												//Convert to floating point variable
		fVoltage = fSample * fVperDiv;									//Calculate floating point voltage

		#undef MX_ADC_VREF_V
		return (fVoltage);

}

static void FCD_ADC3_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE)
{
	
		float fVoltage;

		fVoltage = FCD_ADC3_ReadAsVoltage();
		FCI_FLOAT_TO_STRING(fVoltage, 2, FCR_RETVAL, FCR_RETVAL_SIZE);	//Convert to String

}



//ADC(4): //Macro implementations


static void FCD_ADC4_SampleADC()
{
	
	/*******Supported Devices******************************************************************
	dsPIC30 Family
	******************************************************************************************/

		#define MX_ADC_CHANNEL		4
		#define MX_ADC_SAMP_TIME 	40
		#define MX_ADC_CONV_SP		15
		#define MX_ADC_VREF_OPT		0

		//set up ADC conversion
		volatile char cnt;
		unsigned int old_tris;

		//Store old tris register and set the i/o pin as an input
		old_tris = TRISB;
		set_bit(TRISB, MX_ADC_CHANNEL);

		//Setup ADC Channel
		ADCON1 = 0x0000;
		ADCON2 = 0x0000;
		ADCON3 = 0x0000;
		ADCHS = 0x0000;

		clear_bit(ADPCFG, MX_ADC_CHANNEL);
		ADCHS = (MX_ADC_CHANNEL & 0x000F);

		//Setup Vref+ functionality
		#if (MX_ADC_VREF_OPT == 0)
			ADCON2 = ADCON2 & 0x1FFF;
		#else
			ADCON2 = ADCON2 | 0x2000;
			#if (MX_ADC_CHANNEL == 0)
				#error Target device is currently using AN0 for VREF+
			#endif
		#endif

		//Assign conversion speed
		ADCON3 = (MX_ADC_CONV_SP & 0x3F);
		ADCON3bits.ADRC = 0;
		ADCON3 |= 0x0100;

		//Turn on ADC
		ADCON1bits.ADON = 1;
		ADCON1bits.SAMP = 1;

		//wait the acquisition time
		cnt = 0;
		while (cnt < MX_ADC_SAMP_TIME) cnt++;

		//begin conversion and wait until it has finished
		ADCON1bits.SAMP = 0;
		while (!ADCON1bits.DONE);

		//restore old tris value, and reset adc registers
		TRISB = old_tris;
		ADPCFG = 0xFFFF;

		#undef MX_ADC_CHANNEL
		#undef MX_ADC_TRIS_REG
		#undef MX_ADC_TRIS_MSK
		#undef MX_ADC_SAMP_TIME
		#undef MX_ADC_CONV_SP
		#undef MX_ADC_VREF_OPT

}

static char FCD_ADC4_ReadAsByte()
{
	
		FCD_ADC4_SampleADC();
		char cRetVal = (ADCBUF0 >> 4);
		ADCON1bits.ADON = 0;
		return (cRetVal);

}

static short FCD_ADC4_ReadAsInt()
{
	
		FCD_ADC4_SampleADC();
		short nRetVal = ADCBUF0;
		ADCON1bits.ADON = 0;
		return (nRetVal);

}

static float FCD_ADC4_ReadAsVoltage()
{
	

		int iSample;
		float fSample, fVoltage, fVperDiv;

		#define MX_ADC_VREF_V		500

		FCD_ADC4_SampleADC();
		iSample = ADCBUF0;												//Read as 10-bit Integer
		ADCON1bits.ADON = 0;

		fVoltage = MX_ADC_VREF_V;										//Convert reference voltage count to floating point (0 - 330 x 10mV)
		fVoltage = fVoltage * 0.01;										//Convert reference voltage count to actual voltage (0 - 3.3)
		fVperDiv = fVoltage * 0.000976;									//Convert actual voltage to voltage per division (VRef / 1024)
		fSample = iSample;												//Convert to floating point variable
		fVoltage = fSample * fVperDiv;									//Calculate floating point voltage

		#undef MX_ADC_VREF_V
		return (fVoltage);

}

static void FCD_ADC4_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE)
{
	
		float fVoltage;

		fVoltage = FCD_ADC4_ReadAsVoltage();
		FCI_FLOAT_TO_STRING(fVoltage, 2, FCR_RETVAL, FCR_RETVAL_SIZE);	//Convert to String

}



//ADC(5): //Macro implementations


static void FCD_ADC5_SampleADC()
{
	
	/*******Supported Devices******************************************************************
	dsPIC30 Family
	******************************************************************************************/

		#define MX_ADC_CHANNEL		5
		#define MX_ADC_SAMP_TIME 	40
		#define MX_ADC_CONV_SP		15
		#define MX_ADC_VREF_OPT		0

		//set up ADC conversion
		volatile char cnt;
		unsigned int old_tris;

		//Store old tris register and set the i/o pin as an input
		old_tris = TRISB;
		set_bit(TRISB, MX_ADC_CHANNEL);

		//Setup ADC Channel
		ADCON1 = 0x0000;
		ADCON2 = 0x0000;
		ADCON3 = 0x0000;
		ADCHS = 0x0000;

		clear_bit(ADPCFG, MX_ADC_CHANNEL);
		ADCHS = (MX_ADC_CHANNEL & 0x000F);

		//Setup Vref+ functionality
		#if (MX_ADC_VREF_OPT == 0)
			ADCON2 = ADCON2 & 0x1FFF;
		#else
			ADCON2 = ADCON2 | 0x2000;
			#if (MX_ADC_CHANNEL == 0)
				#error Target device is currently using AN0 for VREF+
			#endif
		#endif

		//Assign conversion speed
		ADCON3 = (MX_ADC_CONV_SP & 0x3F);
		ADCON3bits.ADRC = 0;
		ADCON3 |= 0x0100;

		//Turn on ADC
		ADCON1bits.ADON = 1;
		ADCON1bits.SAMP = 1;

		//wait the acquisition time
		cnt = 0;
		while (cnt < MX_ADC_SAMP_TIME) cnt++;

		//begin conversion and wait until it has finished
		ADCON1bits.SAMP = 0;
		while (!ADCON1bits.DONE);

		//restore old tris value, and reset adc registers
		TRISB = old_tris;
		ADPCFG = 0xFFFF;

		#undef MX_ADC_CHANNEL
		#undef MX_ADC_TRIS_REG
		#undef MX_ADC_TRIS_MSK
		#undef MX_ADC_SAMP_TIME
		#undef MX_ADC_CONV_SP
		#undef MX_ADC_VREF_OPT

}

static char FCD_ADC5_ReadAsByte()
{
	
		FCD_ADC5_SampleADC();
		char cRetVal = (ADCBUF0 >> 4);
		ADCON1bits.ADON = 0;
		return (cRetVal);

}

static short FCD_ADC5_ReadAsInt()
{
	
		FCD_ADC5_SampleADC();
		short nRetVal = ADCBUF0;
		ADCON1bits.ADON = 0;
		return (nRetVal);

}

static float FCD_ADC5_ReadAsVoltage()
{
	

		int iSample;
		float fSample, fVoltage, fVperDiv;

		#define MX_ADC_VREF_V		500

		FCD_ADC5_SampleADC();
		iSample = ADCBUF0;												//Read as 10-bit Integer
		ADCON1bits.ADON = 0;

		fVoltage = MX_ADC_VREF_V;										//Convert reference voltage count to floating point (0 - 330 x 10mV)
		fVoltage = fVoltage * 0.01;										//Convert reference voltage count to actual voltage (0 - 3.3)
		fVperDiv = fVoltage * 0.000976;									//Convert actual voltage to voltage per division (VRef / 1024)
		fSample = iSample;												//Convert to floating point variable
		fVoltage = fSample * fVperDiv;									//Calculate floating point voltage

		#undef MX_ADC_VREF_V
		return (fVoltage);

}

static void FCD_ADC5_ReadAsString(char* FCR_RETVAL, char FCR_RETVAL_SIZE)
{
	
		float fVoltage;

		fVoltage = FCD_ADC5_ReadAsVoltage();
		FCI_FLOAT_TO_STRING(fVoltage, 2, FCR_RETVAL, FCR_RETVAL_SIZE);	//Convert to String

}

//Macro implementations

void FCM_out_off()
{
	
	//Output
	//Output: 2 -> PORTF_L
	TRISF = TRISF & 0xfffd;
	PORTF = (LATF & 0xfffd) | (2 & 0x0002);


}

void FCM_int1_digitime()
{
	
	//Local variable definitions
	char FCL_COUNT;

	//Calculation
	//Calculation:
	//  int1_digitime.count = 32
	FCL_COUNT = 32;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_int1_digitime_A:
;


	//Decision
	//Decision: int1_digitime.count = 0?
	if (FCL_COUNT == 0)
	{
	} else {
		//Calculation
		//Calculation:
		//  int_ist_flag[int1_digitime.count] = an
		//  int1_digitime.count = int1_digitime.count - 1
		FCV_INT_IST_FLAG[FCL_COUNT] = FCV_AN;
		FCL_COUNT = FCL_COUNT - 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_int1_digitime_A;


	}


}

void FCM_out_on()
{
	
	//Output
	//Output: 0 -> PORTF_L
	TRISF = TRISF & 0xfffd;
	PORTF = (LATF & 0xfffd) | (0 & 0x0002);


}

void FCM_i2c_Q_out(char FCL_Q_PORT1BIS8)
{
	
	//Local variable definitions
	char FCL_I2C_AD_DAT;
	char FCL_Q_NR;
	char FCL_I2C_DAT;

	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXX


	//i2c_start
	//Call Macro: i2_start
	FCM_i2_start();


	//Comment:
	//start
	//feste adresse 0x4X
	//out = 0b0100 000 0
	//in  = 0b0100 000 1


	//Comment:
	//start
	//var_adresse


	//Switch
	//Switch: i2c_Q_out.Q_port1bis8?
	switch (FCL_Q_PORT1BIS8)
	{
		case 1:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01000000
			FCL_I2C_AD_DAT = 64;
			

			//daten byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_dat = (Q[8] << 7)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[7] << 6)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[6] << 5)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[5] << 4)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[4] << 3)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[3] << 2)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[2] << 1)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat + Q[1]
			FCL_I2C_DAT = (FCV_Q[8] << 7);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[7] << 6);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[6] << 5);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[5] << 4);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[4] << 3);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[3] << 2);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[2] << 1);
			FCL_I2C_DAT = FCL_I2C_DAT + FCV_Q[1];
			

			break;
		}

		case 2:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01000010
			FCL_I2C_AD_DAT = 66;
			

			//daten byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_dat = (Q[16] << 7)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[15] << 6)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[14] << 5)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[13] << 4)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[12] << 3)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[11] << 2)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[10] << 1)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat + Q[9]
			FCL_I2C_DAT = (FCV_Q[16] << 7);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[15] << 6);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[14] << 5);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[13] << 4);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[12] << 3);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[11] << 2);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[10] << 1);
			FCL_I2C_DAT = FCL_I2C_DAT + FCV_Q[9];
			

			break;
		}

		case 3:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01000010
			FCL_I2C_AD_DAT = 66;
			

			//daten byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_dat = (Q[24] << 7)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[23] << 6)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[22] << 5)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[21] << 4)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[20] << 3)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[19] << 2)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[18] << 1)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat + Q[17]
			FCL_I2C_DAT = (FCV_Q[24] << 7);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[23] << 6);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[22] << 5);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[21] << 4);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[20] << 3);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[19] << 2);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[18] << 1);
			FCL_I2C_DAT = FCL_I2C_DAT + FCV_Q[17];
			

			break;
		}

		case 4:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01000110
			FCL_I2C_AD_DAT = 70;
			

			//daten byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_dat = (Q[32] << 7)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[31] << 6)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[30] << 5)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[29] << 4)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[28] << 3)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[27] << 2)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat +(Q[26] << 1)
			//  i2c_Q_out.i2c_dat = i2c_Q_out.i2c_dat + Q[25]
			FCL_I2C_DAT = (FCV_Q[32] << 7);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[31] << 6);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[30] << 5);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[29] << 4);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[28] << 3);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[27] << 2);
			FCL_I2C_DAT = FCL_I2C_DAT +(FCV_Q[26] << 1);
			FCL_I2C_DAT = FCL_I2C_DAT + FCV_Q[25];
			

			break;
		}

		case 5:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01001000
			FCL_I2C_AD_DAT = 72;
			

			break;
		}

		case 6:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01001010
			FCL_I2C_AD_DAT = 74;
			

			break;
		}

		case 7:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01001100
			FCL_I2C_AD_DAT = 76;
			

			break;
		}

		case 8:
		{
			//i2c id byte bilden
			//Calculation:
			//  i2c_Q_out.i2c_ad_dat = 0b01001110
			FCL_I2C_AD_DAT = 78;
			

			break;
		}

	}


	//i2c write byte
	//Call Macro: i2c_write_byte(i2c_Q_out.i2c_ad_dat)
	FCM_i2c_write_byte(FCL_I2C_AD_DAT);


	//Comment:
	//ac_bit lesen


	//i2c_ack_von_slave
	//Call Macro: i2c_ack_von_slave
	FCM_i2c_ack_von_slave();


	//Comment:
	//start
	//daten


	//i2c write byte
	//Call Macro: i2c_write_byte(i2c_Q_out.i2c_dat)
	FCM_i2c_write_byte(FCL_I2C_DAT);


	//Comment:
	//ac_bit lesen


	//i2c_ack_von_slave
	//Call Macro: i2c_ack_von_slave
	FCM_i2c_ack_von_slave();


	//Comment:
	//Kommentar


	//i2c_stopp
	//Call Macro: i2c_stopp
	FCM_i2c_stopp();


	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


}

void FCM_digitime01_start()
{
	
	//Berechnung
	//Calculation:
	//  Q[1] = an
	//  Q[2] = aus
	//  Q[3] = an
	//  Q[4] = aus
	//  Q[5] = an
	//  Q[6] = aus
	//  Q[7] = an
	//  Q[8] = aus
	FCV_Q[1] = FCV_AN;
	FCV_Q[2] = FCV_AUS;
	FCV_Q[3] = FCV_AN;
	FCV_Q[4] = FCV_AUS;
	FCV_Q[5] = FCV_AN;
	FCV_Q[6] = FCV_AUS;
	FCV_Q[7] = FCV_AN;
	FCV_Q[8] = FCV_AUS;
	

	//Calculation
	//Calculation:
	//  Q[9] = an
	//  Q[10] = aus
	//  Q[11] = an
	//  Q[12] = aus
	//  Q[13] = an
	//  Q[14] = aus
	//  Q[15] = an
	//  Q[16] = aus
	FCV_Q[9] = FCV_AN;
	FCV_Q[10] = FCV_AUS;
	FCV_Q[11] = FCV_AN;
	FCV_Q[12] = FCV_AUS;
	FCV_Q[13] = FCV_AN;
	FCV_Q[14] = FCV_AUS;
	FCV_Q[15] = FCV_AN;
	FCV_Q[16] = FCV_AUS;
	

}

void FCM_digitime01_abgelaufen()
{
	
}

void FCM_i2c_clock()
{
	
	//i2c clock = 1
	//Output: 1 -> G14
	TRISG = TRISG & 0xbfff;
	if ((1<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Warten
	//Delay: i2c_rw us
	delay_us(FCV_I2C_RW);


	//i2clock = 0
	//Output: 0 -> G14
	TRISG = TRISG & 0xbfff;
	if ((0<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Warten
	//Delay: i2c_rw us
	delay_us(FCV_I2C_RW);


}

void FCM_i2c_stopp()
{
	
	//Comment:
	//stopp condition :
	//clock > scl = 1 _/?
	//delay?
	//daten > sda = 1 _/?
	//delay?


	//i2clock = 1
	//Output: 0 -> G14
	TRISG = TRISG & 0xbfff;
	if ((0<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//daten = 0
	//Output: 0 -> G15
	TRISG = TRISG & 0x7fff;
	if ((0<<8))
		PORTG = (LATG & 0x7fff) | 0x8000;
	else
		PORTG = LATG & 0x7fff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//i2clock = 1
	//Output: 1 -> G14
	TRISG = TRISG & 0xbfff;
	if ((1<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//daten = 1
	//Output: 1 -> G15
	TRISG = TRISG & 0x7fff;
	if ((1<<8))
		PORTG = (LATG & 0x7fff) | 0x8000;
	else
		PORTG = LATG & 0x7fff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


}

void FCM_i2c_ack_von_slave()
{
	
	//Input
	//Input: G15 -> dummi
	TRISG = TRISG | 0x8000;
	FCV_DUMMI = ((PORTG & 0x8000) == 0x8000);


	//Makro-Aufruf-clock
	//Call Macro: i2c_clock
	FCM_i2c_clock();


}

void FCM_i2_start()
{
	
	//sda
	//Output: 1 -> G15
	TRISG = TRISG & 0x7fff;
	if ((1<<8))
		PORTG = (LATG & 0x7fff) | 0x8000;
	else
		PORTG = LATG & 0x7fff;


	//sdc
	//Output: 1 -> G14
	TRISG = TRISG & 0xbfff;
	if ((1<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Comment:
	//start condition :
	//daten > sda = 0 ?\_
	//delay?
	//clock > scl = 0 ?\_
	//delay?


	//daten = 0
	//Output: 0 -> G15
	TRISG = TRISG & 0x7fff;
	if ((0<<8))
		PORTG = (LATG & 0x7fff) | 0x8000;
	else
		PORTG = LATG & 0x7fff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//i2clock = 0
	//Output: 0 -> G14
	TRISG = TRISG & 0xbfff;
	if ((0<<8))
		PORTG = (LATG & 0xbfff) | 0x4000;
	else
		PORTG = LATG & 0xbfff;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


}

void FCM_i2c_Qx_out_port1bis8()
{
	
	//Local variable definitions
	char FCL_PORT_COUNT;

	//Berechnung
	//Calculation:
	//  i2c_Qx_out_port1bis8.port_count = i2c_Qxx_1bis8
	FCL_PORT_COUNT = FCV_I2C_QXX_1BIS8;
	

	//Verbindungspunkt
	//Connection Point: [A]: A
FCC_i2c_Qx_out_port1bis8_A:
;


	//Entscheidung
	//Decision: i2c_Qx_out_port1bis8.port_count <> 0?
	if (FCL_PORT_COUNT != 0)
	{
		//Makro-Aufruf
		//Call Macro: i2c_Q_out(i2c_Qx_out_port1bis8.port_count)
		FCM_i2c_Q_out(FCL_PORT_COUNT);


		//Berechnung
		//Calculation:
		//  i2c_Qx_out_port1bis8.port_count = i2c_Qx_out_port1bis8.port_count - 1
		FCL_PORT_COUNT = FCL_PORT_COUNT - 1;
		

		//Gehe zum Verbindungspunkt
		//Goto Connection Point: [A]: A
		goto FCC_i2c_Qx_out_port1bis8_A;


	}


}

void FCM_anz_curpos(char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16, char FCL_CUR_AN_AUS_NC)
{
	
	//Local variable definitions
	char FCL_DB_WERT;

	//parameter anpassen
	//Calculation:
	//  anz_curpos.zeile_1bis2 = anz_curpos.zeile_1bis2 - 1
	//  anz_curpos.spalte_1bis16 = anz_curpos.spalte_1bis16 - 1
	FCL_ZEILE_1BIS2 = FCL_ZEILE_1BIS2 - 1;
	FCL_SPALTE_1BIS16 = FCL_SPALTE_1BIS16 - 1;
	

	//anz port vorbereiten
	//Output: 0x20 -> PORTB_H
	TRISB = TRISB & 0xc0ff;
	PORTB = (LATB & 0xc0ff) | ((0x20<<8) & 0x3f00);


	//curser nc / an / aus?
	//Switch: anz_curpos.cur_an_aus_nc?
	switch (FCL_CUR_AN_AUS_NC)
	{
		case 0:
		{
			//Comment:
			//an


			//db hob
			//Output: 0x00 -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x00<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


			//db lob
			//Output: 0x0f -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x0f<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


			break;
		}

		case 1:
		{
			//Comment:
			//aus


			//db hob
			//Output: 0x00 -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x00<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


			//db lob
			//Output: 0x0c -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x0c<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


			break;
		}

	}


	//zeile nr.: ?
	//Switch: anz_curpos.zeile_1bis2?
	switch (FCL_ZEILE_1BIS2)
	{
		case 1:
		{
			//db hob
			//Output: 0x0c -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x0c<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


			break;
		}

		default:
		{
			//db hob
			//Output: 0x08 -> PORTB_H
			TRISB = TRISB & 0xf0ff;
			PORTB = (LATB & 0xf0ff) | ((0x08<<8) & 0x0f00);


			//anz wr
			//Call Macro: anz_wr
			FCM_anz_wr();


		}
	}


	//db lob
	//Output: anz_curpos.spalte_1bis16 -> PORTB_H
	TRISB = TRISB & 0xf0ff;
	PORTB = (LATB & 0xf0ff) | ((FCL_SPALTE_1BIS16<<8) & 0x0f00);


	//anz wr
	//Call Macro: anz_wr
	FCM_anz_wr();


}

void FCM_anz_start()
{
	
	//Comment:
	//anz start


	//decoder sperren
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


	//datenbus nullen
	//Output: 0 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (0<<8);


	//anzeige freischalten
	//Output: ena1_anz -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA1_ANZ & 0x003c);


	//Call Component Macro
	//Call Component Macro: LCDDisplay(0)::Start
	FCD_LCDDisplay0_Start();


	//decoder sperren
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_anz_wr()
{
	
	//Output
	//Output: ena1_anz -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA1_ANZ & 0x003c);


	//Warten
	//Delay: 50 us
	delay_us(50);


	//Output
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_digitime(char FCL_NR_1BIS32)
{
	
	//Local variable definitions
	char FCL_ADC_BYTE[6];
	short FCL_ADC_INTEGER[6];

	//digitime status
	//Switch: digtime_status_flag[digitime.nr_1bis32]?
	switch (FCV_DIGTIME_STATUS_FLAG[FCL_NR_1BIS32])
	{
		case 1:
		{
			//Switch
			//Switch: digitime_conf[digitime.nr_1bis32]?
			switch (FCV_DIGITIME_CONF[FCL_NR_1BIS32])
			{
				case 1:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_integer[1] = (adc_integer[1] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_INTEGER[1] = (FCV_ADC_INTEGER[1] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_integer[1] < 1?
					if (FCL_ADC_INTEGER[1] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_integer[1] = 1
						FCL_ADC_INTEGER[1] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_integer[1]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_INTEGER[1];
					

					break;
				}

				case 2:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_integer[2] = (adc_integer[2] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_INTEGER[2] = (FCV_ADC_INTEGER[2] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_integer[2] < 1?
					if (FCL_ADC_INTEGER[2] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_integer[2] = 1
						FCL_ADC_INTEGER[2] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_integer[2]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_INTEGER[2];
					

					break;
				}

				case 3:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_integer[3] = (adc_integer[3] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_INTEGER[3] = (FCV_ADC_INTEGER[3] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_integer[3] < 1?
					if (FCL_ADC_INTEGER[3] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_integer[3] = 1
						FCL_ADC_INTEGER[3] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_integer[3]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_INTEGER[3];
					

					break;
				}

				case 4:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_integer[4] = (adc_integer[4] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_INTEGER[4] = (FCV_ADC_INTEGER[4] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_integer[4] < 1?
					if (FCL_ADC_INTEGER[4] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_integer[4] = 1
						FCL_ADC_INTEGER[4] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_integer[4]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_INTEGER[4];
					

					break;
				}

				case 5:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_integer[5] = (adc_integer[5] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_INTEGER[5] = (FCV_ADC_INTEGER[5] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_integer[5] < 1?
					if (FCL_ADC_INTEGER[5] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_integer[5] = 1
						FCL_ADC_INTEGER[5] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_integer[5]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_INTEGER[5];
					

					break;
				}

				case 6:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_byte[1] = (adc_byte[1] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_BYTE[1] = (FCV_ADC_BYTE[1] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_byte[1] < 1?
					if (FCL_ADC_BYTE[1] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_byte[1] = 1
						FCL_ADC_BYTE[1] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_byte[1]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_BYTE[1];
					

					break;
				}

				case 7:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_byte[2] = (adc_byte[2] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_BYTE[2] = (FCV_ADC_BYTE[2] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_byte[2] < 1?
					if (FCL_ADC_BYTE[2] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_byte[2] = 1
						FCL_ADC_BYTE[2] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_byte[2]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_BYTE[2];
					

					break;
				}

				case 8:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_byte[3] = (adc_byte[3] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_BYTE[3] = (FCV_ADC_BYTE[3] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_byte[3] < 1?
					if (FCL_ADC_BYTE[3] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_byte[3] = 1
						FCL_ADC_BYTE[3] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_byte[3]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_BYTE[3];
					

					break;
				}

				case 9:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_byte[4] = (adc_byte[4] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_BYTE[4] = (FCV_ADC_BYTE[4] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_byte[4] < 1?
					if (FCL_ADC_BYTE[4] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_byte[4] = 1
						FCL_ADC_BYTE[4] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_byte[4]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_BYTE[4];
					

					break;
				}

				case 10:
				{
					//Calculation
					//Calculation:
					//  digitime.adc_byte[5] = (adc_byte[5] / digitime_div_fak[digitime.nr_1bis32])
					FCL_ADC_BYTE[5] = (FCV_ADC_BYTE[5] / FCV_DIGITIME_DIV_FAK[FCL_NR_1BIS32]);
					

					//Decision
					//Decision: digitime.adc_byte[5] < 1?
					if (FCL_ADC_BYTE[5] < 1)
					{
						//Calculation
						//Calculation:
						//  digitime.adc_byte[5] = 1
						FCL_ADC_BYTE[5] = 1;
						

					}


					//poti zeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime.adc_byte[5]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCL_ADC_BYTE[5];
					

					break;
				}

				default:
				{
					//festzeit
					//Calculation:
					//  digitime_arbtime[digitime.nr_1bis32] = digitime_settime[digitime.nr_1bis32]
					FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCV_DIGITIME_SETTIME[FCL_NR_1BIS32];
					

				}
			}


			//Calculation
			//Calculation:
			//  digtime_status_flag[digitime.nr_1bis32] = zaehlt
			FCV_DIGTIME_STATUS_FLAG[FCL_NR_1BIS32] = FCV_ZAEHLT;
			

			//digitime_xx start bearbeiten
			//Call Macro: digitime_xx_start_bearbeiten(digitime.nr_1bis32)
			FCM_digitime_xx_start_bearbeiten(FCL_NR_1BIS32);


			break;
		}

		case 2:
		{
			//auf int war prüfen
			//Decision: int_ist_flag[digitime.nr_1bis32] = an?
			if (FCV_INT_IST_FLAG[FCL_NR_1BIS32] == FCV_AN)
			{
				//Calculation
				//Calculation:
				//  int_ist_flag[digitime.nr_1bis32] = aus
				//  digitime_arbtime[digitime.nr_1bis32] = digitime_arbtime[digitime.nr_1bis32] - 1
				FCV_INT_IST_FLAG[FCL_NR_1BIS32] = FCV_AUS;
				FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] = FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] - 1;
				

			}


			//zeit ist runtergezählt ?
			//Decision: digitime_arbtime[digitime.nr_1bis32] = 0?
			if (FCV_DIGITIME_ARBTIME[FCL_NR_1BIS32] == 0)
			{
				//Calculation
				//Calculation:
				//  digtime_status_flag[digitime.nr_1bis32] = abgelaufen
				FCV_DIGTIME_STATUS_FLAG[FCL_NR_1BIS32] = FCV_ABGELAUFEN;
				

				//digitime_xx abgelaufen bearbeiten
				//Call Macro: digitime_xx_abgl_bearbeiten(digitime.nr_1bis32)
				FCM_digitime_xx_abgl_bearbeiten(FCL_NR_1BIS32);


			}


			break;
		}

	}


}

void FCM_digitime02_abgelaufen()
{
	
}

void FCM_digitime02_start()
{
	
	//Berechnung
	//Calculation:
	//  Q[1] = aus
	//  Q[2] = an
	//  Q[3] = aus
	//  Q[4] = an
	//  Q[5] = aus
	//  Q[6] = an
	//  Q[7] = aus
	//  Q[8] = an
	FCV_Q[1] = FCV_AUS;
	FCV_Q[2] = FCV_AN;
	FCV_Q[3] = FCV_AUS;
	FCV_Q[4] = FCV_AN;
	FCV_Q[5] = FCV_AUS;
	FCV_Q[6] = FCV_AN;
	FCV_Q[7] = FCV_AUS;
	FCV_Q[8] = FCV_AN;
	

	//Calculation
	//Calculation:
	//  Q[9] = aus
	//  Q[10] = an
	//  Q[11] = aus
	//  Q[12] = an
	//  Q[13] = aus
	//  Q[14] = an
	//  Q[15] = aus
	//  Q[16] = an
	FCV_Q[9] = FCV_AUS;
	FCV_Q[10] = FCV_AN;
	FCV_Q[11] = FCV_AUS;
	FCV_Q[12] = FCV_AN;
	FCV_Q[13] = FCV_AUS;
	FCV_Q[14] = FCV_AN;
	FCV_Q[15] = FCV_AUS;
	FCV_Q[16] = FCV_AN;
	

}

void FCM_digitime_macros_definieren()
{
	
	//Comment:
	//zeitglied 01


	//digitime01 start
	//Call Macro: digitime01_start
	FCM_digitime01_start();


	//digitime01 abgelaufen
	//Call Macro: digitime01_abgelaufen
	FCM_digitime01_abgelaufen();


	//Comment:
	//zeitglied 02


	//digitime02 start
	//Call Macro: digitime02_start
	FCM_digitime02_start();


	//digitime02 abgelaufen
	//Call Macro: digitime02_abgelaufen
	FCM_digitime02_abgelaufen();


	//Comment:
	//zeitglied 03


	//digitime03 start
	//Call Macro: digitime03_start
	FCM_digitime03_start();


	//digitime03 ende
	//Call Macro: digitime03_abgelaufen
	FCM_digitime03_abgelaufen();


	//Comment:
	//zeitglied 04


	//digitime04 start
	//Call Macro: digitime04_start
	FCM_digitime04_start();


	//digitime04 abgelaufen
	//Call Macro: digitime04_abgelaufen
	FCM_digitime04_abgelaufen();


	//Comment:
	//zeitglied 05


	//digitimq05 start
	//Call Macro: digitime05_start
	FCM_digitime05_start();


	//digitime05 abgelaufen
	//Call Macro: digitime05_start
	FCM_digitime05_start();


	//Comment:
	//zeitglied 06


	//digitimq06 start
	//Call Macro: digitime06_start
	FCM_digitime06_start();


	//digitime06 abgelaufen
	//Call Macro: digitime06_abgelaufen
	FCM_digitime06_abgelaufen();


	//Comment:
	//zeitglied 07


	//digitimq07 start
	//Call Macro: digitime07_start
	FCM_digitime07_start();


	//digitime07 abgelaufen
	//Call Macro: digitime07_abgelaufen
	FCM_digitime07_abgelaufen();


	//Comment:
	//zeitglied 08


	//digitimq08 start
	//Call Macro: digitime08_start
	FCM_digitime08_start();


	//digitime08 abgelaufen
	//Call Macro: digitime08_abgelaufen
	FCM_digitime08_abgelaufen();


	//Comment:
	//zeitglied 09


	//digitimq09 start
	//Call Macro: digitime09_start
	FCM_digitime09_start();


	//digitime09 abgelaufen
	//Call Macro: digitime09_abgelaufen
	FCM_digitime09_abgelaufen();


	//Comment:
	//zeitglied 10


	//digitimq10 start
	//Call Macro: digitime10_start
	FCM_digitime10_start();


	//digitime10 abgelaufen
	//Call Macro: digitime10_abgelaufen
	FCM_digitime10_abgelaufen();


	//Comment:
	//zeitglied 11


	//digitimq11 start
	//Call Macro: digitime11_start
	FCM_digitime11_start();


	//digitime11 abgelaufen
	//Call Macro: digitime11_abgelaufen
	FCM_digitime11_abgelaufen();


	//Comment:
	//zeitglied 12


	//digitimq12 start
	//Call Macro: digitime12_start
	FCM_digitime12_start();


	//digitime12 abgelaufen
	//Call Macro: digitime12_abgelaufen
	FCM_digitime12_abgelaufen();


	//Comment:
	//zeitglied 13


	//digitimq13 start
	//Call Macro: digitime13_start
	FCM_digitime13_start();


	//digitime13 abgelaufen
	//Call Macro: digitime13_abgelaufen
	FCM_digitime13_abgelaufen();


	//Comment:
	//zeitglied 14


	//digitimq14 start
	//Call Macro: digitime14_start
	FCM_digitime14_start();


	//digitime14 abgelaufen
	//Call Macro: digitime14_abgelaufen
	FCM_digitime14_abgelaufen();


	//Comment:
	//zeitglied 15


	//digitimq15 start
	//Call Macro: digitime15_start
	FCM_digitime15_start();


	//digitime15 abgelaufen
	//Call Macro: digitime15_abgelaufen
	FCM_digitime15_abgelaufen();


	//Comment:
	//zeitglied 16


	//digitimq16 start
	//Call Macro: digitime16_start
	FCM_digitime16_start();


	//digitime16 abgelaufen
	//Call Macro: digitime16_abgelaufen
	FCM_digitime16_abgelaufen();


	//Comment:
	//zeitglied 17


	//digitimq17 start
	//Call Macro: digitime17_start
	FCM_digitime17_start();


	//digitime17 abgelaufen
	//Call Macro: digitime17_abgelaufen
	FCM_digitime17_abgelaufen();


	//Comment:
	//zeitglied 18


	//digitimq18 start
	//Call Macro: digitime18_start
	FCM_digitime18_start();


	//digitime18 abgelaufen
	//Call Macro: digitime18_abgelaufen
	FCM_digitime18_abgelaufen();


	//Comment:
	//zeitglied 19


	//digitimq19 start
	//Call Macro: digitime19_start
	FCM_digitime19_start();


	//digitime19 abgelaufen
	//Call Macro: digitime19_abgelaufen
	FCM_digitime19_abgelaufen();


	//Comment:
	//zeitglied 20


	//digitimq19 start
	//Call Macro: digitime20_start
	FCM_digitime20_start();


	//digitime20 abgelaufen
	//Call Macro: digitime20_abgelaufen
	FCM_digitime20_abgelaufen();


	//Comment:
	//zeitglied 21


	//digitimq21 start
	//Call Macro: digitime21_start
	FCM_digitime21_start();


	//digitime21 abgelaufen
	//Call Macro: digitime21_abgelaufen
	FCM_digitime21_abgelaufen();


	//Comment:
	//zeitglied 22


	//digitimq22 start
	//Call Macro: digitime22_start
	FCM_digitime22_start();


	//digitime22 abgelaufen
	//Call Macro: digitime22_abgelaufen
	FCM_digitime22_abgelaufen();


	//Comment:
	//zeitglied 23


	//digitimq23 start
	//Call Macro: digitime23_start
	FCM_digitime23_start();


	//digitime23 abgelaufen
	//Call Macro: digitime23_abgelaufen
	FCM_digitime23_abgelaufen();


	//Comment:
	//zeitglied 24


	//digitimq24 start
	//Call Macro: digitime24_start
	FCM_digitime24_start();


	//digitime24 abgelaufen
	//Call Macro: digitime24_abgelaufen
	FCM_digitime24_abgelaufen();


	//Comment:
	//zeitglied 25


	//digitimq25 start
	//Call Macro: digitime25_start
	FCM_digitime25_start();


	//digitime25 abgelaufen
	//Call Macro: digitime25_abgelaufen
	FCM_digitime25_abgelaufen();


	//Comment:
	//zeitglied 26


	//digitimq26 start
	//Call Macro: digitime26_start
	FCM_digitime26_start();


	//digitime26 abgelaufen
	//Call Macro: digitime26_abgelaufen
	FCM_digitime26_abgelaufen();


	//Comment:
	//zeitglied 27


	//digitimq27 start
	//Call Macro: digitime27_start
	FCM_digitime27_start();


	//digitime27 abgelaufen
	//Call Macro: digitime27_abgelaufen
	FCM_digitime27_abgelaufen();


	//Comment:
	//zeitglied 28


	//digitimq28 start
	//Call Macro: digitime28_start
	FCM_digitime28_start();


	//digitime28 abgelaufen
	//Call Macro: digitime28_abgelaufen
	FCM_digitime28_abgelaufen();


	//Comment:
	//zeitglied 29


	//digitimq29 start
	//Call Macro: digitime29_start
	FCM_digitime29_start();


	//digitime29 abgelaufen
	//Call Macro: digitime29_abgelaufen
	FCM_digitime29_abgelaufen();


	//Comment:
	//zeitglied 30


	//digitimq30 start
	//Call Macro: digitime30_start
	FCM_digitime30_start();


	//digitime30 abgelaufen
	//Call Macro: digitime30_abgelaufen
	FCM_digitime30_abgelaufen();


	//Comment:
	//zeitglied 31


	//digitimq31 start
	//Call Macro: digitime31_start
	FCM_digitime31_start();


	//digitime31 abgelaufen
	//Call Macro: digitime31_abgelaufen
	FCM_digitime31_abgelaufen();


	//Comment:
	//zeitglied 32


	//digitimq32 start
	//Call Macro: digitime32_start
	FCM_digitime32_start();


	//digitime32 abgelaufen
	//Call Macro: digitime32_abgelaufen
	FCM_digitime32_abgelaufen();


}

void FCM_digitime03_start()
{
	
}

void FCM_digitime03_abgelaufen()
{
	
}

void FCM_digitime_xx_abgl_bearbeiten(char FCL_NR)
{
	
	//Switch
	//Switch: digitime_xx_abgl_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 1:
		{
			//Call Macro
			//Call Macro: digitime01_abgelaufen
			FCM_digitime01_abgelaufen();


			break;
		}

		case 2:
		{
			//Call Macro
			//Call Macro: digitime02_abgelaufen
			FCM_digitime02_abgelaufen();


			break;
		}

		case 3:
		{
			//Call Macro
			//Call Macro: digitime03_abgelaufen
			FCM_digitime03_abgelaufen();


			break;
		}

		case 4:
		{
			//Call Macro
			//Call Macro: digitime04_abgelaufen
			FCM_digitime04_abgelaufen();


			break;
		}

		case 5:
		{
			//Call Macro
			//Call Macro: digitime05_abgelaufen
			FCM_digitime05_abgelaufen();


			break;
		}

		case 6:
		{
			//Call Macro
			//Call Macro: digitime06_abgelaufen
			FCM_digitime06_abgelaufen();


			break;
		}

		case 7:
		{
			//Call Macro
			//Call Macro: digitime07_abgelaufen
			FCM_digitime07_abgelaufen();


			break;
		}

		case 8:
		{
			//Call Macro
			//Call Macro: digitime08_abgelaufen
			FCM_digitime08_abgelaufen();


			break;
		}

		case 9:
		{
			//Call Macro
			//Call Macro: digitime09_abgelaufen
			FCM_digitime09_abgelaufen();


			break;
		}

		case 10:
		{
			//Call Macro
			//Call Macro: digitime10_abgelaufen
			FCM_digitime10_abgelaufen();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [B]: B
			goto FCC_digitime_xx_abgl_bearbeiten_B;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_abgl_bearbeiten_A;


	//Connection Point
	//Connection Point: [B]: B
FCC_digitime_xx_abgl_bearbeiten_B:
;


	//Switch
	//Switch: digitime_xx_abgl_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 11:
		{
			//Call Macro
			//Call Macro: digitime11_abgelaufen
			FCM_digitime11_abgelaufen();


			break;
		}

		case 12:
		{
			//Call Macro
			//Call Macro: digitime12_abgelaufen
			FCM_digitime12_abgelaufen();


			break;
		}

		case 13:
		{
			//Call Macro
			//Call Macro: digitime13_abgelaufen
			FCM_digitime13_abgelaufen();


			break;
		}

		case 14:
		{
			//Call Macro
			//Call Macro: digitime14_abgelaufen
			FCM_digitime14_abgelaufen();


			break;
		}

		case 15:
		{
			//Call Macro
			//Call Macro: digitime15_abgelaufen
			FCM_digitime15_abgelaufen();


			break;
		}

		case 16:
		{
			//Call Macro
			//Call Macro: digitime16_abgelaufen
			FCM_digitime16_abgelaufen();


			break;
		}

		case 17:
		{
			//Call Macro
			//Call Macro: digitime17_abgelaufen
			FCM_digitime17_abgelaufen();


			break;
		}

		case 18:
		{
			//Call Macro
			//Call Macro: digitime18_abgelaufen
			FCM_digitime18_abgelaufen();


			break;
		}

		case 19:
		{
			//Call Macro
			//Call Macro: digitime19_abgelaufen
			FCM_digitime19_abgelaufen();


			break;
		}

		case 20:
		{
			//Call Macro
			//Call Macro: digitime20_abgelaufen
			FCM_digitime20_abgelaufen();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [C]: C
			goto FCC_digitime_xx_abgl_bearbeiten_C;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_abgl_bearbeiten_A;


	//Connection Point
	//Connection Point: [C]: C
FCC_digitime_xx_abgl_bearbeiten_C:
;


	//Switch
	//Switch: digitime_xx_abgl_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 21:
		{
			//Call Macro
			//Call Macro: digitime21_abgelaufen
			FCM_digitime21_abgelaufen();


			break;
		}

		case 22:
		{
			//Call Macro
			//Call Macro: digitime22_abgelaufen
			FCM_digitime22_abgelaufen();


			break;
		}

		case 23:
		{
			//Call Macro
			//Call Macro: digitime23_abgelaufen
			FCM_digitime23_abgelaufen();


			break;
		}

		case 24:
		{
			//Call Macro
			//Call Macro: digitime24_abgelaufen
			FCM_digitime24_abgelaufen();


			break;
		}

		case 25:
		{
			//Call Macro
			//Call Macro: digitime25_abgelaufen
			FCM_digitime25_abgelaufen();


			break;
		}

		case 26:
		{
			//Call Macro
			//Call Macro: digitime26_abgelaufen
			FCM_digitime26_abgelaufen();


			break;
		}

		case 27:
		{
			//Call Macro
			//Call Macro: digitime27_abgelaufen
			FCM_digitime27_abgelaufen();


			break;
		}

		case 28:
		{
			//Call Macro
			//Call Macro: digitime28_abgelaufen
			FCM_digitime28_abgelaufen();


			break;
		}

		case 9:
		{
			//Call Macro
			//Call Macro: digitime29_abgelaufen
			FCM_digitime29_abgelaufen();


			break;
		}

		case 30:
		{
			//Call Macro
			//Call Macro: digitime30_abgelaufen
			FCM_digitime30_abgelaufen();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [D]: D
			goto FCC_digitime_xx_abgl_bearbeiten_D;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_abgl_bearbeiten_A;


	//Connection Point
	//Connection Point: [D]: D
FCC_digitime_xx_abgl_bearbeiten_D:
;


	//Switch
	//Switch: digitime_xx_abgl_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 31:
		{
			//Call Macro
			//Call Macro: digitime31_abgelaufen
			FCM_digitime31_abgelaufen();


			break;
		}

		case 32:
		{
			//Call Macro
			//Call Macro: digitime32_abgelaufen
			FCM_digitime32_abgelaufen();


			break;
		}

	}


	//Connection Point
	//Connection Point: [A]: A
FCC_digitime_xx_abgl_bearbeiten_A:
;


}

void FCM_digitime_xx_start_bearbeiten(char FCL_NR)
{
	
	//Switch
	//Switch: digitime_xx_start_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 1:
		{
			//Call Macro
			//Call Macro: digitime01_start
			FCM_digitime01_start();


			break;
		}

		case 2:
		{
			//Call Macro
			//Call Macro: digitime02_start
			FCM_digitime02_start();


			break;
		}

		case 3:
		{
			//Call Macro
			//Call Macro: digitime03_start
			FCM_digitime03_start();


			break;
		}

		case 4:
		{
			//Call Macro
			//Call Macro: digitime04_start
			FCM_digitime04_start();


			break;
		}

		case 5:
		{
			//Call Macro
			//Call Macro: digitime05_start
			FCM_digitime05_start();


			break;
		}

		case 6:
		{
			//Call Macro
			//Call Macro: digitime06_start
			FCM_digitime06_start();


			break;
		}

		case 7:
		{
			//Call Macro
			//Call Macro: digitime07_start
			FCM_digitime07_start();


			break;
		}

		case 8:
		{
			//Call Macro
			//Call Macro: digitime08_start
			FCM_digitime08_start();


			break;
		}

		case 9:
		{
			//Call Macro
			//Call Macro: digitime09_start
			FCM_digitime09_start();


			break;
		}

		case 10:
		{
			//Call Macro
			//Call Macro: digitime10_start
			FCM_digitime10_start();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [B]: B
			goto FCC_digitime_xx_start_bearbeiten_B;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_start_bearbeiten_A;


	//Connection Point
	//Connection Point: [B]: B
FCC_digitime_xx_start_bearbeiten_B:
;


	//Switch
	//Switch: digitime_xx_start_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 11:
		{
			//Call Macro
			//Call Macro: digitime11_start
			FCM_digitime11_start();


			break;
		}

		case 12:
		{
			//Call Macro
			//Call Macro: digitime12_start
			FCM_digitime12_start();


			break;
		}

		case 13:
		{
			//Call Macro
			//Call Macro: digitime13_start
			FCM_digitime13_start();


			break;
		}

		case 14:
		{
			//Call Macro
			//Call Macro: digitime14_start
			FCM_digitime14_start();


			break;
		}

		case 15:
		{
			//Call Macro
			//Call Macro: digitime15_start
			FCM_digitime15_start();


			break;
		}

		case 16:
		{
			//Call Macro
			//Call Macro: digitime16_start
			FCM_digitime16_start();


			break;
		}

		case 17:
		{
			//Call Macro
			//Call Macro: digitime17_start
			FCM_digitime17_start();


			break;
		}

		case 18:
		{
			//Call Macro
			//Call Macro: digitime18_start
			FCM_digitime18_start();


			break;
		}

		case 19:
		{
			//Call Macro
			//Call Macro: digitime19_start
			FCM_digitime19_start();


			break;
		}

		case 20:
		{
			//Call Macro
			//Call Macro: digitime20_start
			FCM_digitime20_start();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [C]: C
			goto FCC_digitime_xx_start_bearbeiten_C;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_start_bearbeiten_A;


	//Connection Point
	//Connection Point: [C]: C
FCC_digitime_xx_start_bearbeiten_C:
;


	//Switch
	//Switch: digitime_xx_start_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 21:
		{
			//Call Macro
			//Call Macro: digitime21_start
			FCM_digitime21_start();


			break;
		}

		case 22:
		{
			//Call Macro
			//Call Macro: digitime22_start
			FCM_digitime22_start();


			break;
		}

		case 23:
		{
			//Call Macro
			//Call Macro: digitime23_start
			FCM_digitime23_start();


			break;
		}

		case 24:
		{
			//Call Macro
			//Call Macro: digitime24_start
			FCM_digitime24_start();


			break;
		}

		case 25:
		{
			//Call Macro
			//Call Macro: digitime25_start
			FCM_digitime25_start();


			break;
		}

		case 26:
		{
			//Call Macro
			//Call Macro: digitime26_start
			FCM_digitime26_start();


			break;
		}

		case 27:
		{
			//Call Macro
			//Call Macro: digitime27_start
			FCM_digitime27_start();


			break;
		}

		case 28:
		{
			//Call Macro
			//Call Macro: digitime28_start
			FCM_digitime28_start();


			break;
		}

		case 29:
		{
			//Call Macro
			//Call Macro: digitime29_start
			FCM_digitime29_start();


			break;
		}

		case 30:
		{
			//Call Macro
			//Call Macro: digitime30_start
			FCM_digitime30_start();


			break;
		}

		default:
		{
			//Goto Connection Point
			//Goto Connection Point: [D]: D
			goto FCC_digitime_xx_start_bearbeiten_D;


		}
	}


	//Goto Connection Point
	//Goto Connection Point: [A]: A
	goto FCC_digitime_xx_start_bearbeiten_A;


	//Connection Point
	//Connection Point: [D]: D
FCC_digitime_xx_start_bearbeiten_D:
;


	//Switch
	//Switch: digitime_xx_start_bearbeiten.nr?
	switch (FCL_NR)
	{
		case 31:
		{
			//Call Macro
			//Call Macro: digitime31_start
			FCM_digitime31_start();


			break;
		}

		case 32:
		{
			//Call Macro
			//Call Macro: digitime32_start
			FCM_digitime32_start();


			break;
		}

	}


	//Connection Point
	//Connection Point: [A]: A
FCC_digitime_xx_start_bearbeiten_A:
;


}

void FCM_test_durchlaufzeit()
{
	
	//enable_test
	//Output: ena7_test -> PORTF_L
	TRISF = TRISF & 0xffe2;
	PORTF = (LATF & 0xffe2) | (FCV_ENA7_TEST & 0x001d);


	//Delay
	//Delay: 2 us
	delay_us(2);


	//enable_test
	//Output: ena0_aus -> PORTF_L
	TRISF = TRISF & 0xffe2;
	PORTF = (LATF & 0xffe2) | (FCV_ENA0_AUS & 0x001d);


}

void FCM_led_out()
{
	
	//Decision
	//Decision: led[1] = an?
	if (FCV_LED[1] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11111110
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 254;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00000001
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 1;
		

	}


	//Decision
	//Decision: led[2] = an?
	if (FCV_LED[2] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11111101
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 253;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00000010
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 2;
		

	}


	//Decision
	//Decision: led[3] = an?
	if (FCV_LED[3] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11111011
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 251;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00000100
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 4;
		

	}


	//Decision
	//Decision: led[4] = an?
	if (FCV_LED[4] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11110111
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 247;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00001000
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 8;
		

	}


	//Decision
	//Decision: led[5] = an?
	if (FCV_LED[5] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11101111
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 239;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00010000
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 16;
		

	}


	//Decision
	//Decision: led[6] = an?
	if (FCV_LED[6] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b11011111
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 223;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b00100000
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 32;
		

	}


	//Decision
	//Decision: led[7] = an?
	if (FCV_LED[7] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b10111111
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 191;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b01000000
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 64;
		

	}


	//Decision
	//Decision: led[8] = an?
	if (FCV_LED[8] == FCV_AN)
	{
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 AND 0b01111111
		FCV_LED_1BIS8 = FCV_LED_1BIS8 & 127;
		

	} else {
		//Calculation
		//Calculation:
		//  led_1bis8 = led_1bis8 OR 0b10000000
		FCV_LED_1BIS8 = FCV_LED_1BIS8 | 128;
		

	}


	//Output
	//Output: led_1bis8 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (FCV_LED_1BIS8<<8);


	//led_enable_09
	//Output: ena3_led -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA3_LED & 0x003c);


	//enable_aus
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_ras_tas_lesen()
{
	
	//Local variable definitions
	char FCL_ZAEHLT;
	char FCL_COMPARE;

	//!!! datenbus entschärfen !!!
	//Input: PORTB_H -> dummi
	TRISB = TRISB | 0xff00;
	FCV_DUMMI = (PORTB & 0xff00) >> 8;


	//tasten eneable
	//Output: ena2_tas -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA2_TAS & 0x003c);


	//tasten einlesen
	//Input: PORTB_H -> tas_1bis8
	TRISB = TRISB | 0xff00;
	FCV_TAS_1BIS8 = (PORTB & 0xff00) >> 8;


	//Calculation
	//Calculation:
	//  ras_tas_lesen.zaehlt = 8
	//  ras_tas_lesen.compare = 0b10000000
	FCL_ZAEHLT = 8;
	FCL_COMPARE = 128;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_ras_tas_lesen_A:
;


	//Decision
	//Decision: ras_tas_lesen.zaehlt = 0?
	if (FCL_ZAEHLT == 0)
	{
	} else {
		//Calculation
		//Calculation:
		//  Ta[ras_tas_lesen.zaehlt] = tas_1bis8 AND ras_tas_lesen.compare
		FCV_TA[FCL_ZAEHLT] = FCV_TAS_1BIS8 & FCL_COMPARE;
		

		//Calculation
		//Calculation:
		//  Ta[ras_tas_lesen.zaehlt] = Ta[ras_tas_lesen.zaehlt] >> (ras_tas_lesen.zaehlt - 1)
		FCV_TA[FCL_ZAEHLT] = FCV_TA[FCL_ZAEHLT] >> (FCL_ZAEHLT - 1);
		

		//Decision
		//Decision: Ta[ras_tas_lesen.zaehlt] = bet?
		if (FCV_TA[FCL_ZAEHLT] == FCV_BET)
		{
			//Calculation
			//Calculation:
			//  rastas_ist[ras_tas_lesen.zaehlt] = an
			FCV_RASTAS_IST[FCL_ZAEHLT] = FCV_AN;
			

		} else {
			//Calculation
			//Calculation:
			//  rastas_ist[ras_tas_lesen.zaehlt] = aus
			//  rastas_war[ras_tas_lesen.zaehlt] = aus
			FCV_RASTAS_IST[FCL_ZAEHLT] = FCV_AUS;
			FCV_RASTAS_WAR[FCL_ZAEHLT] = FCV_AUS;
			

		}


		//Calculation
		//Calculation:
		//  ras_tas_lesen.zaehlt = ras_tas_lesen.zaehlt - 1
		//  ras_tas_lesen.compare = ras_tas_lesen.compare >> 1
		FCL_ZAEHLT = FCL_ZAEHLT - 1;
		FCL_COMPARE = FCL_COMPARE >> 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_ras_tas_lesen_A;


	}


	//Calculation
	//Calculation:
	//  ras_tas_lesen.zaehlt = 8
	FCL_ZAEHLT = 8;
	

	//Connection Point
	//Connection Point: [B]: B
FCC_ras_tas_lesen_B:
;


	//Decision
	//Decision: rastas_ist[ras_tas_lesen.zaehlt] = bet?
	if (FCV_RASTAS_IST[FCL_ZAEHLT] == FCV_BET)
	{
		//Decision
		//Decision: rastas_war[ras_tas_lesen.zaehlt] = an?
		if (FCV_RASTAS_WAR[FCL_ZAEHLT] == FCV_AN)
		{
		} else {
			//Decision
			//Decision: Ra[ras_tas_lesen.zaehlt] = bet?
			if (FCV_RA[FCL_ZAEHLT] == FCV_BET)
			{
				//Calculation
				//Calculation:
				//  Ra[ras_tas_lesen.zaehlt] = nbet
				FCV_RA[FCL_ZAEHLT] = FCV_NBET;
				

			} else {
				//Calculation
				//Calculation:
				//  Ra[ras_tas_lesen.zaehlt] = bet
				FCV_RA[FCL_ZAEHLT] = FCV_BET;
				

			}


			//Calculation
			//Calculation:
			//  rastas_war[ras_tas_lesen.zaehlt] = an
			FCV_RASTAS_WAR[FCL_ZAEHLT] = FCV_AN;
			

		}


	}


	//Decision
	//Decision: ras_tas_lesen.zaehlt = 0?
	if (FCL_ZAEHLT == 0)
	{
	} else {
		//Calculation
		//Calculation:
		//  ras_tas_lesen.zaehlt = ras_tas_lesen.zaehlt - 1
		FCL_ZAEHLT = FCL_ZAEHLT - 1;
		

		//Goto Connection Point
		//Goto Connection Point: [B]: B
		goto FCC_ras_tas_lesen_B;


	}


	//tasten sperren
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_led_reset()
{
	
	//Output
	//Output: 255 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (255<<8);


	//led_enable_09
	//Output: ena3_led -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA3_LED & 0x003c);


	//enable_aus
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_i2c_Ix_in_port1bis8()
{
	
	//Local variable definitions
	char FCL_PORT_COUNT;

	//Berechnung
	//Calculation:
	//  i2c_Ix_in_port1bis8.port_count = i2c_Ixx_1bis8
	FCL_PORT_COUNT = FCV_I2C_IXX_1BIS8;
	

	//Verbindungspunkt
	//Connection Point: [A]: A
FCC_i2c_Ix_in_port1bis8_A:
;


	//Entscheidung
	//Decision: i2c_Ix_in_port1bis8.port_count <> 0?
	if (FCL_PORT_COUNT != 0)
	{
		//Call Macro
		//Call Macro: i2c_I1bisI64_lesen(i2c_Ix_in_port1bis8.port_count)
		FCM_i2c_I1bisI64_lesen(FCL_PORT_COUNT);


		//Berechnung
		//Calculation:
		//  i2c_Ix_in_port1bis8.port_count = i2c_Ix_in_port1bis8.port_count - 1
		FCL_PORT_COUNT = FCL_PORT_COUNT - 1;
		

		//Gehe zum Verbindungspunkt
		//Goto Connection Point: [A]: A
		goto FCC_i2c_Ix_in_port1bis8_A;


	}


}

void FCM_i2c_I1bisI64_lesen(char FCL_I_PORT1BIS8)
{
	
	//Local variable definitions
	char FCL_NR;
	char FCL_I2C_AD_DAT;

	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXX


	//i2c_start
	//Call Macro: i2_start
	FCM_i2_start();


	//Comment:
	//start
	//feste adresse 0x7X
	//out = 0b0111 000 0
	//in = 0b0111 000 1


	//Comment:
	//feste adresse 0x7X
	//ende


	//Comment:
	//start
	//var_adresse


	//Switch
	//Switch: i2c_I1bisI64_lesen.I_port1bis8?
	switch (FCL_I_PORT1BIS8)
	{
		case 1:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01110001
			FCL_I2C_AD_DAT = 113;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 8
			FCL_NR = 8;
			

			break;
		}

		case 2:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01110011
			FCL_I2C_AD_DAT = 115;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 16
			FCL_NR = 16;
			

			break;
		}

		case 3:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01110101
			FCL_I2C_AD_DAT = 117;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 24
			FCL_NR = 24;
			

			break;
		}

		case 4:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01110111
			FCL_I2C_AD_DAT = 119;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 32
			FCL_NR = 32;
			

			break;
		}

		case 5:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01111001
			FCL_I2C_AD_DAT = 121;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 40
			FCL_NR = 40;
			

			break;
		}

		case 6:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01111011
			FCL_I2C_AD_DAT = 123;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 48
			FCL_NR = 48;
			

			break;
		}

		case 7:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01111101
			FCL_I2C_AD_DAT = 125;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 56
			FCL_NR = 56;
			

			break;
		}

		case 8:
		{
			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.i2c_ad_dat = 0b01111111
			FCL_I2C_AD_DAT = 127;
			

			//Calculation
			//Calculation:
			//  i2c_I1bisI64_lesen.nr = 64
			FCL_NR = 64;
			

			break;
		}

	}


	//Call Macro
	//Call Macro: i2c_write_byte(i2c_I1bisI64_lesen.i2c_ad_dat)
	FCM_i2c_write_byte(FCL_I2C_AD_DAT);


	//Comment:
	//ac_bit lesen


	//i2c_ack_von_slave
	//Call Macro: i2c_ack_von_slave
	FCM_i2c_ack_von_slave();


	//Comment:
	//start
	//daten


	//Input bit 7
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 6
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 5
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 4
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//LOB


	//Input bit 3
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 2
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 1
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Calculation
	//Calculation:
	//  i2c_I1bisI64_lesen.nr = i2c_I1bisI64_lesen.nr - 1
	FCL_NR = FCL_NR - 1;
	

	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//Kommentar


	//Input bit 0
	//Input: G15 -> I[i2c_I1bisI64_lesen.nr]
	TRISG = TRISG | 0x8000;
	FCV_I[FCL_NR] = ((PORTG & 0x8000) == 0x8000);


	//Makro-Aufruf
	//Call Macro: i2c_clock
	FCM_i2c_clock();


	//Comment:
	//ende
	//daten


	//Comment:
	//ac_bit lesen


	//i2c_ack_von_slave
	//Call Macro: i2c_ack_von_slave
	FCM_i2c_ack_von_slave();


	//Comment:
	//Kommentar


	//i2c_stopp
	//Call Macro: i2c_stopp
	FCM_i2c_stopp();


	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


}

void FCM_i2c_eeprom_wr(char FCL_BLOCK_0BIS1, char FCL_AD_HOB, char FCL_AD_LOB, char FCL_DATEN)
{
	
	//Local variable definitions
	char FCL_DATA;
	char FCL_DUMMI;
	char FCL_COUNT;

	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXX


	//i2c eeprom start
	//Call Macro: i2c_eeprom_start
	FCM_i2c_eeprom_start();


	//id conf byte bilden
	//Calculation:
	//  i2c_eeprom_wr.data = 0b10100000
	//  i2c_eeprom_wr.data = i2c_eeprom_wr.data + (i2c_eeprom_wr.block_0bis1 << 3)
	FCL_DATA = 160;
	FCL_DATA = FCL_DATA + (FCL_BLOCK_0BIS1 << 3);
	

	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_wr.data)
	FCM_i2c_eeprom_write_byte(FCL_DATA);


	//Comment:
	//ac_bit lesen


	//i2c ack von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//adresse hob


	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_wr.ad_hob)
	FCM_i2c_eeprom_write_byte(FCL_AD_HOB);


	//Comment:
	//ac_bit lesen


	//i2c von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//adresse lob


	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_wr.ad_lob)
	FCM_i2c_eeprom_write_byte(FCL_AD_LOB);


	//Comment:
	//ac_bit lesen


	//i2c von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//start
	//daten


	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_wr.daten)
	FCM_i2c_eeprom_write_byte(FCL_DATEN);


	//Comment:
	//ac_bit lesen


	//ac bit lesen eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//Kommentar


	//i2c stopp eeprom
	//Call Macro: i2c_stopp_eeprom
	FCM_i2c_stopp_eeprom();


	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


	//Delay
	//Delay: 5 ms
	delay_ms(5);


}

void FCM_i2c_eeprom_rd(char FCL_BLOCK_0BIS1, char FCL_AD_HOB, char FCL_AD_LOB)
{
	
	//Local variable definitions
	char FCL_DATA;

	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXX


	//i2c eeprom start
	//Call Macro: i2c_eeprom_start
	FCM_i2c_eeprom_start();


	//Comment:
	//start
	//feste adresse 0xa0


	//id conf byte bilden
	//Calculation:
	//  i2c_eeprom_rd.data = 0b10100000
	//  i2c_eeprom_rd.data = i2c_eeprom_rd.data + (i2c_eeprom_rd.block_0bis1 << 3)
	FCL_DATA = 160;
	FCL_DATA = FCL_DATA + (FCL_BLOCK_0BIS1 << 3);
	

	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_rd.data)
	FCM_i2c_eeprom_write_byte(FCL_DATA);


	//Comment:
	//ac_bit lesen


	//i2c ack von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//adresse hob


	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_rd.ad_hob)
	FCM_i2c_eeprom_write_byte(FCL_AD_HOB);


	//Comment:
	//ac_bit lesen


	//i2c von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//adresse lob


	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_rd.ad_lob)
	FCM_i2c_eeprom_write_byte(FCL_AD_LOB);


	//Comment:
	//ac_bit lesen


	//i2c von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXX
	//start eeprom lesen
	//XXXXXXXXXXXXXXXXXXXXXXX


	//i2c eeprom start
	//Call Macro: i2c_eeprom_start
	FCM_i2c_eeprom_start();


	//Comment:
	//start
	//feste adresse 0xa0


	//id conf byte bilden
	//Calculation:
	//  i2c_eeprom_rd.data = 0b10100001
	//  i2c_eeprom_rd.data = i2c_eeprom_rd.data + (i2c_eeprom_rd.block_0bis1 << 3)
	FCL_DATA = 161;
	FCL_DATA = FCL_DATA + (FCL_BLOCK_0BIS1 << 3);
	

	//i2c eeprom write byte
	//Call Macro: i2c_eeprom_write_byte(i2c_eeprom_rd.data)
	FCM_i2c_eeprom_write_byte(FCL_DATA);


	//Comment:
	//ac_bit lesen


	//i2c ack von slave eeprom
	//Call Macro: i2c_ack_von_slave_eeprom
	FCM_i2c_ack_von_slave_eeprom();


	//Comment:
	//*****************
	//start
	//daten


	//Input bit 7
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 7
	//Calculation:
	//  eeprom_daten = 0x00
	//  eeprom_daten = i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = 0x00;
	FCV_EEPROM_DATEN = FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 6
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 6
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 5
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 5
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 4
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 4
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//LOB


	//Input bit 3
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 3
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 2
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 2
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 1
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 1
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	//  eeprom_daten = eeprom_daten << 1
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN << 1;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//Kommentar


	//Input bit 0
	//Input: D7 -> i2c_eeprom_rd.data
	TRISD = TRISD | 0x0080;
	FCL_DATA = ((PORTD & 0x0080) == 0x0080);


	//berechnung bit 0
	//Calculation:
	//  eeprom_daten = eeprom_daten + i2c_eeprom_rd.data
	FCV_EEPROM_DATEN = FCV_EEPROM_DATEN + FCL_DATA;
	

	//Call Macro clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


	//Comment:
	//ende
	//daten


	//Comment:
	//ac_bit lesen


	//no ac eeprom
	//Call Macro: no_ac_eeprom
	FCM_no_ac_eeprom();


	//Comment:
	//Kommentar


	//i2c stopp eeprom
	//Call Macro: i2c_stopp_eeprom
	FCM_i2c_stopp_eeprom();


	//Comment:
	//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


}

void FCM_no_ac_eeprom()
{
	
	//Input
	//Input: D7 -> dummi
	TRISD = TRISD | 0x0080;
	FCV_DUMMI = ((PORTD & 0x0080) == 0x0080);


	//Makro-Aufruf-clock
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


}

void FCM_i2c_eeprom_start()
{
	
	//sda
	//Output: 1 -> D7
	TRISD = TRISD & 0xff7f;
	if (1)
		PORTD = (LATD & 0xff7f) | 0x0080;
	else
		PORTD = LATD & 0xff7f;


	//sdc
	//Output: 1 -> D6
	TRISD = TRISD & 0xffbf;
	if (1)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Comment:
	//start condition :
	//daten > sda = 0 ?\_
	//delay?
	//clock > scl = 0 ?\_
	//delay?


	//daten = 0
	//Output: 0 -> D7
	TRISD = TRISD & 0xff7f;
	if (0)
		PORTD = (LATD & 0xff7f) | 0x0080;
	else
		PORTD = LATD & 0xff7f;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//i2clock = 0
	//Output: 0 -> D6
	TRISD = TRISD & 0xffbf;
	if (0)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


}

void FCM_i2c_clock_eeprom()
{
	
	//i2c clock = 1
	//Output: 1 -> D6
	TRISD = TRISD & 0xffbf;
	if (1)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Warten
	//Delay: i2c_rw us
	delay_us(FCV_I2C_RW);


	//i2clock = 0
	//Output: 0 -> D6
	TRISD = TRISD & 0xffbf;
	if (0)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Warten
	//Delay: i2c_rw us
	delay_us(FCV_I2C_RW);


}

void FCM_i2c_ack_von_slave_eeprom()
{
	
	//Input
	//Input: D7 -> dummi
	TRISD = TRISD | 0x0080;
	FCV_DUMMI = ((PORTD & 0x0080) == 0x0080);


	//Call Macro i2c clock eeprom
	//Call Macro: i2c_clock_eeprom
	FCM_i2c_clock_eeprom();


}

void FCM_i2c_stopp_eeprom()
{
	
	//Comment:
	//stopp condition :
	//clock > scl = 1 _/?
	//delay?
	//daten > sda = 1 _/?
	//delay?


	//i2clock = 1
	//Output: 0 -> D6
	TRISD = TRISD & 0xffbf;
	if (0)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//daten = 0
	//Output: 0 -> D7
	TRISD = TRISD & 0xff7f;
	if (0)
		PORTD = (LATD & 0xff7f) | 0x0080;
	else
		PORTD = LATD & 0xff7f;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//i2clock = 1
	//Output: 2 -> D6
	TRISD = TRISD & 0xffbf;
	if (2)
		PORTD = (LATD & 0xffbf) | 0x0040;
	else
		PORTD = LATD & 0xffbf;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


	//daten = 1
	//Output: 1 -> D7
	TRISD = TRISD & 0xff7f;
	if (1)
		PORTD = (LATD & 0xff7f) | 0x0080;
	else
		PORTD = LATD & 0xff7f;


	//Warten
	//Delay: i2c_delay us
	delay_us(FCV_I2C_DELAY);


}

void FCM_i2c_eeprom_write_byte(char FCL_DATEN)
{
	
	//Local variable definitions
	char FCL_COUNT;

	//Calculation
	//Calculation:
	//  i2c_eeprom_write_byte.count = 8
	FCL_COUNT = 8;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_i2c_eeprom_write_byte_A:
;


	//Decision
	//Decision: i2c_eeprom_write_byte.count = 0?
	if (FCL_COUNT == 0)
	{
	} else {
		//ad_bit_7
		//Output: i2c_eeprom_write_byte.daten -> PORTD_L
		TRISD = TRISD & 0xff7f;
		PORTD = (LATD & 0xff7f) | (FCL_DATEN & 0x0080);


		//i2c_clock_eeprom
		//Call Macro: i2c_clock_eeprom
		FCM_i2c_clock_eeprom();


		//Calculation
		//Calculation:
		//  i2c_eeprom_write_byte.count = i2c_eeprom_write_byte.count - 1
		//  i2c_eeprom_write_byte.daten = i2c_eeprom_write_byte.daten << 1
		FCL_COUNT = FCL_COUNT - 1;
		FCL_DATEN = FCL_DATEN << 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_i2c_eeprom_write_byte_A;


	}


}

void FCM_i2c_write_byte(char FCL_DATEN)
{
	
	//Local variable definitions
	char FCL_COUNT;

	//Calculation
	//Calculation:
	//  i2c_write_byte.count = 8
	FCL_COUNT = 8;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_i2c_write_byte_A:
;


	//Decision
	//Decision: i2c_write_byte.count = 0?
	if (FCL_COUNT == 0)
	{
	} else {
		//Output
		//Output: i2c_write_byte.daten -> PORTG_H
		TRISG = TRISG & 0x7fff;
		PORTG = (LATG & 0x7fff) | ((FCL_DATEN<<8) & 0x8000);


		//Makro-Aufruf-clock
		//Call Macro: i2c_clock
		FCM_i2c_clock();


		//Calculation
		//Calculation:
		//  i2c_write_byte.daten = i2c_write_byte.daten << 1
		//  i2c_write_byte.count = i2c_write_byte.count - 1
		FCL_DATEN = FCL_DATEN << 1;
		FCL_COUNT = FCL_COUNT - 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_i2c_write_byte_A;


	}


}

void FCM_anz_nummer(short FCL_ZAHL_0BIS32767, char FCL_STELLEN, char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16)
{
	
	//Local variable definitions
	#define FC_ANZ_NUMMER_SZ_NUMMER 5
	char FCL_NUMMER[FC_ANZ_NUMMER_SZ_NUMMER];
	char FCL_LAENGE;
	char FCL_COUNT;
	char FCL_ZEILE;
	char FCL_SPALTE;
	char FCL_COUR;
	char FCL_COM_RESULT;

	//Comment:
	//auf gleichheit prüfen


	//zeile 
	//Decision: anz_nummer.zeile_1bis2 = 1?
	if (FCL_ZEILE_1BIS2 == 1)
	{
		//Decision
		//Decision: anz_nummer.zahl_0bis32767  =  anz_nummer_update_z0[anz_nummer.spalte_1bis16]?
		if (FCL_ZAHL_0BIS32767  ==  FCV_ANZ_NUMMER_UPDATE_Z0[FCL_SPALTE_1BIS16])
		{
			//Goto Connection Point
			//Goto Connection Point: [B]: B
			goto FCC_anz_nummer_B;


		} else {
			//count  = länge
			//Calculation:
			//  anz_nummer.count = 0
			FCL_COUNT = 0;
			

			//Connection Point
			//Connection Point: [C]: C
FCC_anz_nummer_C:
;


			//Decision
			//Decision: anz_nummer.count = 16?
			if (FCL_COUNT == 16)
			{
			} else {
				//Calculation
				//Calculation:
				//  anz_nummer_update_z0[anz_nummer.count] = -32768
				FCV_ANZ_NUMMER_UPDATE_Z0[FCL_COUNT] = -32768;
				

				//Calculation
				//Calculation:
				//  anz_nummer.count = anz_nummer.count + 1
				FCL_COUNT = FCL_COUNT + 1;
				

				//Goto Connection Point
				//Goto Connection Point: [C]: C
				goto FCC_anz_nummer_C;


			}


			//Calculation
			//Calculation:
			//  anz_nummer_update_z0[anz_nummer.spalte_1bis16] = anz_nummer.zahl_0bis32767
			FCV_ANZ_NUMMER_UPDATE_Z0[FCL_SPALTE_1BIS16] = FCL_ZAHL_0BIS32767;
			

		}


	} else {
		//zeile 
		//Decision: anz_nummer.zeile_1bis2 = 2?
		if (FCL_ZEILE_1BIS2 == 2)
		{
			//Decision
			//Decision: anz_nummer.zahl_0bis32767  =  anz_nummer_update_z0[anz_nummer.spalte_1bis16]?
			if (FCL_ZAHL_0BIS32767  ==  FCV_ANZ_NUMMER_UPDATE_Z0[FCL_SPALTE_1BIS16])
			{
				//Goto Connection Point
				//Goto Connection Point: [B]: B
				goto FCC_anz_nummer_B;


			} else {
				//count  = länge
				//Calculation:
				//  anz_nummer.count = 0
				FCL_COUNT = 0;
				

				//Connection Point
				//Connection Point: [D]: D
FCC_anz_nummer_D:
;


				//Decision
				//Decision: anz_nummer.count = 16?
				if (FCL_COUNT == 16)
				{
				} else {
					//Calculation
					//Calculation:
					//  anz_nummer_update_z1[anz_nummer.count] = -32768
					FCV_ANZ_NUMMER_UPDATE_Z1[FCL_COUNT] = -32768;
					

					//Calculation
					//Calculation:
					//  anz_nummer.count = anz_nummer.count + 1
					FCL_COUNT = FCL_COUNT + 1;
					

					//Goto Connection Point
					//Goto Connection Point: [D]: D
					goto FCC_anz_nummer_D;


				}


				//Calculation
				//Calculation:
				//  anz_nummer_update_z1[anz_nummer.spalte_1bis16] = anz_nummer.zahl_0bis32767
				FCV_ANZ_NUMMER_UPDATE_Z1[FCL_SPALTE_1BIS16] = FCL_ZAHL_0BIS32767;
				

			}


		} else {
			//Goto Connection Point
			//Goto Connection Point: [B]: B
			goto FCC_anz_nummer_B;


		}


	}


	//num to string
	//String Manipulation:
	//  anz_nummer.nummer = ToString$(anz_nummer.zahl_0bis32767)
	FCI_TOSTRING(FCL_ZAHL_0BIS32767,FCL_NUMMER,FC_ANZ_NUMMER_SZ_NUMMER);
	

	//länge der zahl
	//String Manipulation:
	//  anz_nummer.laenge = Length$(anz_nummer.nummer)
	FCL_LAENGE = FCI_GETLENGTH(FCL_NUMMER,FC_ANZ_NUMMER_SZ_NUMMER);
	

	//spalte auf linke stelle
	//Calculation:
	//  anz_nummer.spalte = anz_nummer.spalte_1bis16 - (anz_nummer.stellen - 1)
	FCL_SPALTE = FCL_SPALTE_1BIS16 - (FCL_STELLEN - 1);
	

	//Call Macro
	//Call Macro: anz_curpos(anz_nummer.zeile_1bis2, anz_nummer.spalte, nc)
	FCM_anz_curpos(FCL_ZEILE_1BIS2, FCL_SPALTE, FCV_NC);


	//Comment:
	//ad-decoder für anzeige freischalten


	//datenbus nullen
	//Output: 0 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (0<<8);


	//anzeige freischalten
	//Output: ena1_anz -> PORTF_L
	TRISF = TRISF & 0xffe2;
	PORTF = (LATF & 0xffe2) | (FCV_ENA1_ANZ & 0x001d);


	//count  = länge
	//Calculation:
	//  anz_nummer.count = anz_nummer.stellen
	FCL_COUNT = FCL_STELLEN;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_anz_nummer_A:
;


	//alles nullen
	//Decision: anz_nummer.count = 0?
	if (FCL_COUNT == 0)
	{
		//anzeige sperren
		//Output: ena0_aus -> PORTF_L
		TRISF = TRISF & 0xffe2;
		PORTF = (LATF & 0xffe2) | (FCV_ENA0_AUS & 0x001d);


	} else {
		//datenbus hob
		//Output: 0x32 -> PORTB_H
		TRISB = TRISB & 0xc0ff;
		PORTB = (LATB & 0xc0ff) | ((0x32<<8) & 0x3f00);


		//Call Macro
		//Call Macro: anz_wr
		FCM_anz_wr();


		//datenbuslob
		//Output: 0x30 -> PORTB_H
		TRISB = TRISB & 0xc0ff;
		PORTB = (LATB & 0xc0ff) | ((0x30<<8) & 0x3f00);


		//Call Macro
		//Call Macro: anz_wr
		FCM_anz_wr();


		//Calculation
		//Calculation:
		//  anz_nummer.count = anz_nummer.count - 1
		FCL_COUNT = FCL_COUNT - 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_anz_nummer_A;


	}


	//spalte auf linke stelle
	//Calculation:
	//  anz_nummer.spalte = anz_nummer.spalte_1bis16 - (anz_nummer.laenge - 1)
	FCL_SPALTE = FCL_SPALTE_1BIS16 - (FCL_LAENGE - 1);
	

	//Call Macro
	//Call Macro: anz_curpos(anz_nummer.zeile_1bis2, anz_nummer.spalte, nc)
	FCM_anz_curpos(FCL_ZEILE_1BIS2, FCL_SPALTE, FCV_NC);


	//datenbus nullen
	//Output: 0 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (0<<8);


	//anzeige freischalten
	//Output: ena1_anz -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA1_ANZ & 0x003c);


	//Call Component Macro
	//Call Component Macro: LCDDisplay(0)::PrintString(anz_nummer.nummer)
	FCD_LCDDisplay0_PrintString(FCL_NUMMER,FC_ANZ_NUMMER_SZ_NUMMER);


	//ad-decoder aus
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


	//Connection Point
	//Connection Point: [B]: B
FCC_anz_nummer_B:
;


}

void FCM_anz_text(char* PFCL_TEXT, char FCL_STELLEN, char FCL_ZEILE_1BIS2, char FCL_SPALTE_1BIS16)
{
	
	//Local variable definitions
	char FCL_COM_RESULT;
	char FCL_ZEILE;
	char FCL_SPALTE;

	#define FC_ANZ_TEXT_SZ_TEXT 16
	char FCL_TEXT[FC_ANZ_TEXT_SZ_TEXT];
	FCI_CONCATENATE(PFCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);
	//Call Macro
	//Call Macro: anz_curpos(anz_text.zeile_1bis2, anz_text.spalte_1bis16, nc)
	FCM_anz_curpos(FCL_ZEILE_1BIS2, FCL_SPALTE_1BIS16, FCV_NC);


	//Calculation
	//Calculation:
	//  anz_text.spalte = anz_text.spalte_1bis16 -1
	//  anz_text.zeile = anz_text.zeile_1bis2 - 1
	FCL_SPALTE = FCL_SPALTE_1BIS16 -1;
	FCL_ZEILE = FCL_ZEILE_1BIS2 - 1;
	

	//Comment:
	//ad-decoder für anzeige freischalten


	//datenbus nullen
	//Output: 0 -> PORTB_H
	TRISB = TRISB & 0x00ff;
	PORTB = (LATB & 0x00ff) | (0<<8);


	//anzeige freischalten
	//Output: ena1_anz -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA1_ANZ & 0x003c);


	//zeile
	//Decision: anz_text.zeile = 0?
	if (FCL_ZEILE == 0)
	{
		//zeile1 spalte....
		//Switch: anz_text.spalte?
		switch (FCL_SPALTE)
		{
			case 0:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s0, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 1:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s1, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s1 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 2:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s2, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s2 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 3:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s3, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s3 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 4:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s4, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s4 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 5:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s5, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s5 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 6:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s6, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s6 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 7:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s7, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s7 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 8:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s8, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s8 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 9:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s9, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s9 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

		}


		//Switch
		//Switch: anz_text.spalte?
		switch (FCL_SPALTE)
		{
			case 10:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s10, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s10 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 11:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s11, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s11 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 12:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s12, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s12 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 13:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s13, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s13 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s14 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 14:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s14, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s14 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s15 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

			case 15:
			{
				//String Manipulation
				//String Manipulation:
				//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z0s15, 0)
				FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15,0);
				

				//Decision
				//Decision: anz_text.com_result = 0?
				if (FCL_COM_RESULT == 0)
				{
				} else {
					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s15 = anz_text.text
					FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
					

					//Comment:
					//start print text


					//Call Component Macro
					//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
					FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


					//Comment:
					//update var löschen


					//String Manipulation
					//String Manipulation:
					//  anz_text_update_z0s0 = ""
					//  anz_text_update_z0s1 = ""
					//  anz_text_update_z0s2 = ""
					//  anz_text_update_z0s3 = ""
					//  anz_text_update_z0s4 = ""
					//  anz_text_update_z0s5 = ""
					//  anz_text_update_z0s6 = ""
					//  anz_text_update_z0s7 = ""
					//  anz_text_update_z0s8 = ""
					//  anz_text_update_z0s9 = ""
					//  anz_text_update_z0s10 = ""
					//  anz_text_update_z0s11 = ""
					//  anz_text_update_z0s12 = ""
					//  anz_text_update_z0s13 = ""
					//  anz_text_update_z0s14 = ""
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
					FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
					

				}


				//Goto Connection Point
				//Goto Connection Point: [A]: A
				goto FCC_anz_text_A;


				break;
			}

		}


	}


	//zeile2 spalte........
	//Switch: anz_text.spalte?
	switch (FCL_SPALTE)
	{
		case 0:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s0, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//ende print text


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 1:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s1, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s1 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 2:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s2, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s2 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 3:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s3, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s3 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 4:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s4, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s4 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 5:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s5, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s5 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 6:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s6, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s6 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 7:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s7, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s7 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 8:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s8, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s8 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

		case 9:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s9, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s9 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_anz_text_A;


			break;
		}

	}


	//Switch
	//Switch: anz_text.spalte?
	switch (FCL_SPALTE)
	{
		case 10:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s10, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s10 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			break;
		}

		case 11:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s11, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s11 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			break;
		}

		case 12:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s12, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s12 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			break;
		}

		case 13:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s13, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s13 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s14 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			break;
		}

		case 14:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s14, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s14 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s15 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

			}


			break;
		}

		case 15:
		{
			//String Manipulation
			//String Manipulation:
			//  anz_text.com_result = Compare$(anz_text.text, anz_text_update_z1s15, 0)
			FCL_COM_RESULT = FCI_COMPARE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15,0);
			

			//Decision
			//Decision: anz_text.com_result = 0?
			if (FCL_COM_RESULT == 0)
			{
			} else {
				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s15 = anz_text.text
				FCI_CONCATENATE(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
				

				//Comment:
				//start print text


				//Call Component Macro
				//Call Component Macro: LCDDisplay(0)::PrintString(anz_text.text)
				FCD_LCDDisplay0_PrintString(FCL_TEXT,FC_ANZ_TEXT_SZ_TEXT);


				//Comment:
				//update var löschen


				//String Manipulation
				//String Manipulation:
				//  anz_text_update_z1s0 = ""
				//  anz_text_update_z1s1 = ""
				//  anz_text_update_z1s2 = ""
				//  anz_text_update_z1s3 = ""
				//  anz_text_update_z1s4 = ""
				//  anz_text_update_z1s5 = ""
				//  anz_text_update_z1s6 = ""
				//  anz_text_update_z1s7 = ""
				//  anz_text_update_z1s8 = ""
				//  anz_text_update_z1s9 = ""
				//  anz_text_update_z1s10 = ""
				//  anz_text_update_z1s11 = ""
				//  anz_text_update_z1s12 = ""
				//  anz_text_update_z1s13 = ""
				//  anz_text_update_z1s14 = ""
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
				FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
				

			}


			break;
		}

	}


	//Connection Point
	//Connection Point: [A]: A
FCC_anz_text_A:
;


	//!! ad-decoder aus !!
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


}

void FCM_netz_aus()
{
	
	//Local variable definitions
	char FCL_COUNT;
	short FCL_ADRESSE;

	//Decision
	//Decision: adc_integer[1] <100?
	if (FCV_ADC_INTEGER[1] <100)
	{
		//Calculation
		//Calculation:
		//  netz_aus.count = 8
		//  netz_aus.adresse = 8
		FCL_COUNT = 8;
		FCL_ADRESSE = 8;
		

		//Connection Point
		//Connection Point: [A]: A
FCC_netz_aus_A:
;


		//Decision
		//Decision: netz_aus.count = 0?
		if (FCL_COUNT == 0)
		{
		} else {
			//Call Component Macro
			//Call Component Macro: EEPROM(0)::Write(netz_aus.adresse, Ra[netz_aus.count])
			FCD_EEPROM0_WriteEEPROM(FCL_ADRESSE, FCV_RA[FCL_COUNT]);


			//Calculation
			//Calculation:
			//  netz_aus.count = netz_aus.count - 1
			//  netz_aus.adresse = netz_aus.adresse - 1
			FCL_COUNT = FCL_COUNT - 1;
			FCL_ADRESSE = FCL_ADRESSE - 1;
			

			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_netz_aus_A;


		}


		//out off
		//Call Macro: out_off
		FCM_out_off();


		//Calculation
		//Calculation:
		//  Q[1] = an
		//  Q[2] = aus
		//  Q[3] = aus
		//  Q[4] = aus
		//  Q[5] = aus
		//  Q[6] = aus
		//  Q[7] = aus
		//  Q[8] = an
		//  Q[9] = aus
		//  Q[10] = aus
		//  Q[11] = aus
		//  Q[12] = aus
		//  Q[13] = aus
		//  Q[14] = aus
		//  Q[15] = aus
		//  Q[16] = aus
		//  Q[17] = aus
		//  Q[18] = aus
		//  Q[19] = aus
		//  Q[20] = aus
		//  Q[21] = aus
		//  Q[22] = aus
		//  Q[23] = aus
		//  Q[24] = aus
		//  Q[25] = aus
		//  Q[26] = aus
		//  Q[27] = aus
		//  Q[28] = aus
		//  Q[29] = aus
		//  Q[30] = aus
		//  Q[31] = aus
		//  Q[32] = aus
		FCV_Q[1] = FCV_AN;
		FCV_Q[2] = FCV_AUS;
		FCV_Q[3] = FCV_AUS;
		FCV_Q[4] = FCV_AUS;
		FCV_Q[5] = FCV_AUS;
		FCV_Q[6] = FCV_AUS;
		FCV_Q[7] = FCV_AUS;
		FCV_Q[8] = FCV_AN;
		FCV_Q[9] = FCV_AUS;
		FCV_Q[10] = FCV_AUS;
		FCV_Q[11] = FCV_AUS;
		FCV_Q[12] = FCV_AUS;
		FCV_Q[13] = FCV_AUS;
		FCV_Q[14] = FCV_AUS;
		FCV_Q[15] = FCV_AUS;
		FCV_Q[16] = FCV_AUS;
		FCV_Q[17] = FCV_AUS;
		FCV_Q[18] = FCV_AUS;
		FCV_Q[19] = FCV_AUS;
		FCV_Q[20] = FCV_AUS;
		FCV_Q[21] = FCV_AUS;
		FCV_Q[22] = FCV_AUS;
		FCV_Q[23] = FCV_AUS;
		FCV_Q[24] = FCV_AUS;
		FCV_Q[25] = FCV_AUS;
		FCV_Q[26] = FCV_AUS;
		FCV_Q[27] = FCV_AUS;
		FCV_Q[28] = FCV_AUS;
		FCV_Q[29] = FCV_AUS;
		FCV_Q[30] = FCV_AUS;
		FCV_Q[31] = FCV_AUS;
		FCV_Q[32] = FCV_AUS;
		

		//Call Macro
		//Call Macro: i2c_Qx_out_port1bis8
		FCM_i2c_Qx_out_port1bis8();


		//Call Macro
		//Call Macro: anz_text("netz aus", 8, 2, 1)
		FCM_anz_text("netz aus", 8, 2, 1);


		//Call Macro
		//Call Macro: anz_nummer(555, 3, 2, 8)
		FCM_anz_nummer(555, 3, 2, 8);


		//Connection Point
		//Connection Point: [B]: B
FCC_netz_aus_B:
;


		//Goto Connection Point
		//Goto Connection Point: [B]: B
		goto FCC_netz_aus_B;


	}


}

void FCM_adc_1bis5_to_variable()
{
	
	//Comment:
	//adc nach byte variable
	//und
	//adc nach integer variable


	//Call Component Macro
	//Call Component Macro: adc_byte[1]=ADC(1)::ReadAsByte
	FCV_ADC_BYTE[1] = FCD_ADC1_ReadAsByte();


	//Call Component Macro
	//Call Component Macro: adc_integer[1]=ADC(1)::ReadAsInt
	FCV_ADC_INTEGER[1] = FCD_ADC1_ReadAsInt();


	//Call Component Macro
	//Call Component Macro: adc_byte[2]=ADC(2)::ReadAsByte
	FCV_ADC_BYTE[2] = FCD_ADC2_ReadAsByte();


	//Call Component Macro
	//Call Component Macro: adc_integer[2]=ADC(2)::ReadAsInt
	FCV_ADC_INTEGER[2] = FCD_ADC2_ReadAsInt();


	//Call Component Macro
	//Call Component Macro: adc_byte[3]=ADC(3)::ReadAsByte
	FCV_ADC_BYTE[3] = FCD_ADC3_ReadAsByte();


	//Call Component Macro
	//Call Component Macro: adc_integer[3]=ADC(3)::ReadAsInt
	FCV_ADC_INTEGER[3] = FCD_ADC3_ReadAsInt();


	//Call Component Macro
	//Call Component Macro: adc_byte[4]=ADC(4)::ReadAsByte
	FCV_ADC_BYTE[4] = FCD_ADC4_ReadAsByte();


	//Call Component Macro
	//Call Component Macro: adc_integer[4]=ADC(4)::ReadAsInt
	FCV_ADC_INTEGER[4] = FCD_ADC4_ReadAsInt();


	//Call Component Macro
	//Call Component Macro: adc_byte[5]=ADC(5)::ReadAsByte
	FCV_ADC_BYTE[5] = FCD_ADC5_ReadAsByte();


	//Call Component Macro
	//Call Component Macro: adc_integer[5]=ADC(5)::ReadAsInt
	FCV_ADC_INTEGER[5] = FCD_ADC5_ReadAsInt();


}

void FCM_alles_nullen()
{
	
}

void FCM_settime_set()
{
	
	//Local variable definitions
	short FCL_POINTER;
	char FCL_COUNT;
	char FCL_DAT_HOB;
	char FCL_DAT_LOB;

	//Comment:
	//Comment


	//!!! datenbus entschärfen !!!
	//Input: PORTB_H -> dummi
	TRISB = TRISB | 0xff00;
	FCV_DUMMI = (PORTB & 0xff00) >> 8;


	//tasten eneable
	//Output: ena2_tas -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA2_TAS & 0x003c);


	//tasten einlesen
	//Input: PORTB_H -> tas_1bis8
	TRISB = TRISB | 0x8000;
	FCV_TAS_1BIS8 = (PORTB & 0x8000) >> 8;


	//tasten sperren
	//Output: ena0_aus -> PORTD_L
	TRISD = TRISD & 0xffc3;
	PORTD = (LATD & 0xffc3) | (FCV_ENA0_AUS & 0x003c);


	//taste 8 bet > org_time nach eeprom
	//Decision: tas_1bis8 = bet?
	if (FCV_TAS_1BIS8 == FCV_BET)
	{
		//Switch
		//Switch: eeprom?
		switch (FCV_EEPROM)
		{
			case 1:
			{
				//Calculation
				//Calculation:
				//  settime_set.pointer = 32
				//  settime_set.count = 64
				FCL_POINTER = 32;
				FCL_COUNT = 64;
				

				//Connection Point
				//Connection Point: [B]: B
FCC_settime_set_B:
;


				//alle 32 zeiten
				//Decision: settime_set.count = 0?
				if (FCL_COUNT == 0)
				{
				} else {
					//Calculation
					//Calculation:
					//  settime_set.dat_hob = (digitime_orgtime[settime_set.pointer] >> 8)
					//  settime_set.dat_lob = digitime_orgtime[settime_set.pointer]
					FCL_DAT_HOB = (FCV_DIGITIME_ORGTIME[FCL_POINTER] >> 8);
					FCL_DAT_LOB = FCV_DIGITIME_ORGTIME[FCL_POINTER];
					

					//Call Macro
					//Call Macro: i2c_eeprom_wr(0, 0, settime_set.count, settime_set.dat_hob)
					FCM_i2c_eeprom_wr(0, 0, FCL_COUNT, FCL_DAT_HOB);


					//Calculation
					//Calculation:
					//  settime_set.count = settime_set.count - 1
					FCL_COUNT = FCL_COUNT - 1;
					

					//Call Macro
					//Call Macro: i2c_eeprom_wr(0, 0, settime_set.count, settime_set.dat_lob)
					FCM_i2c_eeprom_wr(0, 0, FCL_COUNT, FCL_DAT_LOB);


					//Calculation
					//Calculation:
					//  settime_set.count = settime_set.count - 1
					//  settime_set.pointer = settime_set.pointer - 1
					FCL_COUNT = FCL_COUNT - 1;
					FCL_POINTER = FCL_POINTER - 1;
					

					//Goto Connection Point
					//Goto Connection Point: [B]: B
					goto FCC_settime_set_B;


				}


				break;
			}

			default:
			{
				//Calculation
				//Calculation:
				//  settime_set.pointer = ee_int_start
				//  settime_set.count = 1
				FCL_POINTER = FCV_EE_INT_START;
				FCL_COUNT = 1;
				

				//Connection Point
				//Connection Point: [A]: A
FCC_settime_set_A:
;


				//Decision
				//Decision: settime_set.pointer = (ee_int_ende + 1)?
				if (FCL_POINTER == (FCV_EE_INT_ENDE + 1))
				{
				} else {
					//Call Component Macro
					//Call Component Macro: EEPROM(0)::Write(settime_set.pointer, digitime_orgtime[settime_set.count])
					FCD_EEPROM0_WriteEEPROM(FCL_POINTER, FCV_DIGITIME_ORGTIME[FCL_COUNT]);


					//Calculation
					//Calculation:
					//  settime_set.pointer = settime_set.pointer + 1
					//  settime_set.count = settime_set.count + 1
					FCL_POINTER = FCL_POINTER + 1;
					FCL_COUNT = FCL_COUNT + 1;
					

					//Goto Connection Point
					//Goto Connection Point: [A]: A
					goto FCC_settime_set_A;


				}


			}
		}


	}


	//Switch
	//Switch: eeprom?
	switch (FCV_EEPROM)
	{
		case 1:
		{
			//Calculation
			//Calculation:
			//  settime_set.pointer = 32
			//  settime_set.count = 64
			FCL_POINTER = 32;
			FCL_COUNT = 64;
			

			//Connection Point
			//Connection Point: [D]: D
FCC_settime_set_D:
;


			//alle 32 zeiten
			//Decision: settime_set.count = 0?
			if (FCL_COUNT == 0)
			{
			} else {
				//Call Macro
				//Call Macro: i2c_eeprom_rd(0, 0, settime_set.count)
				FCM_i2c_eeprom_rd(0, 0, FCL_COUNT);


				//Calculation
				//Calculation:
				//  digitime_settime[settime_set.pointer] = eeprom_daten << 8
				//  settime_set.count = settime_set.count - 1
				FCV_DIGITIME_SETTIME[FCL_POINTER] = FCV_EEPROM_DATEN << 8;
				FCL_COUNT = FCL_COUNT - 1;
				

				//Call Macro
				//Call Macro: i2c_eeprom_rd(0, 0, settime_set.count)
				FCM_i2c_eeprom_rd(0, 0, FCL_COUNT);


				//Calculation
				//Calculation:
				//  digitime_settime[settime_set.pointer] = digitime_settime[settime_set.pointer] + eeprom_daten
				//  settime_set.count = settime_set.count - 1
				//  settime_set.pointer = settime_set.pointer - 1
				FCV_DIGITIME_SETTIME[FCL_POINTER] = FCV_DIGITIME_SETTIME[FCL_POINTER] + FCV_EEPROM_DATEN;
				FCL_COUNT = FCL_COUNT - 1;
				FCL_POINTER = FCL_POINTER - 1;
				

				//Goto Connection Point
				//Goto Connection Point: [D]: D
				goto FCC_settime_set_D;


			}


			break;
		}

		default:
		{
			//Calculation
			//Calculation:
			//  settime_set.pointer = ee_int_start
			//  settime_set.count = 1
			FCL_POINTER = FCV_EE_INT_START;
			FCL_COUNT = 1;
			

			//Connection Point
			//Connection Point: [C]: C
FCC_settime_set_C:
;


			//Decision
			//Decision: settime_set.pointer = (ee_int_ende + 1)?
			if (FCL_POINTER == (FCV_EE_INT_ENDE + 1))
			{
			} else {
				//Call Component Macro
				//Call Component Macro: digitime_settime[settime_set.count]=EEPROM(0)::Read(settime_set.pointer)
				FCV_DIGITIME_SETTIME[FCL_COUNT] = FCD_EEPROM0_EEPROMRead(FCL_POINTER);


				//Calculation
				//Calculation:
				//  settime_set.pointer = settime_set.pointer + 1
				//  settime_set.count = settime_set.count + 1
				FCL_POINTER = FCL_POINTER + 1;
				FCL_COUNT = FCL_COUNT + 1;
				

				//Goto Connection Point
				//Goto Connection Point: [C]: C
				goto FCC_settime_set_C;


			}


		}
	}


}

void FCM_digitime04_abgelaufen()
{
	
}

void FCM_digitime05_abgelaufen()
{
	
}

void FCM_digitime06_abgelaufen()
{
	
}

void FCM_digitime07_abgelaufen()
{
	
}

void FCM_digitime08_abgelaufen()
{
	
}

void FCM_digitime09_abgelaufen()
{
	
}

void FCM_digitime10_abgelaufen()
{
	
}

void FCM_digitime11_abgelaufen()
{
	
}

void FCM_digitime12_abgelaufen()
{
	
}

void FCM_digitime13_abgelaufen()
{
	
}

void FCM_digitime14_abgelaufen()
{
	
}

void FCM_digitime15_abgelaufen()
{
	
}

void FCM_digitime16_abgelaufen()
{
	
}

void FCM_digitime17_abgelaufen()
{
	
}

void FCM_digitime18_abgelaufen()
{
	
}

void FCM_digitime19_abgelaufen()
{
	
}

void FCM_digitime20_abgelaufen()
{
	
}

void FCM_digitime21_abgelaufen()
{
	
}

void FCM_digitime22_abgelaufen()
{
	
}

void FCM_digitime23_abgelaufen()
{
	
}

void FCM_digitime24_abgelaufen()
{
	
}

void FCM_digitime25_abgelaufen()
{
	
}

void FCM_digitime26_abgelaufen()
{
	
}

void FCM_digitime27_abgelaufen()
{
	
}

void FCM_digitime28_abgelaufen()
{
	
}

void FCM_digitime29_abgelaufen()
{
	
}

void FCM_digitime30_abgelaufen()
{
	
}

void FCM_digitime31_abgelaufen()
{
	
}

void FCM_digitime32_abgelaufen()
{
	
	//Call Component Macro
	//Call Component Macro: dummi=RS232(0)::ReceiveRS232Char(5)
	FCV_DUMMI = FCD_RS2320_ReceiveRS232Char(5);


	//Switch
	//Switch: dummi?
	switch (FCV_DUMMI)
	{
		case 0x30:
		{
			//Calculation
			//Calculation:
			//  led[1] = aus
			//  led[2] = aus
			//  led[3] = aus
			//  led[4] = aus
			//  led[5] = aus
			//  led[6] = aus
			//  led[7] = aus
			//  led[8] = aus
			FCV_LED[1] = FCV_AUS;
			FCV_LED[2] = FCV_AUS;
			FCV_LED[3] = FCV_AUS;
			FCV_LED[4] = FCV_AUS;
			FCV_LED[5] = FCV_AUS;
			FCV_LED[6] = FCV_AUS;
			FCV_LED[7] = FCV_AUS;
			FCV_LED[8] = FCV_AUS;
			

			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Connection Point
			//Connection Point: [A]: A
FCC_digitime32_abgelaufen_A:
;


			//Calculation
			//Calculation:
			//  rs232_send = 255
			FCV_RS232_SEND = 255;
			

			break;
		}

		case 0x31:
		{
			//Calculation
			//Calculation:
			//  led[1] = an
			FCV_LED[1] = FCV_AN;
			

			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_digitime32_abgelaufen_A;


			break;
		}

		case 0x32:
		{
			//Calculation
			//Calculation:
			//  led[1] = aus
			FCV_LED[1] = FCV_AUS;
			

			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_digitime32_abgelaufen_A;


			break;
		}

		case 0x33:
		{
			//Calculation
			//Calculation:
			//  led[8] = an
			FCV_LED[8] = FCV_AN;
			

			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_digitime32_abgelaufen_A;


			break;
		}

		case 0x34:
		{
			//Calculation
			//Calculation:
			//  led[8] = aus
			FCV_LED[8] = FCV_AUS;
			

			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_digitime32_abgelaufen_A;


			break;
		}

		case 0xE9:
		{
			//Call Macro
			//Call Macro: anz_nummer(dummi, 4, 2, 16)
			FCM_anz_nummer(FCV_DUMMI, 4, 2, 16);


			//Goto Connection Point
			//Goto Connection Point: [A]: A
			goto FCC_digitime32_abgelaufen_A;


			break;
		}

	}


}

void FCM_digitime33_abgelaufen()
{
	
}

void FCM_digitime04_start()
{
	
}

void FCM_digitime05_start()
{
	
}

void FCM_digitime06_start()
{
	
}

void FCM_digitime07_start()
{
	
}

void FCM_digitime08_start()
{
	
}

void FCM_digitime09_start()
{
	
}

void FCM_digitime10_start()
{
	
}

void FCM_digitime11_start()
{
	
}

void FCM_digitime12_start()
{
	
}

void FCM_digitime13_start()
{
	
}

void FCM_digitime14_start()
{
	
}

void FCM_digitime15_start()
{
	
}

void FCM_digitime16_start()
{
	
}

void FCM_digitime17_start()
{
	
}

void FCM_digitime18_start()
{
	
}

void FCM_digitime19_start()
{
	
}

void FCM_digitime20_start()
{
	
}

void FCM_digitime21_start()
{
	
}

void FCM_digitime22_start()
{
	
}

void FCM_digitime23_start()
{
	
}

void FCM_digitime24_start()
{
	
}

void FCM_digitime25_start()
{
	
}

void FCM_digitime26_start()
{
	
}

void FCM_digitime27_start()
{
	
}

void FCM_digitime28_start()
{
	
}

void FCM_digitime29_start()
{
	
}

void FCM_digitime30_start()
{
	
}

void FCM_digitime31_start()
{
	
}

void FCM_digitime32_start()
{
	
	//Decision
	//Decision: rs232_send = 255?
	if (FCV_RS232_SEND == 255)
	{
		//Call Component Macro
		//Call Component Macro: RS232(0)::SendRS232Char(0x2a)
		FCD_RS2320_SendRS232Char(0x2a);


		//Calculation
		//Calculation:
		//  rs232_send = 0
		FCV_RS232_SEND = 0;
		

	}


}

void FCM_digitime33_start()
{
	
}

void FCM_RS232()
{
	
	//Call Macro
	//Call Macro: digitime(32)
	FCM_digitime(32);


	//Decision
	//Decision: digtime_status_flag[32] = abgelaufen?
	if (FCV_DIGTIME_STATUS_FLAG[32] == FCV_ABGELAUFEN)
	{
		//Calculation
		//Calculation:
		//  digtime_status_flag[32] = start
		FCV_DIGTIME_STATUS_FLAG[32] = FCV_START;
		

	}


}

void FCM_Ra_set()
{
	
	//Local variable definitions
	char FCL_COUNT;
	short FCL_ADRESSE;

	//Calculation
	//Calculation:
	//  Ra_set.count = 8
	//  Ra_set.adresse = 8
	FCL_COUNT = 8;
	FCL_ADRESSE = 8;
	

	//Connection Point
	//Connection Point: [A]: A
FCC_Ra_set_A:
;


	//Decision
	//Decision: Ra_set.count = 0?
	if (FCL_COUNT == 0)
	{
	} else {
		//Call Component Macro
		//Call Component Macro: Ra[Ra_set.count]=EEPROM(0)::Read(Ra_set.adresse)
		FCV_RA[FCL_COUNT] = FCD_EEPROM0_EEPROMRead(FCL_ADRESSE);


		//Calculation
		//Calculation:
		//  Ra_set.count = Ra_set.count - 1
		//  Ra_set.adresse = Ra_set.adresse - 1
		FCL_COUNT = FCL_COUNT - 1;
		FCL_ADRESSE = FCL_ADRESSE - 1;
		

		//Goto Connection Point
		//Goto Connection Point: [A]: A
		goto FCC_Ra_set_A;


	}


}

int main()
{
	
	//Initialisation
	ADPCFG = 0xffff;

	
	#if (RS232_1116170_UART == 0)
		set_bit(RS232_1116170_RX_TRIS, RS232_1116170_SW_RX);				// Receive pin is a input
		clear_bit(RS232_1116170_TX_TRIS, RS232_1116170_SW_TX);			// Transmit pin is a output
		set_bit(RS232_1116170_TX_PORT, RS232_1116170_SW_TX);				// Transmit pin is default high
	#endif

	#if (RS232_1116170_UART == 1)

		#ifdef MX_UART1_PORT_FREEALLOC

			#ifdef MX_UART1_ALT
				RPOR0 = (RPOR0 & 0xFF00) | 0x03;	//Assign U1TX - RP0 / PORTB0
			#else
				RPOR3 = (RPOR3 & 0xFF00) | 0x03;	//Assign U1TX - RP6 / PORTB6
			#endif

			RPINR18 = (RPINR18 & 0xFF00) | 0x07;	//Assign U1RX - RP7 / PORTB7

		#endif

		#ifdef MX_UART1_PORT_E16ALLOC

			RPOR8 = (RPOR8 & 0xFF00) | 0x03;		//Assign U1TX - RP16 / PORTC0
			RPINR18 = (RPINR18 & 0xFF00) | 0x11;	//Assign U1RX - RP17 / PORTC1

		#endif

		U1BRG = RS232_1116170_SPBRG_VAL;   					// Set the baud rate
		U1STA = 0;    								// Reset the UART
		U1MODE = 0;									// Reset the mode
		if(RS232_1116170_DATASIZE == 1)
		{
			U1MODE = U1MODE | 0x0006;				// 9-bit TX & RX
		}
		U1MODEbits.UARTEN = 1;         				// turn on serial interface 1

	#endif

	#if (RS232_1116170_UART == 2)

		#ifdef MX_UART2_PORT_FREEALLOC

			RPINR19 = (RPINR19 & 0xFF00) | 0x0F;	//Assign U2RX - RP15 / PORTB15
			RPOR7 = (RPOR7 & 0xFF00) | 0x05;		//Assign U2TX - RP14 / PORTB14

		#endif

		#ifdef MX_UART2_PORT_E16ALLOC

			RPINR19 = (RPINR19 & 0xFF00) | 0x13;	//Assign U2RX - RP19 / PORTC3
			RPOR12 = (RPOR12 & 0x00FF) | 0x0500;	//Assign U2TX - RP25 / PORTC9

		#endif

		U2BRG = RS232_1116170_SPBRG_VAL;   					// Set the baud rate
		U2STA = 0;    								// Reset the UART
		U2MODE = 0;									// Reset the mode
		if(RS232_1116170_DATASIZE == 1)
		{
			U2MODE = U2MODE | 0x0006;				// 9-bit TX & RX
		}
		U2MODEbits.UARTEN = 1;         				// turn on serial interface 2

	#endif

	#if (RS232_1116170_UART == 3)

		#ifdef MX_UART3_PORT_FREEALLOC
			RPINR17 = (RPINR17 & 0x00FF) | 0x1A00;	//Assign U3RX - RP26 / PORTG7
			RPOR10 = (RPOR10 & 0x00FF) | 0x1C00;	//Assign U3TX - RP21 / PORTG6
		#endif

		U3BRG = RS232_1116170_SPBRG_VAL;   					// Set the baud rate
		U3STA = 0;    								// Reset the UART
		U3MODE = 0;									// Reset the mode
		if(RS232_1116170_DATASIZE == 1)
		{
			U3MODE = U3MODE | 0x0006;				// 9-bit TX & RX
		}
		U3MODEbits.UARTEN = 1;         				// turn on serial interface 3

	#endif

	#if (RS232_1116170_UART == 4)

		#ifdef MX_UART4_PORT_FREEALLOC
			RPINR27 = (RPINR27 & 0xFF00) | 0x17;	//Assign U4RX - RP23 / PORTD2
			RPOR10 = (RPOR10 & 0xFF00) | 0x001E;	//Assign U4TX - RP20 / PORTD5
		#endif

		U4BRG = RS232_1116170_SPBRG_VAL;   					// Set the baud rate
		U4STA = 0;    								// Reset the UART
		U4MODE = 0;									// Reset the mode
		if(RS232_1116170_DATASIZE == 1)
		{
			U4MODE = U4MODE | 0x0006;				// 9-bit TX & RX
		}
		U4MODEbits.UARTEN = 1;         				// turn on serial interface 4

	#endif

	#ifdef RS232_1116170_HARDWARE
		set_bit( RS232_1116170_CTS_TRIS, RS232_1116170_CTS_PIN);			//CTS is an input
		clear_bit( RS232_1116170_RTS_TRIS, RS232_1116170_RTS_PIN);		//RTS is an output
		set_bit( RS232_1116170_RTS_PORT, RS232_1116170_RTS_PIN); 			//not ready to accept data
	#endif


	//Interrupt initialisation code
	
	//out off
	//Call Macro: out_off
	FCM_out_off();


	//system variablen definieren
	//Calculation:
	//  rs232_send = 0
	//  an = 0
	//  bet = 0
	//  aus = 1
	//  nbet = 1
	//  nc = 2
	//  start = 1
	//  zaehlt = 2
	//  abgelaufen = 3
	//  intern = 0
	//  extern = 1
	//  settime = 0
	//  led[1] = aus
	//  led[2] = aus
	//  led[3] = aus
	//  led[4] = aus
	//  led[5] = aus
	//  led[6] = aus
	//  led[7] = aus
	//  led[8] = aus
	FCV_RS232_SEND = 0;
	FCV_AN = 0;
	FCV_BET = 0;
	FCV_AUS = 1;
	FCV_NBET = 1;
	FCV_NC = 2;
	FCV_START = 1;
	FCV_ZAEHLT = 2;
	FCV_ABGELAUFEN = 3;
	FCV_INTERN = 0;
	FCV_EXTERN = 1;
	FCV_SETTIME = 0;
	FCV_LED[1] = FCV_AUS;
	FCV_LED[2] = FCV_AUS;
	FCV_LED[3] = FCV_AUS;
	FCV_LED[4] = FCV_AUS;
	FCV_LED[5] = FCV_AUS;
	FCV_LED[6] = FCV_AUS;
	FCV_LED[7] = FCV_AUS;
	FCV_LED[8] = FCV_AUS;
	

	//i2c variablen definieren
	//Calculation:
	//  i2c_delay = 5
	//  i2c_rw = 5
	FCV_I2C_DELAY = 5;
	FCV_I2C_RW = 5;
	

	//ras tas variablen definieren
	//Calculation:
	//  rastas_ist[1] = aus
	//  rastas_ist[2] = aus
	//  rastas_ist[3] = aus
	//  rastas_ist[4] = aus
	//  rastas_ist[5] = aus
	//  rastas_ist[6] = aus
	//  rastas_ist[7] = aus
	//  rastas_ist[8] = aus
	//  rastas_war[1] = aus
	//  rastas_war[2] = aus
	//  rastas_war[3] = aus
	//  rastas_war[4] = aus
	//  rastas_war[5] = aus
	//  rastas_war[6] = aus
	//  rastas_war[7] = aus
	//  rastas_war[8] = aus
	FCV_RASTAS_IST[1] = FCV_AUS;
	FCV_RASTAS_IST[2] = FCV_AUS;
	FCV_RASTAS_IST[3] = FCV_AUS;
	FCV_RASTAS_IST[4] = FCV_AUS;
	FCV_RASTAS_IST[5] = FCV_AUS;
	FCV_RASTAS_IST[6] = FCV_AUS;
	FCV_RASTAS_IST[7] = FCV_AUS;
	FCV_RASTAS_IST[8] = FCV_AUS;
	FCV_RASTAS_WAR[1] = FCV_AUS;
	FCV_RASTAS_WAR[2] = FCV_AUS;
	FCV_RASTAS_WAR[3] = FCV_AUS;
	FCV_RASTAS_WAR[4] = FCV_AUS;
	FCV_RASTAS_WAR[5] = FCV_AUS;
	FCV_RASTAS_WAR[6] = FCV_AUS;
	FCV_RASTAS_WAR[7] = FCV_AUS;
	FCV_RASTAS_WAR[8] = FCV_AUS;
	

	//enaeble 00bis15 definieren
	//Calculation:
	//  ena0_aus = 0b00000000
	//  ena1_anz = 0b00000100
	//  ena2_tas = 0b00001000
	//  ena3_led = 0b00001100
	//  ena0bis15_04 = 0b00010000
	//  ena0bis15_05 = 0b00010100
	//  ena0bis15_06 = 0b00011000
	//  ena7_test = 0b00011100
	//  ena0bis15_08 = 0b00000100
	//  ena0bis15_09 = 0b00000101
	//  ena0bis15_10 = 0b00001100
	//  ena0bis15_11 = 0b00001101
	//  ena0bis15_12 = 0b00010100
	//  ena0bis15_13 = 0b00010101
	//  ena0bis15_14 = 0b00011100
	//  ena0bis15_15 = 0b00011101
	FCV_ENA0_AUS = 0;
	FCV_ENA1_ANZ = 4;
	FCV_ENA2_TAS = 8;
	FCV_ENA3_LED = 12;
	FCV_ENA0BIS15_04 = 16;
	FCV_ENA0BIS15_05 = 20;
	FCV_ENA0BIS15_06 = 24;
	FCV_ENA7_TEST = 28;
	FCV_ENA0BIS15_08 = 4;
	FCV_ENA0BIS15_09 = 5;
	FCV_ENA0BIS15_10 = 12;
	FCV_ENA0BIS15_11 = 13;
	FCV_ENA0BIS15_12 = 20;
	FCV_ENA0BIS15_13 = 21;
	FCV_ENA0BIS15_14 = 28;
	FCV_ENA0BIS15_15 = 29;
	

	//digitime variablen definieren
	//Calculation:
	//  digtime_status_flag[1] = start
	//  digtime_status_flag[2] = start
	//  digtime_status_flag[3] = start
	//  digtime_status_flag[4] = start
	//  digtime_status_flag[5] = start
	//  digtime_status_flag[6] = start
	//  digtime_status_flag[7] = start
	//  digtime_status_flag[8] = start
	//  digtime_status_flag[9] = start
	//  digtime_status_flag[10] = start
	//  digtime_status_flag[11] = start
	//  digtime_status_flag[12] = start
	//  digtime_status_flag[13] = start
	//  digtime_status_flag[14] = start
	//  digtime_status_flag[15] = start
	//  digtime_status_flag[16] = start
	//  digtime_status_flag[17] = start
	//  digtime_status_flag[18] = start
	//  digtime_status_flag[19] = start
	//  digtime_status_flag[20] = start
	//  digtime_status_flag[21] = start
	//  digtime_status_flag[22] = start
	//  digtime_status_flag[23] = start
	//  digtime_status_flag[24] = start
	//  digtime_status_flag[25] = start
	//  digtime_status_flag[26] = start
	//  digtime_status_flag[27] = start
	//  digtime_status_flag[28] = start
	//  digtime_status_flag[29] = start
	//  digtime_status_flag[30] = start
	//  digtime_status_flag[31] = start
	//  digtime_status_flag[32] = start
	//  poti1_integer = 1
	//  poti2_integer = 2
	//  poti3_integer = 3
	//  poti4_integer = 4
	//  poti5_integer = 5
	//  poti1_byte = 6
	//  poti2_byte = 7
	//  poti3_byte = 8
	//  poti4_byte = 9
	//  poti5_byte = 10
	FCV_DIGTIME_STATUS_FLAG[1] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[2] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[3] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[4] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[5] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[6] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[7] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[8] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[9] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[10] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[11] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[12] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[13] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[14] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[15] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[16] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[17] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[18] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[19] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[20] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[21] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[22] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[23] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[24] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[25] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[26] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[27] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[28] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[29] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[30] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[31] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[32] = FCV_START;
	FCV_POTI1_INTEGER = 1;
	FCV_POTI2_INTEGER = 2;
	FCV_POTI3_INTEGER = 3;
	FCV_POTI4_INTEGER = 4;
	FCV_POTI5_INTEGER = 5;
	FCV_POTI1_BYTE = 6;
	FCV_POTI2_BYTE = 7;
	FCV_POTI3_BYTE = 8;
	FCV_POTI4_BYTE = 9;
	FCV_POTI5_BYTE = 10;
	

	//anz text update strings ""
	//String Manipulation:
	//  anz_text_update_z0s0 = ""
	//  anz_text_update_z0s1 = ""
	//  anz_text_update_z0s2 = ""
	//  anz_text_update_z0s3 = ""
	//  anz_text_update_z0s4 = ""
	//  anz_text_update_z0s5 = ""
	//  anz_text_update_z0s6 = ""
	//  anz_text_update_z0s7 = ""
	//  anz_text_update_z0s8 = ""
	//  anz_text_update_z0s9 = ""
	//  anz_text_update_z0s10 = ""
	//  anz_text_update_z0s11 = ""
	//  anz_text_update_z0s12 = ""
	//  anz_text_update_z0s13 = ""
	//  anz_text_update_z0s14 = ""
	//  anz_text_update_z0s15 = ""
	//  anz_text_update_z1s0 = ""
	//  anz_text_update_z1s1 = ""
	//  anz_text_update_z1s2 = ""
	//  anz_text_update_z1s3 = ""
	//  anz_text_update_z1s4 = ""
	//  anz_text_update_z1s5 = ""
	//  anz_text_update_z1s6 = ""
	//  anz_text_update_z1s7 = ""
	//  anz_text_update_z1s8 = ""
	//  anz_text_update_z1s9 = ""
	//  anz_text_update_z1s10 = ""
	//  anz_text_update_z1s11 = ""
	//  anz_text_update_z1s12 = ""
	//  anz_text_update_z1s13 = ""
	//  anz_text_update_z1s14 = ""
	//  anz_text_update_z1s15 = ""
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S0,FCSZ_ANZ_TEXT_UPDATE_Z0S0);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S1,FCSZ_ANZ_TEXT_UPDATE_Z0S1);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S2,FCSZ_ANZ_TEXT_UPDATE_Z0S2);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S3,FCSZ_ANZ_TEXT_UPDATE_Z0S3);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S4,FCSZ_ANZ_TEXT_UPDATE_Z0S4);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S5,FCSZ_ANZ_TEXT_UPDATE_Z0S5);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S6,FCSZ_ANZ_TEXT_UPDATE_Z0S6);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S7,FCSZ_ANZ_TEXT_UPDATE_Z0S7);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S8,FCSZ_ANZ_TEXT_UPDATE_Z0S8);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S9,FCSZ_ANZ_TEXT_UPDATE_Z0S9);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S10,FCSZ_ANZ_TEXT_UPDATE_Z0S10);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S11,FCSZ_ANZ_TEXT_UPDATE_Z0S11);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S12,FCSZ_ANZ_TEXT_UPDATE_Z0S12);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S13,FCSZ_ANZ_TEXT_UPDATE_Z0S13);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S14,FCSZ_ANZ_TEXT_UPDATE_Z0S14);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z0S15,FCSZ_ANZ_TEXT_UPDATE_Z0S15);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S0,FCSZ_ANZ_TEXT_UPDATE_Z1S0);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S1,FCSZ_ANZ_TEXT_UPDATE_Z1S1);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S2,FCSZ_ANZ_TEXT_UPDATE_Z1S2);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S3,FCSZ_ANZ_TEXT_UPDATE_Z1S3);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S4,FCSZ_ANZ_TEXT_UPDATE_Z1S4);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S5,FCSZ_ANZ_TEXT_UPDATE_Z1S5);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S6,FCSZ_ANZ_TEXT_UPDATE_Z1S6);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S7,FCSZ_ANZ_TEXT_UPDATE_Z1S7);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S8,FCSZ_ANZ_TEXT_UPDATE_Z1S8);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S9,FCSZ_ANZ_TEXT_UPDATE_Z1S9);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S10,FCSZ_ANZ_TEXT_UPDATE_Z1S10);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S11,FCSZ_ANZ_TEXT_UPDATE_Z1S11);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S12,FCSZ_ANZ_TEXT_UPDATE_Z1S12);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S13,FCSZ_ANZ_TEXT_UPDATE_Z1S13);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S14,FCSZ_ANZ_TEXT_UPDATE_Z1S14);
	FCI_CONCATENATE("",0,"",0,FCV_ANZ_TEXT_UPDATE_Z1S15,FCSZ_ANZ_TEXT_UPDATE_Z1S15);
	

	//eeprom intern settime definieren
	//Calculation:
	//  ee_int_start = 10
	//  ee_int_ende = 42
	FCV_EE_INT_START = 10;
	FCV_EE_INT_ENDE = 42;
	

	//Comment:
	//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
	//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
	//Sytemkomponenten bestimmen
	//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
	//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


	//digitime zeit definieren
	//Calculation:
	//  digitime_conf[1] = poti5_integer
	//  digitime_div_fak[1] = 10
	//  digitime_conf[2] = poti4_integer
	//  digitime_div_fak[2] = 10
	//  digitime_conf[3] = settime
	//  digitime_div_fak[3] = 1
	//  digitime_conf[4] = settime
	//  digitime_div_fak[4] = 1
	//  digitime_conf[5] = settime
	//  digitime_div_fak[5] = 1
	//  digitime_conf[6] = settime
	//  digitime_div_fak[6] = 1
	//  digitime_conf[7] = settime
	//  digitime_div_fak[7] = 1
	//  digitime_conf[8] = settime
	//  digitime_div_fak[8] = 1
	//  digitime_conf[9] = settime
	//  digitime_div_fak[9] = 1
	//  digitime_conf[10] = settime
	//  digitime_div_fak[10] = 1
	//  digitime_conf[11] = settime
	//  digitime_div_fak[11] = 1
	//  digitime_conf[12] = settime
	//  digitime_div_fak[12] = 1
	//  digitime_conf[13] = settime
	//  digitime_div_fak[13] = 1
	//  digitime_conf[14] = settime
	//  digitime_div_fak[14] = 1
	//  digitime_conf[15] = settime
	//  digitime_div_fak[15] = 1
	//  digitime_conf[16] = settime
	//  digitime_div_fak[16] = 1
	//  digitime_conf[17] = settime
	//  digitime_div_fak[17] = 1
	//  digitime_conf[18] = settime
	//  digitime_div_fak[18] = 1
	//  digitime_conf[19] = settime
	//  digitime_div_fak[19] = 1
	//  digitime_conf[20] = settime
	//  digitime_div_fak[20] = 1
	//  digitime_conf[21] = settime
	//  digitime_div_fak[21] = 1
	//  digitime_conf[22] = settime
	//  digitime_div_fak[22] = 1
	//  digitime_conf[23] = settime
	//  digitime_div_fak[23] = 1
	//  digitime_conf[24] = settime
	//  digitime_div_fak[24] = 1
	//  digitime_conf[25] = settime
	//  digitime_div_fak[25] = 1
	//  digitime_conf[26] = settime
	//  digitime_div_fak[26] = 1
	//  digitime_conf[27] = settime
	//  digitime_div_fak[27] = 1
	//  digitime_conf[28] = settime
	//  digitime_div_fak[28] = 1
	//  digitime_conf[29] = settime
	//  digitime_div_fak[29] = 1
	//  digitime_conf[30] = settime
	//  digitime_div_fak[30] = 1
	//  digitime_conf[31] = settime
	//  digitime_div_fak[31] = 1
	//  digitime_conf[32] = settime
	//  digitime_div_fak[32] = 1
	//  digitime_orgtime[1] = 100
	//  digitime_orgtime[2] = 100
	//  digitime_orgtime[3] = 10
	//  digitime_orgtime[4] = 10
	//  digitime_orgtime[5] = 10
	//  digitime_orgtime[6] = 10
	//  digitime_orgtime[7] = 10
	//  digitime_orgtime[8] = 10
	//  digitime_orgtime[9] = 10
	//  digitime_orgtime[10] = 777
	//  digitime_orgtime[11] = 10
	//  digitime_orgtime[12] = 10
	//  digitime_orgtime[13] = 222
	//  digitime_orgtime[14] = 10
	//  digitime_orgtime[15] = 10
	//  digitime_orgtime[16] = 10
	//  digitime_orgtime[17] = 10
	//  digitime_orgtime[18] = 10
	//  digitime_orgtime[19] = 10
	//  digitime_orgtime[20] = 10
	//  digitime_orgtime[21] = 10
	//  digitime_orgtime[22] = 10
	//  digitime_orgtime[23] = 10
	//  digitime_orgtime[24] = 10
	//  digitime_orgtime[25] = 10
	//  digitime_orgtime[26] = 10
	//  digitime_orgtime[27] = 10
	//  digitime_orgtime[28] = 10
	//  digitime_orgtime[29] = 10
	//  digitime_orgtime[30] = 10
	//  digitime_orgtime[31] = 10
	//  digitime_orgtime[32] = 11
	FCV_DIGITIME_CONF[1] = FCV_POTI5_INTEGER;
	FCV_DIGITIME_DIV_FAK[1] = 10;
	FCV_DIGITIME_CONF[2] = FCV_POTI4_INTEGER;
	FCV_DIGITIME_DIV_FAK[2] = 10;
	FCV_DIGITIME_CONF[3] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[3] = 1;
	FCV_DIGITIME_CONF[4] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[4] = 1;
	FCV_DIGITIME_CONF[5] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[5] = 1;
	FCV_DIGITIME_CONF[6] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[6] = 1;
	FCV_DIGITIME_CONF[7] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[7] = 1;
	FCV_DIGITIME_CONF[8] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[8] = 1;
	FCV_DIGITIME_CONF[9] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[9] = 1;
	FCV_DIGITIME_CONF[10] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[10] = 1;
	FCV_DIGITIME_CONF[11] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[11] = 1;
	FCV_DIGITIME_CONF[12] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[12] = 1;
	FCV_DIGITIME_CONF[13] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[13] = 1;
	FCV_DIGITIME_CONF[14] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[14] = 1;
	FCV_DIGITIME_CONF[15] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[15] = 1;
	FCV_DIGITIME_CONF[16] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[16] = 1;
	FCV_DIGITIME_CONF[17] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[17] = 1;
	FCV_DIGITIME_CONF[18] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[18] = 1;
	FCV_DIGITIME_CONF[19] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[19] = 1;
	FCV_DIGITIME_CONF[20] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[20] = 1;
	FCV_DIGITIME_CONF[21] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[21] = 1;
	FCV_DIGITIME_CONF[22] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[22] = 1;
	FCV_DIGITIME_CONF[23] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[23] = 1;
	FCV_DIGITIME_CONF[24] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[24] = 1;
	FCV_DIGITIME_CONF[25] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[25] = 1;
	FCV_DIGITIME_CONF[26] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[26] = 1;
	FCV_DIGITIME_CONF[27] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[27] = 1;
	FCV_DIGITIME_CONF[28] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[28] = 1;
	FCV_DIGITIME_CONF[29] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[29] = 1;
	FCV_DIGITIME_CONF[30] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[30] = 1;
	FCV_DIGITIME_CONF[31] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[31] = 1;
	FCV_DIGITIME_CONF[32] = FCV_SETTIME;
	FCV_DIGITIME_DIV_FAK[32] = 1;
	FCV_DIGITIME_ORGTIME[1] = 100;
	FCV_DIGITIME_ORGTIME[2] = 100;
	FCV_DIGITIME_ORGTIME[3] = 10;
	FCV_DIGITIME_ORGTIME[4] = 10;
	FCV_DIGITIME_ORGTIME[5] = 10;
	FCV_DIGITIME_ORGTIME[6] = 10;
	FCV_DIGITIME_ORGTIME[7] = 10;
	FCV_DIGITIME_ORGTIME[8] = 10;
	FCV_DIGITIME_ORGTIME[9] = 10;
	FCV_DIGITIME_ORGTIME[10] = 777;
	FCV_DIGITIME_ORGTIME[11] = 10;
	FCV_DIGITIME_ORGTIME[12] = 10;
	FCV_DIGITIME_ORGTIME[13] = 222;
	FCV_DIGITIME_ORGTIME[14] = 10;
	FCV_DIGITIME_ORGTIME[15] = 10;
	FCV_DIGITIME_ORGTIME[16] = 10;
	FCV_DIGITIME_ORGTIME[17] = 10;
	FCV_DIGITIME_ORGTIME[18] = 10;
	FCV_DIGITIME_ORGTIME[19] = 10;
	FCV_DIGITIME_ORGTIME[20] = 10;
	FCV_DIGITIME_ORGTIME[21] = 10;
	FCV_DIGITIME_ORGTIME[22] = 10;
	FCV_DIGITIME_ORGTIME[23] = 10;
	FCV_DIGITIME_ORGTIME[24] = 10;
	FCV_DIGITIME_ORGTIME[25] = 10;
	FCV_DIGITIME_ORGTIME[26] = 10;
	FCV_DIGITIME_ORGTIME[27] = 10;
	FCV_DIGITIME_ORGTIME[28] = 10;
	FCV_DIGITIME_ORGTIME[29] = 10;
	FCV_DIGITIME_ORGTIME[30] = 10;
	FCV_DIGITIME_ORGTIME[31] = 10;
	FCV_DIGITIME_ORGTIME[32] = 11;
	

	//system hardware definieren
	//Calculation:
	//  i2c_Qxx_1bis8 = 1
	//  i2c_Ixx_1bis8 = 1
	//  eeprom = intern
	FCV_I2C_QXX_1BIS8 = 1;
	FCV_I2C_IXX_1BIS8 = 1;
	FCV_EEPROM = FCV_INTERN;
	

	//digitime macros definieren
	//Call Macro: digitime_macros_definieren
	FCM_digitime_macros_definieren();


	//Comment:
	//System einrichten


	//Call Macro
	//Call Macro: Ra_set
	FCM_Ra_set();


	//Call Macro
	//Call Macro: settime_set
	FCM_settime_set();


	//anz start
	//Call Macro: anz_start
	FCM_anz_start();


	//led resetten
	//Call Macro: led_reset
	FCM_led_reset();


	//Comment:
	//Comment


	//Interrupt
	//Interrupt: Enable INT1
	INTCON2bits.INT1EP = 0;
	IEC1bits.INT1IE = 1;

	//out on
	//Call Macro: out_on
	FCM_out_on();


	//Comment:
	//Start testprogramme 1x


	//Comment:
	//test sub-anz_nummer


	//anz nummer
	//Call Macro: anz_nummer(digitime_settime[32], 5, 1, 10)
	FCM_anz_nummer(FCV_DIGITIME_SETTIME[32], 5, 1, 10);


	//Delay
	//Delay: 2 s
	delay_s(2);


	//Call Macro
	//Call Macro: anz_text("hallo", 5, 1, 6)
	FCM_anz_text("hallo", 5, 1, 6);


	//Comment:
	//Ende testprogramme 1x


	//Connection Point
	//Connection Point: [A]: start
FCC_Main_A:
;


	//Comment:
	//Start system-programme


	//Call Macro
	//Call Macro: adc_1bis5_to_variable
	FCM_adc_1bis5_to_variable();


	//Call Macro
	//Call Macro: netz_aus
	FCM_netz_aus();


	//Call Macro
	//Call Macro: ras_tas_lesen
	FCM_ras_tas_lesen();


	//Call Macro
	//Call Macro: i2c_Qx_out_port1bis8
	FCM_i2c_Qx_out_port1bis8();


	//Call Macro
	//Call Macro: i2c_Ix_in_port1bis8
	FCM_i2c_Ix_in_port1bis8();


	//Call Macro
	//Call Macro: led_out
	FCM_led_out();


	//Comment:
	//Ende system-programme


	//Decision
	//Decision: Ta[1] =  bet?
	if (FCV_TA[1] ==  FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[3] = an
		FCV_LED[3] = FCV_AN;
		

	} else {
		//Calculation
		//Calculation:
		//  led[3] = aus
		FCV_LED[3] = FCV_AUS;
		

	}


	//Decision
	//Decision: Ra[1] =  bet?
	if (FCV_RA[1] ==  FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[4] = an
		FCV_LED[4] = FCV_AN;
		

	} else {
		//Calculation
		//Calculation:
		//  led[4] = aus
		FCV_LED[4] = FCV_AUS;
		

	}


	//Decision
	//Decision: Ra[6] =  bet?
	if (FCV_RA[6] ==  FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[6] = an
		FCV_LED[6] = FCV_AN;
		

	} else {
		//Calculation
		//Calculation:
		//  led[6] = aus
		FCV_LED[6] = FCV_AUS;
		

	}


	//Decision
	//Decision: Ra[8] =  bet?
	if (FCV_RA[8] ==  FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[7] = an
		FCV_LED[7] = FCV_AN;
		

	} else {
		//Calculation
		//Calculation:
		//  led[7] = aus
		FCV_LED[7] = FCV_AUS;
		

	}


	//Call Macro
	//Call Macro: anz_nummer(adc_integer[4], 4, 1, 4)
	FCM_anz_nummer(FCV_ADC_INTEGER[4], 4, 1, 4);


	//Call Macro
	//Call Macro: anz_nummer(adc_integer[5], 4, 2, 4)
	FCM_anz_nummer(FCV_ADC_INTEGER[5], 4, 2, 4);


	//RS232
	//Call Macro: RS232
	FCM_RS232();


	//Decision
	//Decision: I[1] = bet?
	if (FCV_I[1] == FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[5] = an
		FCV_LED[5] = FCV_AN;
		

	}


	//Decision
	//Decision: I[8] = bet?
	if (FCV_I[8] == FCV_BET)
	{
		//Calculation
		//Calculation:
		//  led[5] = aus
		FCV_LED[5] = FCV_AUS;
		

	}


	//Call Macro
	//Call Macro: digitime(1)
	FCM_digitime(1);


	//Decision
	//Decision: digtime_status_flag[1] = abgelaufen?
	if (FCV_DIGTIME_STATUS_FLAG[1] == FCV_ABGELAUFEN)
	{
	} else {
		//Goto Connection Point
		//Goto Connection Point: [A]: start
		goto FCC_Main_A;


	}


	//Call Macro
	//Call Macro: digitime(2)
	FCM_digitime(2);


	//Decision
	//Decision: digtime_status_flag[2] = abgelaufen?
	if (FCV_DIGTIME_STATUS_FLAG[2] == FCV_ABGELAUFEN)
	{
	} else {
		//Goto Connection Point
		//Goto Connection Point: [A]: start
		goto FCC_Main_A;


	}


	//Calculation
	//Calculation:
	//  digtime_status_flag[1] = start
	//  digtime_status_flag[2] = start
	FCV_DIGTIME_STATUS_FLAG[1] = FCV_START;
	FCV_DIGTIME_STATUS_FLAG[2] = FCV_START;
	

	//Goto Connection Point
	//Goto Connection Point: [A]: start
	goto FCC_Main_A;


	mainendloop: goto mainendloop;
	return 0;
}

	//Handler code for [INT1]
	void _ISR _INT1Interrupt(void)
	{
		IFS1bits.INT1IF = 0;
		FCM_int1_digitime();
	}




