//************************************************************************************
//**  
//**  Source name:   C:\Users\clrsrc\Documents\Interrupt001.fcfx
//**  Title:         
//**  Description:   
//**  Device:        PIC.16F.16LF720
//**  
//**  Generated by:  Flowcode v7.2.1.4
//**  Date:          Monday, October 30, 2017 11:18:19
//**  Users:         1
//**  Registered to: skammann
//**  Licence key:   369G63
//**  
//**  
//**     NICHT FÜR KOMMERZiELLE ANWENDUNGEN
//**  
//**  http://www.matrixtsl.com
//**  
//************************************************************************************


#define MX_PIC

#define MX_CAL_PIC

#define MX_CLK_SPEED 19660800

#define FCP_NULL Unconnected_Port



#include <xc.h>
#include <math.h>

__PROG_CONFIG(0x1, 0x2FE4);
__PROG_CONFIG(0x2, 0x3FFF);

/*========================================================================*\
   Use :Mit Typdefinitionen
\*========================================================================*/
#include "D:\Program Files (x86)\Flowcode 7\CAL\internals.c"





/*========================================================================*\
   Use :panel
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
MX_GLOBAL MX_UINT8 FCV_COUNT;
MX_GLOBAL MX_UINT8 FCV_SECONDS;

void FCM_tmr_service();

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d92_led_base1__TurnOn();
void FCD_03d92_led_base1__TurnOff();

/*========================================================================*\
   Use :default_target
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083d2_default_target__TurnOn FCD_03d92_led_base1__TurnOn
#define FCD_083d2_default_target__TurnOff FCD_03d92_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d912_led_base1__TurnOn();
void FCD_03d912_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm8
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083d12_led_5mm8__TurnOn FCD_03d912_led_base1__TurnOn
#define FCD_083d12_led_5mm8__TurnOff FCD_03d912_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d911_led_base1__TurnOn();
void FCD_03d911_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm7
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083d11_led_5mm7__TurnOn FCD_03d911_led_base1__TurnOn
#define FCD_083d11_led_5mm7__TurnOff FCD_03d911_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d910_led_base1__TurnOn();
void FCD_03d910_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm6
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083d10_led_5mm6__TurnOn FCD_03d910_led_base1__TurnOn
#define FCD_083d10_led_5mm6__TurnOff FCD_03d910_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d9f_led_base1__TurnOn();
void FCD_03d9f_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm5
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083df_led_5mm5__TurnOn FCD_03d9f_led_base1__TurnOn
#define FCD_083df_led_5mm5__TurnOff FCD_03d9f_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d9e_led_base1__TurnOn();
void FCD_03d9e_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm4
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083de_led_5mm4__TurnOn FCD_03d9e_led_base1__TurnOn
#define FCD_083de_led_5mm4__TurnOff FCD_03d9e_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d9d_led_base1__TurnOn();
void FCD_03d9d_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm3
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083dd_led_5mm3__TurnOn FCD_03d9d_led_base1__TurnOn
#define FCD_083dd_led_5mm3__TurnOff FCD_03d9d_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d9c_led_base1__TurnOn();
void FCD_03d9c_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm2
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083dc_led_5mm2__TurnOn FCD_03d9c_led_base1__TurnOn
#define FCD_083dc_led_5mm2__TurnOff FCD_03d9c_led_base1__TurnOff

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d9b_led_base1__TurnOn();
void FCD_03d9b_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083db_led_5mm1__TurnOn FCD_03d9b_led_base1__TurnOn
#define FCD_083db_led_5mm1__TurnOff FCD_03d9b_led_base1__TurnOff

/*========================================================================*\
   Use :led_array1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_0e1e1_led_array1__BarGraph(MX_UINT8 FCL_LENGTH);
void FCD_0e1e1_led_array1__LEDOn(MX_UINT8 FCL_INDEX);
void FCD_0e1e1_led_array1__AllOn();
void FCD_0e1e1_led_array1__LEDOff(MX_UINT8 FCL_INDEX);
void FCD_0e1e1_led_array1__PointGraph(MX_UINT8 FCL_INDEX);
void FCD_0e1e1_led_array1__WriteValue(MX_UINT8 FCL_VALUE);
void FCD_0e1e1_led_array1__AllOff();

/*========================================================================*\
   Use :component_label1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
void FCD_03d91_led_base1__TurnOn();
void FCD_03d91_led_base1__TurnOff();

/*========================================================================*\
   Use :led_5mm1
       :Deklarationen zu Variablen
       :Deklarationen zur Makrofunktion
\*========================================================================*/
#define FCD_083d1_led_5mm1__TurnOn FCD_03d91_led_base1__TurnOn
#define FCD_083d1_led_5mm1__TurnOff FCD_03d91_led_base1__TurnOff

/*========================================================================*\
   Use :Mit Chip Adaption Layer
\*========================================================================*/
#include "D:\Program Files (x86)\Flowcode 7\CAL\includes.c"


