<root>
<build>
<compiler exe="$(fcddir)ARM\batch\F469Disco.bat" params="&quot;$(target)&quot; &quot;$(outdir)&quot; &quot;$(chipalt)&quot; &quot;$(family)&quot; &quot;$(lscript)&quot; &quot;$(clock)&quot; &quot;$(romsize)&quot; &quot;$(ramsize)&quot; &quot;$(compilerstarm)&quot; " />
<linker exe="$(appdir)tools\DoNothing\DoNothing.exe" params="" />
<programmer exe="$(fcddir)ARM\batch\driveprog.bat" params="&quot;$(outdir)&quot; &quot;$(target)&quot; $(devname) &quot;$(compilerstarm)&quot; " />
</build>

<device file = '32F469DiscoveryLCD' 
		name='STM32F469xx'
		namealt='32F469xx'
		product='ARM' compiler='STARM' cal='STARM' 
		family='F4'
		bits='32' >

    <parameters>
        <lscript value = 'stm32f_ccm64.ld' />
		<romsize value = '2048K' />
        <ramsize value = '320K' />
		<devname value = 'DIS_F' />
    </parameters>

    <clock max_speed='26000000' master_divider='1' default='8000000' />
    
    <memory >
        <flash bytes='2097152' />
        <ram bytes='393216' />
    </memory>

    <configuration address='0' mult='1' >
        <format >
            <dword address='RCC_OSC_TYPE' value='1' />
            <dword address='RCC_PLL_SRC' value='2' />
			<dword address='RCC_PLLM' value='8' />
			<dword address='RCC_PLLN' value='360' />
			<dword address='RCC_PLLP' value='2' />
			<dword address='RCC_PLLQ' value='7' />
			<dword address='RCC_PLLR' value='6' />
			<dword address='RCC_SYSCLK_SRC' value='2' />
			<dword address='RCC_AHB_PRE' value='1' />
			<dword address='RCC_APB1_PRE' value='4' />
			<dword address='RCC_APB2_PRE' value='2' />
			<dword address='FLASH_LTNC' value='5' />
			
			<dword address='RCC_PLLSAIN' value='144' />
			<dword address='RCC_PLLSAIP' value='6' />
			<dword address='RCC_PLLSAIQ' value='2' />
			<dword address='RCC_PLLSAIR' value='2' />
        </format>
        <setting />
        <settings >
            <setting name='Osc select (HSI, HSE, EXT)' offset='0' mask='3' bits='2' hint='Osc select (HSI, HSE, EXT)' >
				<option name='HSI' value='0' />
                <option name='HSE' value='1' />
				<option name='EXT' value='3' />
            </setting>
            <setting name='PLL Source (OFF, HSI, HSE)' offset='32' mask='3' bits='2' hint='PLL Source (OFF, HSI, HSE)' >
				<option name='OFF' value='0' />
                <option name='HSI' value='1' />
				<option name='HSE/EXT' value='2' />
            </setting>

            <setting name='PLLM (PLL source divider)' offset='64' mask='0x3F' bits='6' hint='PLLM (PLL source divider)' >
				<option name='/2' value='2' />
				<option name='/3' value='3' />
				<option name='/4' value='4' />
				<option name='/5' value='5' />
				<option name='/6' value='6' />
				<option name='/7' value='7' />
				<option name='/8' value='8' />
				<option name='/9' value='9' />
				<option name='/10' value='10' />
				<option name='/11' value='11' />
				<option name='/12' value='12' />
				<option name='/13' value='13' />
				<option name='/14' value='14' />
				<option name='/15' value='15' />
				<option name='/16' value='16' />
				<option name='/17' value='17' />
				<option name='/18' value='18' />
				<option name='/19' value='19' />
				<option name='/20' value='20' />
				<option name='/21' value='21' />
				<option name='/22' value='22' />
				<option name='/23' value='23' />
				<option name='/24' value='24' />
				<option name='/25' value='25' />
				<option name='/26' value='26' />
			</setting>
            <setting name='PLLN (Main PLL multiplier)' offset='96' mask='0x01FF' bits='9' hint='PLLN (Main PLL multiplier)' >
				<option name='x100' value='100' />
				<option name='x180' value='180' />
				<option name='x192' value='192' />
				<option name='x200' value='200' />
				<option name='x240' value='240' />
				<option name='x300' value='300' />
				<option name='x336' value='336' />
				<option name='x384' value='384' />
				<option name='x400' value='400' />
				<option name='x432' value='432' />
			</setting>
            <setting name='PLLP (Main PLL divisor for main system clock)' offset='128' mask='0x0F' bits='4' hint='PLLP (Main PLL divisor for main system clock)' >
				<option name='/2' value='2' />
				<option name='/4' value='4' />
				<option name='/6' value='6' />
				<option name='/8' value='8' />
			</setting>
            <setting name='PLLQ (Main PLL divisor for USB, SDIO)' offset='160' mask='0x0F' bits='4' hint='PLLQ (Main PLL divisor for USB, SDIO)' >
				<option name='/2' value='2' />
				<option name='/3' value='3' />
				<option name='/4' value='4' />
				<option name='/5' value='5' />
				<option name='/6' value='6' />
				<option name='/7' value='7' />
				<option name='/8' value='8' />
				<option name='/9' value='9' />
				<option name='/10' value='10' />
				<option name='/11' value='11' />
				<option name='/12' value='12' />
				<option name='/13' value='13' />
				<option name='/14' value='14' />
				<option name='/15' value='15' />
			</setting>
            <setting name='PLLR (Main PLL division factor for special feature clocks)' offset='192' mask='0x0F' bits='4' hint='PLLR (Main PLL division factor for special feature clocks)' >
				<option name='/2' value='2' />
				<option name='/3' value='3' />
				<option name='/4' value='4' />
				<option name='/5' value='5' />
				<option name='/6' value='6' />
				<option name='/7' value='7' />
				<option name='/8' value='8' />
				<option name='/9' value='9' />
				<option name='/10' value='10' />
				<option name='/11' value='11' />
				<option name='/12' value='12' />
				<option name='/13' value='13' />
				<option name='/14' value='14' />
				<option name='/15' value='15' />
			</setting>
            <setting name='System clock selector (HSI, HSE, PLL)' offset='224' mask='3' bits='2' hint='System clock selector (HSI, HSE, PLL)' >
				<option name='HSI internal oscillator selected as system clock' value='0' />
				<option name='HSE external oscillator selected as system clock' value='1' />
				<option name='PLL selected as system clock' value='2' />
			</setting>
			<setting name='HPRE (AHB prescaler)' offset='256' mask='0x03FF' bits='8' hint='HPRE (AHB prescaler)' >
				<option name='System clock not divided (/1)' value='1' />
				<option name='System clock divided by 2' value='2' />
				<option name='System clock divided by 4' value='4' />
				<option name='System clock divided by 8' value='8' />
				<option name='System clock divided by 16' value='16' />
				<option name='System clock divided by 64' value='64' />
				<option name='System clock divided by 128' value='128' />
				<option name='System clock divided by 256' value='256' />
				<option name='System clock divided by 512' value='512' />
			</setting>	
			<setting name='PPRE1 (APB1 Low speed prescaler)' offset='288' mask='0x00ff' bits='16' hint='PPRE1 (APB1 Low speed prescaler)' >
				<option name='ABH clock not divided (/1)' value='1' />
				<option name='ABH clock divided by 2' value='2' />
				<option name='ABH clock divided by 4' value='4' />
				<option name='ABH clock divided by 8' value='8' />
				<option name='ABH clock divided by 16' value='16' />
			</setting>	
			<setting name='PPRE2 (APB2 High speed prescaler)' offset='320' mask='0x00ff' bits='16' hint='PPRE2 (APB2 High speed prescaler)' >
				<option name='ABH clock not divided (/1)' value='1' />
				<option name='ABH clock divided by 2' value='2' />
				<option name='ABH clock divided by 4' value='4' />
				<option name='ABH clock divided by 8' value='8' />
				<option name='ABH clock divided by 16' value='16' />
			</setting>		
			<setting name='LATENCY (Flash Latency)' offset='352' mask='7' bits='3' hint='LATENCY (Flash Latency)' >
				<option name='Zero wait states' value='0' />
				<option name='1 wait state' value='1' />
				<option name='2 wait states' value='2' />
				<option name='3 wait states' value='3' />
				<option name='4 wait states' value='4' />
				<option name='5 wait states' value='5' />
				<option name='6 wait states' value='6' />
				<option name='7 wait states' value='7' />
			</setting>			

            <setting name='PLLSAIN (PLLSAI multiplier)' offset='384' mask='0x01FF' bits='9' hint='PLLSAIN' >
				<option name='x100' value='100' />
				<option name='x144' value='144' />
				<option name='x180' value='180' />
				<option name='x192' value='192' />
				<option name='x200' value='200' />
				<option name='x240' value='240' />
				<option name='x300' value='300' />
				<option name='x336' value='336' />
				<option name='x384' value='384' />
				<option name='x400' value='400' />
				<option name='x432' value='432' />
			</setting>
            <setting name='PLLSAIP (PLLSAI divisor for PLLSAIP)' offset='416' mask='0x0F' bits='4' hint='PLLSAIP' >
				<option name='/2' value='2' />
				<option name='/4' value='4' />
				<option name='/6' value='6' />
				<option name='/8' value='8' />
			</setting>
            <setting name='PLLSAIQ (PLLSAI divisor for PLLSAIQ)' offset='448' mask='0x0F' bits='4' hint='PLLSAIQ' >
				<option name='/2' value='2' />
				<option name='/3' value='3' />
				<option name='/4' value='4' />
				<option name='/5' value='5' />
				<option name='/6' value='6' />
				<option name='/7' value='7' />
				<option name='/8' value='8' />
				<option name='/9' value='9' />
				<option name='/10' value='10' />
				<option name='/11' value='11' />
				<option name='/12' value='12' />
				<option name='/13' value='13' />
				<option name='/14' value='14' />
				<option name='/15' value='15' />
			</setting>
            <setting name='PLLSAIR (PLLSAI divisor for PLLSAIR LCD clocks)' offset='480' mask='0x0F' bits='4' hint='PLLSAIR' >
				<option name='/2' value='2' />
				<option name='/3' value='3' />
				<option name='/4' value='4' />
				<option name='/5' value='5' />
				<option name='/6' value='6' />
				<option name='/7' value='7' />
				<option name='/8' value='8' />
				<option name='/9' value='9' />
				<option name='/10' value='10' />
				<option name='/11' value='11' />
				<option name='/12' value='12' />
				<option name='/13' value='13' />
				<option name='/14' value='14' />
				<option name='/15' value='15' />
			</setting>
			
        </settings>
    </configuration>

    <pins sides='2' smd='0' >
    	<pin name='uSD_DO (PC8)' port='2' bit='8' />
		<pin name='uSD_CLK (PC12)' port='2' bit='12' />
		<pin name='uSD_DI (PD2)' port='3' bit='2' />
		<pin name='uSD_CS (PC11)' port='2' bit='11' />
		<pin name='uSD_Det (PG2)' port='6' bit='2' />
		<pin name='IOREF' />
		<pin name='NRST' />
		<pin name='3V3' />
		<pin name='5V0' />
		<pin name='GND' />
		<pin name='GND' />
		<pin name='VIN' />
    	<pin name='A0 (PB0)' port='1' bit='1' adc='9'  />
    	<pin name='A1 (PC2)' port='2' bit='2' adc='12'  />
    	<pin name='A2 (PC3)' port='2' bit='3' adc='13' />
    	<pin name='A3 (PC4)' port='2' bit='4' adc='14' />
    	<pin name='A4 (PC5)' port='2' bit='5' adc='15' />
    	<pin name='A5 (PA4)' port='0' bit='4' adc='4' />
		<pin name='BL (PA3)' port='0' bit='3'  />
		<pin name='LED1 (GN)' port='6' bit='6' />
		<pin name='LED2 (OR)' port='3' bit='4' />
		<pin name='LED3 (RD)' port='3' bit='5' />
		<pin name='LED4 (BU)' port='10' bit='3' />
		<pin name='LEDs' />
    	<pin name='D0 (PG9)' port='6' bit='9' />
    	<pin name='D1 (PG14)' port='6' bit='14' />
    	<pin name='D2 (PG13)' port='6' bit='13' />
    	<pin name='D3 (PA1)' port='0' bit='1' />
    	<pin name='D4 (PG12)' port='6' bit='12' />
    	<pin name='D5 (PA2)' port='0' bit='2' />
    	<pin name='D6 (PA6)' port='0' bit='6' />
    	<pin name='D7 (PG11)' port='6' bit='11' />
    	<pin name='D8 (PG10)' port='6' bit='10' />
    	<pin name='D9 (PA7)' port='0' bit='7' />
    	<pin name='D10 (PH6)' port='7' bit='6' />
    	<pin name='D11 (PB15)' port='1' bit='15' />
    	<pin name='D12 (PB14)' port='1' bit='14' />
    	<pin name='D13 (PD3)' port='3' bit='3' />
    	<pin name='GND' />
    	<pin name='AVDD' />
    	<pin name='D14 (PB9)' port='1' bit='9' />
    	<pin name='D15 (PB8)' port='1' bit='8' />
    </pins>

    <pwm regset='1' remappable='2' >
    	<timer>
			<option name='Fixed' value='1' count='8' />
    	</timer>
        <prescaler >
			<option name="1" value="1" />
			<option name="4" value="4" />
			<option name="16" value="16" />
			<option name="64" value="64" />
			<option name="256" value="256" />
			<option name="1024" value="1024" />
        </prescaler>
        <out name='TIM2_CH2' af0='1' port0='0' pin0='1' />
		<out name='TIM2_CH3' af0='1' port0='0' pin0='2' />
		<out name='TIM3_CH1' af0='2' port0='0' pin0='6' />
		<out name='TIM3_CH2' af0='2' port0='0' pin0='7' />
		<out name='TIM3_CH4' af0='2' port0='1' pin0='1' />

		<out name='TIM4_CH3' af0='2' port0='1' pin0='8' />
		<out name='TIM4_CH4' af0='2' port0='1' pin0='9' />

		<out name='TIM5_CH2' af0='2' port0='0' pin0='1' />
		<out name='TIM2_CH3' af0='2' port0='0' pin0='2' />

		<out name='TIM10_CH1' af0='3' port0='1' pin0='8' />
		<out name='TIM11_CH1' af0='3' port0='1' pin0='9' />
		
		<out name='TIM12_CH1' af0='9' port0='1' pin0='15' af1='9' port1='7' pin1='6' />
		<out name='TIM12_CH2' af0='9' port0='1' pin0='14' />

		<out name='TIM13_CH1' af0='9' port0='0' pin0='6' />
		<out name='TIM14_CH1' af0='9' port0='0' pin0='7' />

    </pwm>

    <adc type='1' bits='12' >
        <speed >
			<option name='PCLK/2' value='2' />
            <option name='PCLK/4' value='4' />
			<option name='PCLK/6' value='6' />
            <option name='PCLK/8' value='8' />
        </speed>
    </adc>

    <dac type='1' bits='12' >
        <vref>
            <option name='VDD' value='0' />
        </vref>
        <out port='0' pin='4' />
        <out port='0' pin='5' />
    </dac>
	
    <uart remappable='2' name='USART3' >
        <tx af0='7' port0='1' pin0='10' />
        <rx af0='7' port0='1' pin0='11' />
    </uart>
    
    <uart remappable='2' name='USART6' >
        <tx af0='8' port0='2' pin0='6' af1='8' port1='6' pin1='14' />
        <rx af0='8' port0='2' pin0='7' af1='8' port1='6' pin1='9' />
    </uart>

    <spi remappable='3' name='SPI2' >
        <clk  af0='5' port0='3' pin0='3' />
        <miso af0='5' port0='1' pin0='14' af1='5' port1='2' pin1='2' />
        <mosi af0='5' port0='1' pin0='15' af1='5' port1='2' pin1='3' />
    </spi>

    <spi remappable='3' name='SPI6' >
        <clk  af0='5' port0='6' pin0='13' />
        <miso af0='5' port0='6' pin0='12' />
        <mosi af0='5' port0='6' pin0='14' />
    </spi>
	
    <i2c remappable='2' master='1' >
        <scl af0='4' port0='1' pin0='6' af1='4' port1='1' pin1='8' />
        <sda af0='4' port0='1' pin0='7' af1='4' port1='1' pin1='9' />
    </i2c>

    <i2c remappable='2' master='1' >
        <scl af0='4' port0='1' pin0='10'  />
        <sda af0='4' port0='1' pin0='11'  />
    </i2c>
	
	<rtcc type='1'>
    	<clock>
    	    <option name='32 kHz internal RC (LSI RC)' value='0' />
    	    <option name='32.768 kHz external crystal (LSE crystal)' value='1' />
    	</clock>
    </rtcc>
    
    <interrupts >
		<interrupt ident='TMR2' reg='TMR2' type='timer16' name='Timer 2'
			handler='#ifndef MX_ISR_T2\n#define MX_ISR_T2\nvoid TIM2_IRQHandler(void)\n{\n\tHAL_TIM_IRQHandler( &amp;(MX_HANDLE_TIM2));\n}\n\nvoid MX_ISR_TIM2()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='MX_HANDLE_TIM2.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;\nMX_HANDLE_TIM2.Init.CounterMode=TIM_COUNTERMODE_UP;\nMX_HANDLE_TIM2.Init.RepetitionCounter=0;\n__HAL_RCC_TIM2_CLK_ENABLE();\nHAL_NVIC_SetPriority(TIM2_IRQn, 3, 0);\nHAL_NVIC_EnableIRQ(TIM2_IRQn);\nHAL_TIM_Base_Init( &amp;(MX_HANDLE_TIM2));\nHAL_TIM_Base_Start_IT( &amp;(MX_HANDLE_TIM2));\n'
			disable='HAL_NVIC_DisableIRQ(TIM2_IRQn);\n'
			global='\nTIM_HandleTypeDef MX_HANDLE_TIM2;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='MX_HANDLE_TIM2.Init.Prescaler = 1;\n' />
                    <entry name='1:4' value='MX_HANDLE_TIM2.Init.Prescaler = 4;\n' />
					<entry name='1:16' value='MX_HANDLE_TIM2.Init.Prescaler = 16;\n' />
                    <entry name='1:64' value='MX_HANDLE_TIM2.Init.Prescaler = 64;\n' />
                    <entry name='1:256' value='MX_HANDLE_TIM2.Init.Prescaler = 256;\n' />
					<entry name='1:1024' value='MX_HANDLE_TIM2.Init.Prescaler = 1024;\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='MX_HANDLE_TIM2.Instance=TIM2;\nMX_HANDLE_TIM2.Init.Period=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>		
		<interrupt ident='TMR3' reg='TMR3' type='timer16' name='Timer 3'
			handler='#ifndef MX_ISR_T3\n#define MX_ISR_T3\nvoid TIM3_IRQHandler(void)\n{\n\tHAL_TIM_IRQHandler( &amp;(MX_HANDLE_TIM3));\n}\n\nvoid MX_ISR_TIM3()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='MX_HANDLE_TIM3.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;\nMX_HANDLE_TIM3.Init.CounterMode=TIM_COUNTERMODE_UP;\nMX_HANDLE_TIM3.Init.RepetitionCounter=0;\n__HAL_RCC_TIM3_CLK_ENABLE();\nHAL_NVIC_SetPriority(TIM3_IRQn, 3, 0);\nHAL_NVIC_EnableIRQ(TIM3_IRQn);\nHAL_TIM_Base_Init( &amp;(MX_HANDLE_TIM3));\nHAL_TIM_Base_Start_IT( &amp;(MX_HANDLE_TIM3));\n'
			disable='HAL_NVIC_DisableIRQ(TIM3_IRQn);\n'
			global='\nTIM_HandleTypeDef MX_HANDLE_TIM3;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='MX_HANDLE_TIM3.Init.Prescaler = 1;\n' />
                    <entry name='1:4' value='MX_HANDLE_TIM3.Init.Prescaler = 4;\n' />
					<entry name='1:16' value='MX_HANDLE_TIM3.Init.Prescaler = 16;\n' />
                    <entry name='1:64' value='MX_HANDLE_TIM3.Init.Prescaler = 64;\n' />
                    <entry name='1:256' value='MX_HANDLE_TIM3.Init.Prescaler = 256;\n' />
					<entry name='1:1024' value='MX_HANDLE_TIM3.Init.Prescaler = 1024;\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='MX_HANDLE_TIM3.Instance=TIM3;\nMX_HANDLE_TIM3.Init.Period=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>		
		<interrupt ident='TMR4' reg='TMR4' type='timer16' name='Timer 4'
			handler='#ifndef MX_ISR_T4\n#define MX_ISR_T4\nvoid TIM4_IRQHandler(void)\n{\n\tHAL_TIM_IRQHandler( &amp;(MX_HANDLE_TIM4));\n}\n\nvoid MX_ISR_TIM4()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='MX_HANDLE_TIM4.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;\nMX_HANDLE_TIM4.Init.CounterMode=TIM_COUNTERMODE_UP;\nMX_HANDLE_TIM4.Init.RepetitionCounter=0;\n__HAL_RCC_TIM4_CLK_ENABLE();\nHAL_NVIC_SetPriority(TIM4_IRQn, 3, 0);\nHAL_NVIC_EnableIRQ(TIM4_IRQn);\nHAL_TIM_Base_Init( &amp;(MX_HANDLE_TIM4));\nHAL_TIM_Base_Start_IT( &amp;(MX_HANDLE_TIM4));\n'
			disable='HAL_NVIC_DisableIRQ(TIM4_IRQn);\n'
			global='\nTIM_HandleTypeDef MX_HANDLE_TIM4;\n' >
			<timer overflow='65536' extrange='0' />
            <options >
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='MX_HANDLE_TIM4.Init.Prescaler = 1;\n' />
                    <entry name='1:4' value='MX_HANDLE_TIM4.Init.Prescaler = 4;\n' />
					<entry name='1:16' value='MX_HANDLE_TIM4.Init.Prescaler = 16;\n' />
                    <entry name='1:64' value='MX_HANDLE_TIM4.Init.Prescaler = 64;\n' />
                    <entry name='1:256' value='MX_HANDLE_TIM4.Init.Prescaler = 256;\n' />
					<entry name='1:1024' value='MX_HANDLE_TIM4.Init.Prescaler = 1024;\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='MX_HANDLE_TIM4.Instance=TIM4;\nMX_HANDLE_TIM4.Init.Period=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>		
		<interrupt ident='TMR5' reg='TMR5' type='timer16' name='Timer 5'
			handler='#ifndef MX_ISR_T5\n#define MX_ISR_T5\nvoid TIM5_IRQHandler(void)\n{\n\tHAL_TIM_IRQHandler( &amp;(MX_HANDLE_TIM5));\n}\n\nvoid MX_ISR_TIM5()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='MX_HANDLE_TIM5.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;\nMX_HANDLE_TIM5.Init.CounterMode=TIM_COUNTERMODE_UP;\nMX_HANDLE_TIM5.Init.RepetitionCounter=0;\n__HAL_RCC_TIM5_CLK_ENABLE();\nHAL_NVIC_SetPriority(TIM5_IRQn, 3, 0);\nHAL_NVIC_EnableIRQ(TIM5_IRQn);\nHAL_TIM_Base_Init( &amp;(MX_HANDLE_TIM5));\nHAL_TIM_Base_Start_IT( &amp;(MX_HANDLE_TIM5));\n'
			disable='HAL_NVIC_DisableIRQ(TIM5_IRQn);\n'
			global='\nTIM_HandleTypeDef MX_HANDLE_TIM5;\n' >
			<timer overflow='65536' extrange='0' />
            <options >
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='MX_HANDLE_TIM5.Init.Prescaler = 1;\n' />
                    <entry name='1:4' value='MX_HANDLE_TIM5.Init.Prescaler = 4;\n' />
					<entry name='1:16' value='MX_HANDLE_TIM5.Init.Prescaler = 16;\n' />
                    <entry name='1:64' value='MX_HANDLE_TIM5.Init.Prescaler = 64;\n' />
                    <entry name='1:256' value='MX_HANDLE_TIM5.Init.Prescaler = 256;\n' />
					<entry name='1:1024' value='MX_HANDLE_TIM5.Init.Prescaler = 1024;\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='MX_HANDLE_TIM5.Instance=TIM5;\nMX_HANDLE_TIM5.Init.Period=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
		<interrupt ident='TMR7' reg='TMR7' type='timer16' name='Timer 7'
			handler='#ifndef MX_ISR_T7\n#define MX_ISR_T7\nvoid TIM7_IRQHandler(void)\n{\n\tHAL_TIM_IRQHandler( &amp;(MX_HANDLE_TIM7));\n}\n\nvoid MX_ISR_TIM7()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='MX_HANDLE_TIM7.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;\nMX_HANDLE_TIM7.Init.CounterMode=TIM_COUNTERMODE_UP;\nMX_HANDLE_TIM7.Init.RepetitionCounter=0;\n__HAL_RCC_TIM7_CLK_ENABLE();\nHAL_NVIC_SetPriority(TIM7_IRQn, 3, 0);\nHAL_NVIC_EnableIRQ(TIM7_IRQn);\nHAL_TIM_Base_Init( &amp;(MX_HANDLE_TIM7));\nHAL_TIM_Base_Start_IT( &amp;(MX_HANDLE_TIM7));\n'
			disable='HAL_NVIC_DisableIRQ(TIM7_IRQn);\n'
			global='\nTIM_HandleTypeDef MX_HANDLE_TIM7;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='MX_HANDLE_TIM7.Init.Prescaler = 1;\n' />
                    <entry name='1:4' value='MX_HANDLE_TIM7.Init.Prescaler = 4;\n' />
					<entry name='1:16' value='MX_HANDLE_TIM7.Init.Prescaler = 16;\n' />
                    <entry name='1:64' value='MX_HANDLE_TIM7.Init.Prescaler = 64;\n' />
                    <entry name='1:256' value='MX_HANDLE_TIM7.Init.Prescaler = 256;\n' />
					<entry name='1:1024' value='MX_HANDLE_TIM7.Init.Prescaler = 1024;\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='MX_HANDLE_TIM7.Instance=TIM7;\nMX_HANDLE_TIM7.Init.Period=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='EXTI0' type='pin' name='EXTI0' handler='#ifndef MX_ISR_INT0\n#define MX_ISR_INT0\nvoid EXTI0_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);\n}\n\nvoid MX_ISR_EXTI0()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI0_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI0_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI0_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOA' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_0;\nHAL_GPIO_Init(GPIOA, &amp;hMX_GPIO_EXTIn);\n' />
				</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI1' type='pin' name='EXTI1' handler='#ifndef MX_ISR_INT1\n#define MX_ISR_INT1\nvoid EXTI1_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1);\n}\n\nvoid MX_ISR_EXTI1()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI1_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI1_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI1_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOA' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_1;\nHAL_GPIO_Init(GPIOA, &amp;hMX_GPIO_EXTIn);\n' />
					<entry name='GPIOB' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_1;\nHAL_GPIO_Init(GPIOB, &amp;hMX_GPIO_EXTIn);\n' />
				</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI2' type='pin' name='EXTI2' handler='#ifndef MX_ISR_INT2\n#define MX_ISR_INT2\nvoid EXTI2_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_2);\n}\n\nvoid MX_ISR_EXTI2()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI2_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI2_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI2_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOA' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_2;\nHAL_GPIO_Init(GPIOA, &amp;hMX_GPIO_EXTIn);\n' />
					<entry name='GPIOC' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_2;\nHAL_GPIO_Init(GPIOC, &amp;hMX_GPIO_EXTIn);\n' />
				</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI3' type='pin' name='EXTI3' handler='#ifndef MX_ISR_INT3\n#define MX_ISR_INT3\nvoid EXTI3_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_3);\n}\n\nvoid MX_ISR_EXTI3()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI3_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI3_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI3_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOC' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_3;\nHAL_GPIO_Init(GPIOC, &amp;hMX_GPIO_EXTIn);\n' />
					<entry name='GPIOD' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_3;\nHAL_GPIO_Init(GPIOD, &amp;hMX_GPIO_EXTIn);\n' />
				</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI4' type='pin' name='EXTI4' handler='#ifndef MX_ISR_INT4\n#define MX_ISR_INT4\nvoid EXTI4_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_4);\n}\n\nvoid MX_ISR_EXTI4()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI4_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI4_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI4_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOA' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_4;\nHAL_GPIO_Init(GPIOA, &amp;hMX_GPIO_EXTIn);\n' />
					<entry name='GPIOC' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_4;\nHAL_GPIO_Init(GPIOC, &amp;hMX_GPIO_EXTIn);\n' />
				</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI6' type='pin' name='EXTI6' handler='#ifndef MX_ISR_INT6\n#define MX_ISR_INT6\nvoid EXTI9_5_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_6);\n}\n\nvoid MX_ISR_EXTI6()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI9_5_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI9_5_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI9_5_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOA' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_6;\nHAL_GPIO_Init(GPIOA, &amp;hMX_GPIO_EXTIn);\n' />
					<entry name='GPIOH' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_6;\nHAL_GPIO_Init(GPIOH, &amp;hMX_GPIO_EXTIn);\n' />
					</port>
            </options>
        </interrupt>
        <interrupt ident='EXTI11' type='pin' name='EXTI11' handler='#ifndef MX_ISR_INT11\n#define MX_ISR_INT11\nvoid EXTI15_10_IRQHandler(void)\n{\n\tHAL_GPIO_EXTI_IRQHandler(GPIO_PIN_11);\n}\n\nvoid MX_ISR_EXTI11()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='HAL_NVIC_SetPriority(EXTI15_10_IRQn, 2, 0);\nHAL_NVIC_EnableIRQ(EXTI15_10_IRQn);' disable='HAL_NVIC_DisableIRQ(EXTI15_10_IRQn);' >
			<options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING;\n' />
                    <entry name='Falling edge of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_FALLING;\n' />
					<entry name='Both edges of INT' value='hMX_GPIO_EXTIn.Mode = GPIO_MODE_IT_RISING_FALLING;\n' />
                </edge>
				<edge name='Input Weak Bias' >
                    <entry name='No bias' value='hMX_GPIO_EXTIn.Pull = GPIO_NOPULL;\n' />
                    <entry name='Pull up' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLUP;\n' />
					<entry name='Pull down' value='hMX_GPIO_EXTIn.Pull = GPIO_PULLDOWN;\n' />
                </edge>
				<port name='Port' >
					<entry name='GPIOI' value='hMX_GPIO_EXTIn.Pin = GPIO_PIN_11;\nHAL_GPIO_Init(GPIOI, &amp;hMX_GPIO_EXTIn);\n' />
				</port>       
            </options>
        </interrupt>
		<interrupt ident='RXINT3' type='comms' name='UART RXINT 3'
			handler='#ifndef MX_ISR_RX3\n#define MX_ISR_RX3\nvoid USART3_IRQHandler(void)\n{\n\tHAL_UART_IRQHandler( &amp;(MX_HANDLE_UART3));\n\tHAL_UART_Receive_IT( &amp;(MX_HANDLE_UART3), (uint8_t *) &amp;(MX_HANDLE_UART3_RX_VAL), 1);\n}\n\nvoid MX_ISR_UART3()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='HAL_NVIC_SetPriority(USART3_IRQn, 0, 1);\nHAL_NVIC_EnableIRQ(USART3_IRQn);\nMX_HANDLE_UART3_IRQ_EN = 1;\nHAL_UART_Receive_IT( &amp;(MX_HANDLE_UART3), (uint8_t *) &amp;(MX_HANDLE_UART3_RX_VAL), 1);\n'
			disable='HAL_NVIC_DisableIRQ(USART3_IRQn);\nMX_HANDLE_UART3_IRQ_EN = 0;\n'
			global = 'UART_HandleTypeDef MX_HANDLE_UART3;\nMX_UINT16 MX_HANDLE_UART3_RX_VAL, MX_HANDLE_UART3_IRQ_EN;\n' />
		<interrupt ident='RXINT6' type='comms' name='UART RXINT 6'
			handler='#ifndef MX_ISR_RX6\n#define MX_ISR_RX6\nvoid USART6_IRQHandler(void)\n{\n\tHAL_UART_IRQHandler( &amp;(MX_HANDLE_UART6));\n\tHAL_UART_Receive_IT( &amp;(MX_HANDLE_UART6), (uint8_t *) &amp;(MX_HANDLE_UART6_RX_VAL), 1);\n}\n\nvoid MX_ISR_UART6()\n{\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='HAL_NVIC_SetPriority(USART6_IRQn, 0, 1);\nHAL_NVIC_EnableIRQ(USART6_IRQn);\nMX_HANDLE_UART6_IRQ_EN = 1;\nHAL_UART_Receive_IT( &amp;(MX_HANDLE_UART6), (uint8_t *) &amp;(MX_HANDLE_UART6_RX_VAL), 1);\n'
			disable='HAL_NVIC_DisableIRQ(USART6_IRQn);\nMX_HANDLE_UART6_IRQ_EN = 0;\n'
			global = 'UART_HandleTypeDef MX_HANDLE_UART6;\nMX_UINT16 MX_HANDLE_UART6_RX_VAL, MX_HANDLE_UART6_IRQ_EN;\n' />
		<interrupt ident='LCD' type='display' name='DISPLAY UPDATE'
			handler='#ifndef MX_ISR_LTDC\n#define MX_ISR_LTDC\n\nvoid LTDC_IRQHandler(void)\n{\n\tBSP_LCD_LTDC_IRQHandler();\n}\n\nvoid HAL_LTDC_LineEventCallback(LTDC_HandleTypeDef *hltdc)\n{\n\tFCM_%n();\n\tHAL_LTDC_ProgramLineEvent(hltdc, 504);\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n'
			enable='HAL_NVIC_SetPriority(LTDC_IRQn, 0x3, 0);\nHAL_NVIC_EnableIRQ(LTDC_IRQn);\nMX_HANDLE_LTDC.Instance = LTDC;\nHAL_LTDC_ProgramLineEvent( &amp;(MX_HANDLE_LTDC), 504);\n'
			disable='HAL_NVIC_DisableIRQ(LTDC_IRQn);\n'
			global='\nLTDC_HandleTypeDef MX_HANDLE_LTDC;\n' />
		</interrupts>
    