/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d92_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d92_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :default_target
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d912_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x80, 0x7, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d912_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x80, 0x7, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm8
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d911_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x40, 0x6, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d911_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x40, 0x6, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm7
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d910_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x20, 0x5, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d910_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x20, 0x5, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm6
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d9f_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x10, 0x4, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d9f_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x10, 0x4, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm5
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d9e_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x8, 0x3, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d9e_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x8, 0x3, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm4
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d9d_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x4, 0x2, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d9d_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x4, 0x2, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm3
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d9c_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x2, 0x1, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d9c_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x2, 0x1, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm2
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d9b_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d9b_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_array1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turns on the first N elements of the array - for generating bar graph metes etc.
       :
       :Parameter f??r Makro BarGraph:
       :  Length : How many items to light up.
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__BarGraph(MX_UINT8 FCL_LENGTH)
{
	//Lokale Variablen-Definitionen
	MX_UINT8 FCL_INDEX;


	FCL_INDEX = 0;

	while (FCL_INDEX < 8)
	{

		if (FCL_INDEX >= FCL_LENGTH)
		{

			FCD_0e1e1_led_array1__LEDOff(FCL_INDEX);

		} else {

			FCD_0e1e1_led_array1__LEDOn(FCL_INDEX);

		}

		FCL_INDEX = FCL_INDEX + 1;


	}

}

/*=----------------------------------------------------------------------=*\
   Use :Turn on the selected LED.
       :
       :Parameter f??r Makro LEDOn:
       :  Index : Index of the LED to turn on.
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__LEDOn(MX_UINT8 FCL_INDEX)
{

	switch (FCL_INDEX)
	{
		case 0:
		{
			#if (1) // 8 > 0

				FCP_SET(B, C, 0x1, 0x0, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 1:
		{
			#if (1) // 8 > 1

				FCP_SET(B, C, 0x2, 0x1, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 2:
		{
			#if (1) // 8 > 2

				FCP_SET(B, C, 0x4, 0x2, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 3:
		{
			#if (1) // 8 > 3

				FCP_SET(B, C, 0x8, 0x3, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 4:
		{
			#if (1) // 8 > 4

				FCP_SET(B, C, 0x10, 0x4, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 5:
		{
			#if (1) // 8 > 5

				FCP_SET(B, C, 0x20, 0x5, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 6:
		{
			#if (1) // 8 > 6

				FCP_SET(B, C, 0x40, 0x6, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 7:
		{
			#if (1) // 8 > 7

				FCP_SET(B, C, 0x80, 0x7, 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		default:
		{
		}
	}

}

/*=----------------------------------------------------------------------=*\
   Use :Turns on all elements
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__AllOn()
{
	//Lokale Variablen-Definitionen
	MX_UINT8 FCL_INDEX;


	#if (0) // 0 == 11

	//Code wurde vom Vorprozessor optimiert
	#else

		#if (1) // 1 == 1

			FCP_SET(F, C, 0xff, 0x0, 255);

		#else

		//Code wurde vom Vorprozessor optimiert
		#endif

	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn off the selected led.
       :
       :Parameter f??r Makro LEDOff:
       :  Index : Index of the LED to turn on.
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__LEDOff(MX_UINT8 FCL_INDEX)
{

	switch (FCL_INDEX)
	{
		case 0:
		{
			#if (1) // 8 > 0

				FCP_SET(B, C, 0x1, 0x0, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 1:
		{
			#if (1) // 8 > 1

				FCP_SET(B, C, 0x2, 0x1, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 2:
		{
			#if (1) // 8 > 2

				FCP_SET(B, C, 0x4, 0x2, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 3:
		{
			#if (1) // 8 > 3

				FCP_SET(B, C, 0x8, 0x3, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 4:
		{
			#if (1) // 8 > 4

				FCP_SET(B, C, 0x10, 0x4, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 5:
		{
			#if (1) // 8 > 5

				FCP_SET(B, C, 0x20, 0x5, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 6:
		{
			#if (1) // 8 > 6

				FCP_SET(B, C, 0x40, 0x6, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		case 7:
		{
			#if (1) // 8 > 7

				FCP_SET(B, C, 0x80, 0x7, 1 - 1);

			// #else

			//Code wurde vom Vorprozessor optimiert
			#endif

			break;
		}
		default:
		{
		}
	}

}

/*=----------------------------------------------------------------------=*\
   Use :Turns on the Indexed LED and turns all others off.
       :Does nothing if the index is out of range.
       :
       :Parameter f??r Makro PointGraph:
       :  Index : The LED to show.
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__PointGraph(MX_UINT8 FCL_INDEX)
{
	//Lokale Variablen-Definitionen
	MX_UINT8 FCL_IDX;


	FCL_IDX = 0;

	while (FCL_IDX < 8)
	{

		if (FCL_IDX == FCL_INDEX)
		{

			FCD_0e1e1_led_array1__LEDOn(FCL_IDX);

		} else {

			FCD_0e1e1_led_array1__LEDOff(FCL_IDX);

		}

		FCL_IDX = FCL_IDX + 1;


	}

}

/*=----------------------------------------------------------------------=*\
   Use :Write a number which is presented on the LEDs in binary.
       :
       :Parameter f??r Makro WriteValue:
       :  Value : Provide a value to be written to the LEDs in binary
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__WriteValue(MX_UINT8 FCL_VALUE)
{
	//Lokale Variablen-Definitionen
	MX_UINT8 FCL_COUNT = (0x0);
	MX_SINT16 FCL_TEMPVALUE = (0);
	MX_UINT16 FCL_MASK = (0x0);


	FCL_COUNT = 0;

	while (FCL_COUNT < 8)
	{

		if (FCL_VALUE & (1 << FCL_COUNT))
		{

			FCD_0e1e1_led_array1__LEDOn(FCL_COUNT);

		} else {

			FCD_0e1e1_led_array1__LEDOff(FCL_COUNT);

		}

		FCL_COUNT = FCL_COUNT + 1;


	}

}

/*=----------------------------------------------------------------------=*\
   Use :Turns off all elements
\*=----------------------------------------------------------------------=*/
void FCD_0e1e1_led_array1__AllOff()
{
	//Lokale Variablen-Definitionen
	MX_UINT8 FCL_INDEX;


	#if (0) // 0 == 11

	//Code wurde vom Vorprozessor optimiert
	#else

		#if (1) // 1 == 1

			FCP_SET(F, C, 0xff, 0x0, ~255);

		#else

		//Code wurde vom Vorprozessor optimiert
		#endif

	#endif

}


/*========================================================================*\
   Use :component_label1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :led_base1
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :Turn the LED off.
\*=----------------------------------------------------------------------=*/
void FCD_03d91_led_base1__TurnOn()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}

/*=----------------------------------------------------------------------=*\
   Use :Turn the LED on.
\*=----------------------------------------------------------------------=*/
void FCD_03d91_led_base1__TurnOff()
{

	#if (1)

		FCP_SET(B, C, 0x1, 0x0, 1 - 1);

	// #else

	//Code wurde vom Vorprozessor optimiert
	#endif

}


/*========================================================================*\
   Use :led_5mm1
       :Makro-Implementierungen
\*========================================================================*/

/*========================================================================*\
   Use :panel
       :Makro-Implementierungen
\*========================================================================*/
/*=----------------------------------------------------------------------=*\
   Use :
\*=----------------------------------------------------------------------=*/
void FCM_tmr_service()
{

	// Increment the interrupt counter variable
	// Berechnung:
	//  count = count + 1
	FCV_COUNT = FCV_COUNT + 1;

	// Has 1 second passed?
	// Entscheidung: count = 75?
	if (FCV_COUNT == 75)
	{

		// Reset Interrupt counter
		// Berechnung:
		//  count = 0
		FCV_COUNT = 0;

		// Increment seconds counter
		// Berechnung:
		//  seconds = seconds + 1
		FCV_SECONDS = FCV_SECONDS + 1;

	// } else {

	}

}



/*========================================================================*\
   Use :Main
\*========================================================================*/
void main()
{
ANSELA = 0x00;
ANSELB = 0x00;
ANSELC = 0x00;

OPTION_REG = 0xC0;


	// Initialise count values
	// Berechnung:
	//  count = 0
	//  seconds = 0
	FCV_COUNT = 0;
	FCV_SECONDS = 0;

	// Enable Tmr0 Interrupts
	// Unterbrechung: Aktiviere TMR0
	st_bit(OPTION_REG,T0CS);
	st_bit(OPTION_REG,T0SE);
	OPTION_REG = (OPTION_REG & 0xF0) | 0x07;
	st_bit(INTCON,GIE);
	st_bit(INTCON, T0IE);

	// Loop
	// Schleife: While 1
	while (1)
	{

		// Seconds variable out of range?
		// Entscheidung: seconds >= 60?
		if (FCV_SECONDS >= 60)
		{

			// Update seconds variable
			// Berechnung:
			//  seconds = seconds - 60
			FCV_SECONDS = FCV_SECONDS - 60;

		// } else {

		}

		// Ausgang
		// Ausgang: seconds -> PORTC
		FCP_SET(F, C, 0xFF, 0, (FCV_SECONDS));
		// Optional delay to test accuracy
		// Warten: 2 us
		FCI_DELAYBYTE_US(2);


	}

	mainendloop: goto mainendloop;
}



/*========================================================================*\
   Use :Unterbrechung
\*========================================================================*/
void MX_INTERRUPT_MACRO(void)
{

	//Handler code for [TMR0]
	#ifndef MX_INTHANDLER_INTCON_T0IF
	#define MX_INTHANDLER_INTCON_T0IF
	if (ts_bit(INTCON, T0IF) && ts_bit(INTCON, T0IE))
	{
		FCM_tmr_service();
		cr_bit(INTCON, T0IF);
	}
	#else
	#warning "This interrupt has previously been enabled, so the macro <tmr_service> may never get called."
	#endif


}