</device>
<inline >
    <defines code='\n#define MX_DISCO_GLCD\n#define MX_CAL_STARM\n#define CLK_OVRDRV\n#include "F469Discovery.h"\n' />
    <directives code='' />
    <main >
        <start code='
int main()
{
	RCC_PLLSAIInitTypeDef RCC_PLLSAIInitStruct;
	RCC_PLLSAIInitStruct.PLLSAIN = RCC_PLLSAIN;
	RCC_PLLSAIInitStruct.PLLSAIP = RCC_PLLSAIP;
	RCC_PLLSAIInitStruct.PLLSAIQ = RCC_PLLSAIQ;
	RCC_PLLSAIInitStruct.PLLSAIR = RCC_PLLSAIR;
	
	HAL_Init();

	SystemClocksSetup();
	HAL_RCCEx_EnablePLLSAI(&amp; RCC_PLLSAIInitStruct);

	// Enable ports ABCDEFGHIJK
	__HAL_RCC_GPIOA_CLK_ENABLE();
	__HAL_RCC_GPIOB_CLK_ENABLE();
	__HAL_RCC_GPIOC_CLK_ENABLE();
	__HAL_RCC_GPIOD_CLK_ENABLE();
	__HAL_RCC_GPIOE_CLK_ENABLE();
	__HAL_RCC_GPIOF_CLK_ENABLE();
	__HAL_RCC_GPIOG_CLK_ENABLE();
	__HAL_RCC_GPIOH_CLK_ENABLE();
	__HAL_RCC_GPIOI_CLK_ENABLE();
	__HAL_RCC_GPIOJ_CLK_ENABLE();
	__HAL_RCC_GPIOK_CLK_ENABLE();
' />
        <end code='\tmainendloop: goto mainendloop;\n\treturn 0;\n}\n\n' />
        <init code='' />
    </main>
    <interrupt >
        <enable code='' />
        <start code='' />
        <end code='' />
        <init code='' />
    </interrupt>
    <config >
        <start code='//Configuration Start\n' />
        <body code='#define $(address) ($(value))\n' />
        <end code='//Configuration End\n\n' />
    </config>
</inline>
<test >
    <icd >
        <clock port0='1' pin0='1' />
        <data port0='1' pin0='0' />
    </icd>
</test>
</root>