<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<IP DBVersion="V4.0" IPType="service" Name="TIM6_7F0" Version="gptimer2_v2_x_Cube"
    xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Modes.xsd"
    xmlns="http://mcd.rou.st.com/modules.php?name=mcu">
    <About>TIM: Timer</About>
    <Semaphore>$IpInstance</Semaphore>
    <!-- Generic RefParameters for TIM Modes -->
    <RefParameter Name="Instance" DefaultValue="TIM$Index" Comment="Instance" Type="" Visible="false"/>
<!--____________________________________________________________________-->
<!--Parametres pour la structure TIM_Base_InitTypeDef -->
    <RefParameter Name="Prescaler" Comment="Prescaler (PSC - 16 bits value)" DefaultValue="0" Max="65535" Min="0" Type="integer" Group="Counter Settings">
    </RefParameter>
<!-- CounterMode TIMER INSTANCE DEPENDENT-->
<!-- TIM2 and TIM5 are 32bits wide -->
    <RefParameter Name="CounterMode" Comment="Counter Mode" DefaultValue="TIM_COUNTERMODE_UP" Type="list" Group="Counter Settings">
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
        <PossibleValue Value="TIM_COUNTERMODE_UP" Comment="Up" />
        <PossibleValue Value="TIM_COUNTERMODE_DOWN" Comment="Down" />
        <PossibleValue Value="TIM_COUNTERMODE_CENTERALIGNED1" Comment="Center Aligned mode1"/>
        <PossibleValue Value="TIM_COUNTERMODE_CENTERALIGNED2" Comment="Center Aligned mode2"/>
        <PossibleValue Value="TIM_COUNTERMODE_CENTERALIGNED3" Comment="Center Aligned mode3"/>
    </RefParameter>
    <RefParameter Name="CounterMode" Comment="Counter Mode" DefaultValue="TIM_COUNTERMODE_UP" Type="list" Group="Counter Settings">
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
        <PossibleValue Value="TIM_COUNTERMODE_UP" Comment="Up" />
    </RefParameter>
<!-- Period (ARR) TIMER INSTANCE DEPENDENT-->
<!-- TIM2 and TIM5 are 32bits wide -->
    <RefParameter Name="Period" Comment="Counter Period (AutoReload Register - 16 bits value )" DefaultValue="65535" Max="65535" Min="0" Type="integer" Group="Counter Settings">
        <Condition Diagnostic="" Expression="!(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Period" Comment="Counter Period (AutoReload Register - 32 bits value )" DefaultValue="4294967295" Max="4294967295" Min="0" Type="integer" Group="Counter Settings">
        <Condition Diagnostic="" Expression="($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24)"/>
    </RefParameter>
<!-- ___________________________________________-->
<!-- ClockDivision TIMER INSTANCE DEPENDENT -->
<!-- ne doit PAS etre parametre que pour TIM6 ou TIM7-->
    <RefParameter Name="ClockDivision" Comment="Internal Clock Division (CKD)" DefaultValue="TIM_CLOCKDIVISION_DIV1" Type="list" Group="Counter Settings" >
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18))"/>
            <PossibleValue Value="TIM_CLOCKDIVISION_DIV1" Comment="No Division" />
            <PossibleValue Value="TIM_CLOCKDIVISION_DIV2" Comment="Division by 2"/>
            <PossibleValue Value="TIM_CLOCKDIVISION_DIV4" Comment="Division by 4"/>
    </RefParameter>
    <RefParameter Name="ClockDivision" Comment="Internal Clock Division (CKD)" DefaultValue="null" Type="list" Group="Counter Settings" Visible="false" >
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18))"/>
         <!-- <PossibleValue Value="TIM_CLOCKDIVISION_DIV1" Comment="No Division" />-->
    </RefParameter>
<!-- ___________________________________________-->
<!-- Repetion Counter TIMER INSTANCE DEPENDENT -->
<!-- ne doit etre parametre que pour TIM1 et TIM8-->
    <RefParameter Name="RepetitionCounter" Comment="Repetition Counter (RCR - 8 bits value)" DefaultValue="0" Max="255" Min="0" Type="integer" Group="Counter Settings">
        <Condition Diagnostic="" Expression="($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)"/>
    </RefParameter>
    <RefParameter Name="RepetitionCounter" Comment="Repetition Counter (RCR)" DefaultValue="null" Max="0" Min="0" Type="integer" Group="Counter Settings" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="AutoReloadPreload" Comment="auto-reload preload" DefaultValue="TIM_AUTORELOAD_PRELOAD_DISABLE" Type="list" Group="Counter Settings" >
        <PossibleValue Value="TIM_AUTORELOAD_PRELOAD_DISABLE" Comment="Disable"/>
        <PossibleValue Value="TIM_AUTORELOAD_PRELOAD_ENABLE" Comment="Enable" />
    </RefParameter>
<!-- ___________________________________________-->
        <!-- **********************************************************************-->
    <RefParameter Name="Channel" Comment="Channel" DefaultValue="TIM_CHANNEL_1" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_1" Comment="Channel 1"/>
        <PossibleValue Value="TIM_CHANNEL_2" Comment="Channel 2"/>
        <PossibleValue Value="TIM_CHANNEL_3" Comment="Channel 3"/>
        <PossibleValue Value="TIM_CHANNEL_4" Comment="Channel 4"/>
    </RefParameter>
 <!-- *************************DATA for OPM **********************************************-->
    <RefParameter Name="Output_Channel" Comment="Output Channel" DefaultValue="TIM_CHANNEL_1" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_1" Comment="Channel 1"/>
        <PossibleValue Value="TIM_CHANNEL_2" Comment="Channel 2"/>
        <PossibleValue Value="TIM_CHANNEL_3" Comment="Channel 3"/>
        <PossibleValue Value="TIM_CHANNEL_4" Comment="Channel 4"/>
        <PossibleValue Value="TIM_CHANNEL_ALL" Comment="All" />
    </RefParameter>
    <RefParameter Name="Input_Channel" Comment="Input Channel" DefaultValue="TIM_CHANNEL_3" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_1" Comment="Channel 1"/>
        <PossibleValue Value="TIM_CHANNEL_2" Comment="Channel 2"/>
        <PossibleValue Value="TIM_CHANNEL_3" Comment="Channel 3"/>
        <PossibleValue Value="TIM_CHANNEL_4" Comment="Channel 4"/>
        <PossibleValue Value="TIM_CHANNEL_ALL" Comment="All" />
    </RefParameter>
    <RefParameter Name="TIM_OnePulse_Mode" Comment="One Pulse Mode" DefaultValue="TIM_OPMODE_SINGLE" Type="list" Visible="false" Group="Counter Settings">
        <PossibleValue Value="TIM_OPMODE_SINGLE" Comment="Single Mode" />
    </RefParameter>
<!-- *************************DATA for ClockConfig***********************************************-->
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_INTERNAL" Type="list">
        <Condition Diagnostic="Clock_internal" Expression="Semaphore_ClockSourceInternal$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_INTERNAL" Comment="clock_internal"/>
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ITR0" Type="list">
        <Condition Diagnostic="Clock_ITR0" Expression="Semaphore_ClockSourceITR0$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ITR0" Comment="clock_ITR0" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ITR1" Type="list">
        <Condition Diagnostic="Clock_ITR0" Expression="Semaphore_ClockSourceITR1$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ITR1" Comment="clock_ITR1" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ITR2" Type="list">
        <Condition Diagnostic="Clock_ITR0" Expression="Semaphore_ClockSourceITR2$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ITR2" Comment="clock_ITR2" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ITR3" Type="list">
        <Condition Diagnostic="Clock_ITR3" Expression="Semaphore_ClockSourceITR3$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ITR3" Comment="clock_ITR3" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ETRMODE1" Type="list">
        <Condition Diagnostic="Clock_etrmode1" Expression="Semaphore_ClockSourceETRMode1$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ETRMODE1" Comment="clock_ETR1" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_ETRMODE2" Type="list">
        <Condition Diagnostic="Clock_internal" Expression="Semaphore_ClockSourceETRMode2$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_ETRMODE2" Comment="clock_ETR2" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_TI1ED" Type="list">
        <Condition Diagnostic="Clock_TI1ED" Expression="Semaphore_ClockSourceTI1ED$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_TI1ED" Comment="clock_TI1ED" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_TI1" Type="list">
        <Condition Diagnostic="Clock_TI1FP1" Expression="Semaphore_ClockSourceTI1FP1$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_TI1" Comment="clock_TI1FP1" />
    </RefParameter>
    <RefParameter Name="ClockSource" Comment="ClockSource" DefaultValue="TIM_CLOCKSOURCE_TI2" Type="list">
        <Condition Diagnostic="Clock_TI2FP2" Expression="Semaphore_ClockSourceTI2FP2$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKSOURCE_TI2" Comment="clock_TI2FP2" />
    </RefParameter>
<!--_____________________________Clock Prescaler ________________________-->
    <RefParameter Name="ClockPrescaler" Comment="Clock Prescaler" DefaultValue="TIM_CLOCKPRESCALER_DIV1" Type="list" Group="Clock">
        <Condition Diagnostic="" Expression="(Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance)"/>
            <PossibleValue Value="TIM_CLOCKPRESCALER_DIV1" Comment="Prescaler not used"/> <!--for ETR & TIx-->
            <PossibleValue Value="TIM_CLOCKPRESCALER_DIV2" Comment="Capture performed once every 2 events"/><!--for ETR-->
            <PossibleValue Value="TIM_CLOCKPRESCALER_DIV4" Comment="Capture performed once every 4 events"/><!--for ETR-->
            <PossibleValue Value="TIM_CLOCKPRESCALER_DIV8" Comment="Capture performed once every 8 events"/><!--for ETR-->
    </RefParameter>
    <RefParameter Name="ClockPrescaler" Comment="Clock Prescaler" DefaultValue="null" Type="list" Visible="false" Group="Clock">
        <Condition Diagnostic="" Expression="!(Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance)"/>
    </RefParameter>
<!--_____________________________Clock polarity ________________________-->
    <RefParameter Name="ClockPolarity" Comment="Clock Polarity" DefaultValue="TIM_CLOCKPOLARITY_BOTHEDGE" Type="list" Group="Clock">
        <Condition Diagnostic="" Expression="Semaphore_ClockSourceTI2FP2$IpInstance | Semaphore_ClockSourceTI1FP1$IpInstance | Semaphore_ClockSourceTI1ED$IpInstance "/>
        <PossibleValue Value="TIM_CLOCKPOLARITY_RISING" Comment="Rising Edge" /> <!--for TIx-->
        <PossibleValue Value="TIM_CLOCKPOLARITY_FALLING" Comment="Falling Edge"/> <!--for TIx-->
        <PossibleValue Value="TIM_CLOCKPOLARITY_BOTHEDGE" Comment="Both Edges" /> <!--for TIx-->
    </RefParameter>
    <RefParameter Name="ClockPolarity" Comment="Clock Polarity" DefaultValue="TIM_CLOCKPOLARITY_NONINVERTED" Type="list" Group="Clock">
        <Condition Diagnostic="" Expression="Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance"/>
            <PossibleValue Value="TIM_CLOCKPOLARITY_INVERTED" Comment="Inverted" /> <!--for ETR-->
            <PossibleValue Value="TIM_CLOCKPOLARITY_NONINVERTED" Comment="non inverted"/> <!--for ETR-->
    </RefParameter>
    <RefParameter Name="ClockPolarity" Comment="Clock Polarity" DefaultValue="null" Type="list" Visible="false" Group="Clock">
        <Condition Diagnostic="" Expression="!(Semaphore_ClockSourceTI2FP2$IpInstance | Semaphore_ClockSourceTI1FP1$IpInstance | Semaphore_ClockSourceTI1ED$IpInstance  |Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance)"/>
    </RefParameter>
<!--_____________________________Clock Filter ________________________-->
    <RefParameter Name="ClockFilter" Comment="Clock Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Group="Clock">
        <Condition Diagnostic="" Expression="(Semaphore_ClockSourceTI2FP2$IpInstance | Semaphore_ClockSourceTI1FP1$IpInstance | Semaphore_ClockSourceTI1ED$IpInstance  |Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ClockFilter" Comment="Clock Filter (4 bits value)" DefaultValue="null" Max="15" Min="0" Type="integer" Group="Clock" Visible="false">
        <Condition Diagnostic="" Expression="!(Semaphore_ClockSourceTI2FP2$IpInstance | Semaphore_ClockSourceTI1FP1$IpInstance | Semaphore_ClockSourceTI1ED$IpInstance  |Semaphore_ClockSourceETRMode1$IpInstance|Semaphore_ClockSourceETRMode2$IpInstance)"/>
    </RefParameter>
<!--_____________________________Trigger Prescaler ________________________-->
    <RefParameter Name="Slave_TriggerPrescaler" Comment="Trigger Prescaler" DefaultValue="TIM_TRIGGERPRESCALER_DIV1" Type="list" Visible="true" Group="Trigger">
        <Condition Diagnostic="" Expression="(Semaphore_TriggerSourceETR$IpInstance)"/>
            <PossibleValue Value="TIM_TRIGGERPRESCALER_DIV1" Comment="Prescaler not used"/>
            <PossibleValue Value="TIM_TRIGGERPRESCALER_DIV2" Comment="Capture performed once every 2 events"/>
            <PossibleValue Value="TIM_TRIGGERPRESCALER_DIV4" Comment="Capture performed once every 4 events"/><!--for ETR-->
            <PossibleValue Value="TIM_TRIGGERPRESCALER_DIV8" Comment="Capture performed once every 8 events"/><!--for ETR-->
    </RefParameter>
    <RefParameter Name="Slave_TriggerPrescaler" Comment="Trigger Prescaler" DefaultValue="null" Type="list" Visible="false" Group="Trigger">
      <Condition Diagnostic="" Expression="!(Semaphore_TriggerSourceETR$IpInstance)"/>
    </RefParameter>
<!--_____________________________Trigger polarity ________________________-->
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="TIM_TRIGGERPOLARITY_RISING" Type="list" Visible="true" Group="Trigger" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI2FP2$IpInstance &amp; !(Semaphore_input_Channel2_direct$IpInstance | Semaphore_input_Channel2_indirect$IpInstance)"/>
            <PossibleValue Value="TIM_TRIGGERPOLARITY_RISING" Comment="Rising Edge" /> <!--for TIx-->
            <PossibleValue Value="TIM_TRIGGERPOLARITY_FALLING" Comment="Falling Edge"/> <!--for TIx-->
            <PossibleValue Value="TIM_TRIGGERPOLARITY_BOTHEDGE" Comment="Both Edges" /> <!--for TIx-->
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity_CH2$Input_Capture2_from_TI2" Type="list" Visible="false" Group="Trigger" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI2FP2$IpInstance &amp; Semaphore_input_Channel2_direct$IpInstance "/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity_CH2$Input_Capture2_from_TI1" Type="list" Visible="false" Group="Trigger" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI2FP2$IpInstance &amp; Semaphore_input_Channel2_indirect$IpInstance "/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="TIM_TRIGGERPOLARITY_RISING" Type="list" Visible="true" Group="Trigger">
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1FP1$IpInstance &amp; !(Semaphore_input_Channel1_direct$IpInstance | Semaphore_input_Channel1_indirect$IpInstance)  "/>
            <PossibleValue Value="TIM_TRIGGERPOLARITY_RISING" Comment="Rising Edge" /> <!--for TIx-->
            <PossibleValue Value="TIM_TRIGGERPOLARITY_FALLING" Comment="Falling Edge"/> <!--for TIx-->
            <PossibleValue Value="TIM_TRIGGERPOLARITY_BOTHEDGE" Comment="Both Edges" /> <!--for TIx-->
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity_CH1$Input_Capture1_from_TI1" Type="list" Visible="false" Group="Trigger" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1FP1$IpInstance &amp; Semaphore_input_Channel1_direct$IpInstance "/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity_CH1$Input_Capture1_from_TI2" Type="list" Visible="false" Group="Trigger" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1FP1$IpInstance &amp; Semaphore_input_Channel1_indirect$IpInstance "/>
    </RefParameter>
<!--no need to programm trigger polarity when TI1ED used -->
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="null" Type="list" Visible="false" Group="Trigger">
            <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1ED$IpInstance &amp; !(Semaphore_input_Channel1_direct$IpInstance|Semaphore_input_Channel1_indirect$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity$Input_Capture1_from_TI1" Type="list" Visible="false" Group="Trigger">
            <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1ED$IpInstance &amp; Semaphore_input_Channel1_direct$IpInstance"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="+ICPolarity$Input_Capture1_from_TI2" Type="list" Visible="false" Group="Trigger">
            <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1ED$IpInstance &amp; Semaphore_input_Channel1_indirect$IpInstance"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="TIM_TRIGGERPOLARITY_NONINVERTED" Type="list" Visible="true" Group="Trigger">
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceETR$IpInstance"/>
            <PossibleValue Value="TIM_TRIGGERPOLARITY_INVERTED" Comment="Inverted" /> <!--for ETR-->
            <PossibleValue Value="TIM_TRIGGERPOLARITY_NONINVERTED" Comment="non inverted"/> <!--for ETR-->
    </RefParameter>
    <RefParameter Name="Slave_TriggerPolarity" Comment="Trigger Polarity" DefaultValue="null" Type="list" Visible="false" Group="Trigger">
        <Condition Diagnostic="" Expression="!(Semaphore_TriggerSourceTI2FP2$IpInstance | Semaphore_TriggerSourceTI1FP1$IpInstance | Semaphore_TriggerSourceTI1ED$IpInstance  |Semaphore_TriggerSourceETR$IpInstance)"/>
    </RefParameter>
<!--_____________________________Trigger Filter ________________________-->
<!-- ne pas changer l'ordre-->
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter" DefaultValue="=ICFilter_CH2$Input_Capture2_from_TI2" Max="=ICFilter_CH2$Input_Capture2_from_TI2" Min="=ICFilter_CH2$Input_Capture2_from_TI2" Type="integer" Group="Trigger" Visible="false">
        <Condition Diagnostic="" Expression="(Semaphore_TriggerSourceTI2FP2$IpInstance &amp; Semaphore_input_Channel2_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter (to be configured in Channel 2: Input Filter)" DefaultValue="=ICFilter_CH2$Input_Capture2_from_TI1" Max="=ICFilter$Input_Capture2_from_TI1" Min="=ICFilter_CH2$Input_Capture2_from_TI1" Type="integer" Group="Trigger" Visible="false">
        <Condition Diagnostic="" Expression="(Semaphore_TriggerSourceTI2FP2$IpInstance &amp; Semaphore_input_Channel2_indirect$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter (to be configured in Channel 1: Input Filter)" DefaultValue="=ICFilter_CH1$Input_Capture1_from_TI1" Max="=ICFilter_CH1$Input_Capture1_from_TI1" Min="=ICFilter_CH1$Input_Capture1_from_TI1" Type="integer" Group="Trigger" Visible="false">
        <Condition Diagnostic="" Expression="((Semaphore_TriggerSourceTI1FP1$IpInstance|Semaphore_TriggerSourceTI1ED$IpInstance) &amp; Semaphore_input_Channel1_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter (to be configured in Channel 1: Input Filter)" DefaultValue="=ICFilter_CH1$Input_Capture1_from_TI2" Max="=ICFilter_CH1$Input_Capture1_from_TI2" Min="=ICFilter_CH1$Input_Capture1_from_TI2" Type="integer" Group="Trigger" Visible="false">
        <Condition Diagnostic="" Expression="((Semaphore_TriggerSourceTI1FP1$IpInstance|Semaphore_TriggerSourceTI1ED$IpInstance) &amp; Semaphore_input_Channel1_indirect$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Group="Trigger">
        <Condition Diagnostic="" Expression="(Semaphore_TriggerSourceETR$IpInstance|Semaphore_TriggerSourceTI1FP1$IpInstance|Semaphore_TriggerSourceTI1ED$IpInstance|Semaphore_TriggerSourceTI2FP2$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="Slave_TriggerFilter" Comment="Trigger Filter (4 bits value)" DefaultValue="null" Max="15" Min="0" Type="integer" Group="Trigger" Visible="false">
        <Condition Diagnostic="" Expression="!(Semaphore_TriggerSourceTI2FP2$IpInstance | Semaphore_TriggerSourceTI1FP1$IpInstance | Semaphore_TriggerSourceTI1ED$IpInstance |Semaphore_TriggerSourceETR$IpInstance)"/>
    </RefParameter>
<!-- *************************DATA for IC **********************************************-->
<!--ICPolarity-->
    <RefParameter Name="ICPolarity" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" >
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_BOTHEDGE" Comment="Both Edges" />
    </RefParameter>
    <RefParameter Name="ICPolarity_CH3" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" Visible="true" >
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_BOTHEDGE" Comment="Both Edges" />
    </RefParameter>
    <RefParameter Name="ICPolarity_CH4" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" Visible="true" >
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
         <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_BOTHEDGE" Comment="Both Edges" />
    </RefParameter>
    <RefParameter Name="ICPolarity_CH1" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" Visible="true">
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_BOTHEDGE" Comment="Both Edges" />
    </RefParameter>
    <RefParameter Name="ICPolarity_CH2" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" Visible="true">
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_BOTHEDGE" Comment="Both Edges" />
    </RefParameter>
<!-- ICPolarity_TRC : set to default value whatever the adjacent use cases-->
    <RefParameter Name="ICPolarity_TRC" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" Visible="false">
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
    </RefParameter>
<!--ICSelection-->
    <RefParameter Name="ICSelection" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
        <Condition Diagnostic="internal trigger selected" Expression="(Semaphore_TriggerSourceITR0$IpInstance | Semaphore_TriggerSourceITR1$IpInstance | Semaphore_TriggerSourceITR2$IpInstance | Semaphore_TriggerSourceITR3$IpInstance)"/>
            <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct" />
            <PossibleValue Value="TIM_ICSELECTION_INDIRECTTI" Comment="Indirect"/>
            <PossibleValue Value="TIM_ICSELECTION_TRC" Comment="TRC" />
    </RefParameter>
    <RefParameter Name="ICSelection" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
        <Condition Diagnostic="no internal trigger" Expression="!(Semaphore_TriggerSourceITR0$IpInstance | Semaphore_TriggerSourceITR1$IpInstance | Semaphore_TriggerSourceITR2$IpInstance | Semaphore_TriggerSourceITR3$IpInstance)"/>
            <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct" />
            <PossibleValue Value="TIM_ICSELECTION_INDIRECTTI" Comment="Indirect"/>
    </RefParameter>
    <RefParameter Name="ICSelection_TRC" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_TRC" Type="list" >
        <PossibleValue Value="TIM_ICSELECTION_TRC" Comment="TRC" />
    </RefParameter>
<!--ICPrescaler-->
    <RefParameter Name="ICPrescaler" Comment="Prescaler Division Ratio" DefaultValue="TIM_ICPSC_DIV1" Type="list" >
        <PossibleValue Value="TIM_ICPSC_DIV1" Comment="No division"/>
        <PossibleValue Value="TIM_ICPSC_DIV2" Comment="Division by 2"/>
        <PossibleValue Value="TIM_ICPSC_DIV4" Comment="Division by 4"/>
        <PossibleValue Value="TIM_ICPSC_DIV8" Comment="Division by 8"/>
    </RefParameter>
<!--ICFilter-->
    <RefParameter Name="ICFilter" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" >
    </RefParameter>
    <RefParameter Name="ICFilter_CH1" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Visible="true" >
        <Condition Diagnostic="" Expression="(((Semaphore_TriggerSourceTI1FP1$IpInstance|Semaphore_TriggerSourceTI1ED$IpInstance)&amp; Semaphore_input_Channel1_indirect$IpInstance)|Semaphore_input_Channel1_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH1" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="0" Min="0" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression="!(((Semaphore_TriggerSourceTI1FP1$IpInstance|Semaphore_TriggerSourceTI1ED$IpInstance)&amp; Semaphore_input_Channel1_indirect$IpInstance)|Semaphore_input_Channel1_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH2" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Visible="true" >
        <Condition Diagnostic="" Expression="(((Semaphore_TriggerSourceTI2FP2$IpInstance) &amp; Semaphore_input_Channel2_indirect$IpInstance)|Semaphore_input_Channel2_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH2" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="0" Min="0" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression="!(((Semaphore_TriggerSourceTI2FP2$IpInstance) &amp; Semaphore_input_Channel2_indirect$IpInstance)|Semaphore_input_Channel2_direct$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH3" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Visible="true" >
        <Condition Diagnostic="" Expression=" Semaphore_input_Channel3_direct$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH3" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="0" Min="0" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression=" !Semaphore_input_Channel3_direct$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH4" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" Visible="true" >
        <Condition Diagnostic="" Expression=" Semaphore_input_Channel4_direct$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ICFilter_CH4" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="0" Min="0" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression=" !Semaphore_input_Channel4_direct$IpInstance"/>
    </RefParameter>
<!--ICFilter_TRC =Slave_TriggerFilter$Input_Capture1_from_TRC -->
    <RefParameter Name="ICFilter_TRC_TI1" Comment="Input Filter (4 bits value)" DefaultValue="=Slave_TriggerFilter$TriggerSource_TI1ED" Min="=Slave_TriggerFilter$TriggerSource_TI1ED" Max="=Slave_TriggerFilter$TriggerSource_TI1ED" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression="Semaphore_TriggerSourceTI1ED$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ICFilter_TRC_TI1" Comment="Input Filter (4 bits value)" DefaultValue="0" Min="0" Max="15" Type="integer" Visible="false" >
        <Condition Diagnostic="" Expression="!Semaphore_TriggerSourceTI1ED$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ICFilter_TRC_TI2" Comment="Input Filter (4 bits value)" DefaultValue="0" Min="0" Max="15" Type="integer" Visible="false" >
    </RefParameter>
    <RefParameter Name="ICFilter_TRC_TI3" Comment="Input Filter (4 bits value)" DefaultValue="0" Min="0" Max="15" Type="integer" Visible="false" >
    </RefParameter>
    <RefParameter Name="ICFilter_TRC_TI4" Comment="Input Filter (4 bits value)" DefaultValue="0" Min="0" Max="15" Type="integer" Visible="false" >
    </RefParameter>
<!-- *************************common DATA for trigger and SMS **********************************************-->
    <RefParameter Name="TIM_InputTrigger_List" Comment="Input Trigger " DefaultValue="TIM_TS_ITR0" Type="list" >
        <Condition Diagnostic="" Expression="(!Semaphore_6_Step_PWM_Generation$IpInstance) &amp; !($IpNumber=21) &amp; !($IpNumber=22) "/>
            <PossibleValue Value="TIM_TS_ITR0" Comment=" ITR0" />
            <PossibleValue Value="TIM_TS_ITR1" Comment=" ITR1" />
            <PossibleValue Value="TIM_TS_ITR2" Comment=" ITR2" />
            <PossibleValue Value="TIM_TS_ITR3" Comment=" ITR3" />
            <PossibleValue Value="TIM_TS_TI1F_ED" Comment=" TI1F_ED" />
            <PossibleValue Value="TIM_TS_TI1FP1" Comment=" TI1FP1" />
            <PossibleValue Value="TIM_TS_TI2FP2" Comment=" TI2FP2" />
            <PossibleValue Value="TIM_TS_ETRF" Comment=" ETR" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger_List" Comment="Input Trigger " DefaultValue="TIM_TS_ITR0" Type="list" >
        <Condition Diagnostic="" Expression="(!Semaphore_6_Step_PWM_Generation$IpInstance) &amp; (($IpNumber=21)|($IpNumber=22)) "/>
            <PossibleValue Value="TIM_TS_ITR0" Comment=" ITR0" />
            <PossibleValue Value="TIM_TS_ITR1" Comment=" ITR1" />
            <PossibleValue Value="TIM_TS_TI1F_ED" Comment=" TI1F_ED" />
            <PossibleValue Value="TIM_TS_TI1FP1" Comment=" TI1FP1" />
            <PossibleValue Value="TIM_TS_TI2FP2" Comment=" TI2FP2" />
            <PossibleValue Value="TIM_TS_ETRF" Comment=" ETR" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger_List" Comment="Input Trigger " DefaultValue="TIM_TS_ITR0" Type="list" >
        <Condition Diagnostic="" Expression="Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_TS_ITR0" Comment=" ITR0" />
            <PossibleValue Value="TIM_TS_ITR1" Comment=" ITR1" />
            <PossibleValue Value="TIM_TS_ITR2" Comment=" ITR2" />
            <PossibleValue Value="TIM_TS_ITR3" Comment=" ITR3" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR0" Type="list">
        <Condition Diagnostic="TIM_TS_ITR0" Expression="Semaphore_TriggerSourceITR0$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR0" Comment=" from ITR0" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR1" Type="list">
        <Condition Diagnostic="TIM_TS_ITR1" Expression="Semaphore_TriggerSourceITR1$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR1" Comment=" from ITR1" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR2" Type="list">
        <Condition Diagnostic="TIM_TS_ITR2" Expression="Semaphore_TriggerSourceITR2$IpInstance"/>
            <PossibleValue Value="TIM_TS_ITR2" Comment=" from ITR2" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR3" Type="list">
        <Condition Diagnostic="TIM_TS_ITR3" Expression="Semaphore_TriggerSourceITR3$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR3" Comment=" from ITR3" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR4" Type="list">
        <Condition Diagnostic="TIM_TS_ITR4" Expression="Semaphore_TriggerSourceITR4$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR4" Comment=" from ITR4" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR5" Type="list">
        <Condition Diagnostic="TIM_TS_ITR5" Expression="Semaphore_TriggerSourceITR5$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR5" Comment=" from ITR5" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR6" Type="list">
        <Condition Diagnostic="TIM_TS_ITR6" Expression="Semaphore_TriggerSourceITR6$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR6" Comment=" from ITR6" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR7" Type="list">
        <Condition Diagnostic="TIM_TS_ITR7" Expression="Semaphore_TriggerSourceITR7$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR7" Comment=" from ITR7" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR8" Type="list">
        <Condition Diagnostic="TIM_TS_ITR8" Expression="Semaphore_TriggerSourceITR8$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR8" Comment=" from ITR8" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR9" Type="list">
        <Condition Diagnostic="TIM_TS_ITR9" Expression="Semaphore_TriggerSourceITR9$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR9" Comment=" from ITR9" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR10" Type="list">
        <Condition Diagnostic="TIM_TS_ITR10" Expression="Semaphore_TriggerSourceITR10$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR10" Comment=" from ITR10" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR11" Type="list">
        <Condition Diagnostic="TIM_TS_ITR11" Expression="Semaphore_TriggerSourceITR11$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR11" Comment=" from ITR11" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR12" Type="list">
        <Condition Diagnostic="TIM_TS_ITR12" Expression="Semaphore_TriggerSourceITR12$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR12" Comment=" from ITR12" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ITR13" Type="list">
        <Condition Diagnostic="TIM_TS_ITR13" Expression="Semaphore_TriggerSourceITR13$IpInstance" />
            <PossibleValue Value="TIM_TS_ITR13" Comment=" from ITR13" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_TI1F_ED" Type="list">
        <Condition Diagnostic="TIM_TS_TI1F_ED" Expression="Semaphore_TriggerSourceTI1ED$IpInstance" />
            <PossibleValue Value="TIM_TS_TI1F_ED" Comment=" from TI1F_ED" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_TI1FP1" Type="list">
        <Condition Diagnostic="TIM_TS_TI1FP1" Expression="Semaphore_TriggerSourceTI1FP1$IpInstance" />
            <PossibleValue Value="TIM_TS_TI1FP1" Comment=" from TI1FP1" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_TI2FP2" Type="list">
        <Condition Diagnostic="TIM_TS_TI2FP2" Expression="Semaphore_TriggerSourceTI2FP2$IpInstance" />
            <PossibleValue Value="TIM_TS_TI2FP2" Comment=" from TI2FP2" />
    </RefParameter>
    <RefParameter Name="TIM_InputTrigger" Comment="TIM_InputTrigger" DefaultValue="TIM_TS_ETRF" Type="list">
        <Condition Diagnostic="TIM_TS_ETRF" Expression="Semaphore_TriggerSourceETR$IpInstance" />
            <PossibleValue Value="TIM_TS_ETRF" Comment=" from ETR" />
    </RefParameter>
<!-- *************************** TIM_SlaveMode ******************************-->
    <RefParameter Name="TIM_SlaveMode_List" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_DISABLE" Type="list" Group="Counter Settings">
        <PossibleValue Value="TIM_SLAVEMODE_DISABLE" Comment="Disable Mode" />
        <PossibleValue Value="TIM_SLAVEMODE_RESET" Comment="Reset Mode" />
        <PossibleValue Value="TIM_SLAVEMODE_GATED" Comment="Gated Mode" />
        <PossibleValue Value="TIM_SLAVEMODE_TRIGGER" Comment="Trigger Mode" />
        <PossibleValue Value="TIM_SLAVEMODE_EXTERNAL1" Comment="External Clock Mode 1" />
    </RefParameter>
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_RESET" Type="list" Group="Counter Settings">
        <Condition Diagnostic="reset mode" Expression="Semaphore_SMC_Reset$IpInstance"/>
            <PossibleValue Value="TIM_SLAVEMODE_RESET" Comment="Reset Mode" />
    </RefParameter>
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_GATED" Type="list" Group="Counter Settings">
        <Condition Diagnostic="Gated mode" Expression="Semaphore_SMC_Gated$IpInstance"/>
            <PossibleValue Value="TIM_SLAVEMODE_GATED" Comment="Gated Mode" />
    </RefParameter>
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_TRIGGER" Type="list" Group="Counter Settings">
        <Condition Diagnostic="Trigger mode" Expression="Semaphore_SMC_Trigger$IpInstance"/>
            <PossibleValue Value="TIM_SLAVEMODE_TRIGGER" Comment="Trigger Mode" />
    </RefParameter>
<!-- de commente -->
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_EXTERNAL1" Type="list" Group="Counter Settings">
        <Condition Diagnostic="external1" Expression="Semaphore_SMC_Clock$IpInstance"/>
            <PossibleValue Value="TIM_SLAVEMODE_EXTERNAL1" Comment="ETR mode 1" />
    </RefParameter>
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_COMBINED_RESETTRIGGER" Type="list" Group="Counter Settings">
        <Condition Diagnostic="Combined Reset Trigger mode" Expression="Semaphore_SMC_CombinedResetTrigger$IpInstance"/>
            <PossibleValue Value="TIM_SLAVEMODE_COMBINED_RESETTRIGGER" Comment="Combined Reset Trigger mode" />
    </RefParameter>
    <RefParameter Name="TIM_SlaveMode" Comment="Slave Mode Controller" DefaultValue="TIM_SLAVEMODE_DISABLE" Type="list" Group="Counter Settings">
        <Condition Diagnostic="disable mode" Expression="!(Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)"/>
            <PossibleValue Value="TIM_SLAVEMODE_DISABLE" Comment="Slave mode disable" />
    </RefParameter>
    <RefParameter Name="TIM_CommutationSource" Comment="Commutation source" DefaultValue="TIM_COMMUTATION_SOFTWARE" Type="list" Group="Counter Settings">
        <PossibleValue Value="TIM_COMMUTATION_TRGI" Comment="TRGI Event" />
        <PossibleValue Value="TIM_COMMUTATION_SOFTWARE" Comment="Software Event" />
    </RefParameter>
<!-- *************************DATA for PWM input CH1 **********************************************-->
<!--ICPolarity-->
    <RefParameter Name="ICPolarity_1" Comment="Polarity Selection" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" >
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge" />
        <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
    </RefParameter>
    <RefParameter Name="ICPolarity_2" Comment="Polarity Selection (opposite CH1)" DefaultValue="TIM_INPUTCHANNELPOLARITY_FALLING" Type="list" >
        <Condition Diagnostic="opposite polarity for CH1 and CH2" Expression="ICPolarity_1=TIM_INPUTCHANNELPOLARITY_RISING"/>
            <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_FALLING" Comment="Falling Edge"/>
    </RefParameter>
    <RefParameter Name="ICPolarity_2" Comment="Polarity Selection (opposite CH1)" DefaultValue="TIM_INPUTCHANNELPOLARITY_RISING" Type="list" >
        <Condition Diagnostic="opposite polarity for CH1 and CH2" Expression="ICPolarity_1=TIM_INPUTCHANNELPOLARITY_FALLING"/>
            <PossibleValue Value="TIM_INPUTCHANNELPOLARITY_RISING" Comment="Rising Edge"/>
    </RefParameter>
<!--ICSelection-->
    <RefParameter Name="ICSelection_1" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
        <Condition Diagnostic="PWM input CH1" Expression="Semaphore_PWM_Input_1$IpInstance"/>
            <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct"/>
    </RefParameter>
    <RefParameter Name="ICSelection_2" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_INDIRECTTI" Type="list" >
        <Condition Diagnostic="PWM input CH1" Expression="Semaphore_PWM_Input_1$IpInstance"/>
            <PossibleValue Value="TIM_ICSELECTION_INDIRECTTI" Comment="Indirect"/>
    </RefParameter>
<!--ICPrescaler-->
    <RefParameter Name="ICPrescaler_1" Comment="Prescaler Division Ratio" DefaultValue="TIM_ICPSC_DIV1" Type="list" >
        <PossibleValue Value="TIM_ICPSC_DIV1" Comment="No division" />
    </RefParameter>
 <RefParameter Name="ICPrescaler_2" Comment="Prescaler Division Ratio" DefaultValue="TIM_ICPSC_DIV1" Type="list" >
        <PossibleValue Value="TIM_ICPSC_DIV1" Comment="No division" />
    </RefParameter>
<!--ICFilter-->
    <RefParameter Name="ICFilter_1" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" >
    </RefParameter>
    <RefParameter Name="ICFilter_2" Comment="Input Filter (4 bits value)" DefaultValue="0" Max="15" Min="0" Type="integer" >
    </RefParameter>
<!--Channel-->
   <RefParameter Name="Channel_1" Comment="Channel" DefaultValue="TIM_CHANNEL_1" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_1" Comment="Channel 1"/>
    </RefParameter>
    <RefParameter Name="Channel_2" Comment="Channel" DefaultValue="TIM_CHANNEL_1" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_2" Comment="Channel 2"/>
    </RefParameter>
    <RefParameter Name="Channel_3" Comment="Channel" DefaultValue="TIM_CHANNEL_3" Type="list" Visible="false">
        <PossibleValue Value="TIM_CHANNEL_3" Comment="Channel 3"/>
    </RefParameter>
<!-- *************************DATA for PWM input CH2 (different from PWM input CH1) **********************************************-->
<!--ICSelection-->
    <RefParameter Name="ICSelection_1" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_INDIRECTTI" Type="list" >
        <Condition Diagnostic="PWM input CH2" Expression="Semaphore_PWM_Input_2$IpInstance"/>
            <PossibleValue Value="TIM_ICSELECTION_INDIRECTTI" Comment="Indirect"/>
    </RefParameter>
    <RefParameter Name="ICSelection_2" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
        <Condition Diagnostic="PWM input CH2" Expression="Semaphore_PWM_Input_2$IpInstance"/>
            <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct"/>
    </RefParameter>
<!-- *************************DATA for Output compare***********************************************-->
    <RefParameter Name="Pulse" Comment="Pulse (32 bits value)" DefaultValue="0" Max="4294967295" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse" Comment="Pulse (16 bits value)" DefaultValue="0" Max="65535" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="!(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="OCMode_PWM" Comment="Mode" DefaultValue="TIM_OCMODE_PWM1" Type="list" >
            <PossibleValue Value="TIM_OCMODE_PWM1" Comment="PWM mode 1" Semaphore="Semaphore_TIM_OCMODE_PWM1$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_PWM2" Comment="PWM mode 2" Semaphore="Semaphore_TIM_OCMODE_PWM2$IpInstance"/>
    </RefParameter>
    <RefParameter Name="OCFastMode_PWM" Comment="Fast Mode" DefaultValue="TIM_OCFAST_DISABLE" Type="list">
            <PossibleValue Value="TIM_OCFAST_DISABLE" Comment="Disable"/>
            <PossibleValue Value="TIM_OCFAST_ENABLE" Comment="Enable" />
    </RefParameter>
    <RefParameter Name="DefaultOCFastMode" Comment="Fast Mode" DefaultValue="TIM_OCFAST_DISABLE" Type="list" Visible="false">
            <PossibleValue Value="TIM_OCFAST_DISABLE" Comment="Disable"/>
    </RefParameter>
    <RefParameter Name="OCMode_forced" Comment="Mode" DefaultValue="TIM_OCMODE_FORCED_ACTIVE" Type="list" >
            <PossibleValue Value="TIM_OCMODE_FORCED_ACTIVE" Comment="Forced Active"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_INACTIVE" Comment="Forced Inactive"/>
    </RefParameter>
<!-- ************************* DATA for 6 step PWM generation ***********************************************-->
<!--not a parameter, just used to separate the CH1 CH2 and CH3 parameters in the GUI-->
    <RefParameter Name="Separateur-channel1-nonParameter" Comment="          ____ Parameters for Channel 1 ____" DefaultValue="" Type="subtitle" >
    </RefParameter>
    <RefParameter Name="Separateur-channel2-nonParameter" Comment="          ____ Parameters for Channel 2 ____" DefaultValue="" Type="subtitle" >
    </RefParameter>
    <RefParameter Name="Separateur-channel3-nonParameter" Comment="          ____ Parameters for Channel 3 ____" DefaultValue="" Type="subtitle" >
    </RefParameter>
    <RefParameter Name="OCMode_1" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
    </RefParameter>
    <RefParameter Name="OCMode_1" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="!Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
            <PossibleValue Value="TIM_OCMODE_ACTIVE" Comment="Active Level on match"/>
            <PossibleValue Value="TIM_OCMODE_INACTIVE" Comment="Inactive Level on match"/>
            <PossibleValue Value="TIM_OCMODE_TOGGLE" Comment="Toggle on match"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_ACTIVE" Comment="Forced Active"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_INACTIVE" Comment="Forced Inactive"/>
    </RefParameter>
    <RefParameter Name="OCMode_2" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
    </RefParameter>
    <RefParameter Name="OCMode_2" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="!Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
            <PossibleValue Value="TIM_OCMODE_ACTIVE" Comment="Active Level on match"/>
            <PossibleValue Value="TIM_OCMODE_INACTIVE" Comment="Inactive Level on match"/>
            <PossibleValue Value="TIM_OCMODE_TOGGLE" Comment="Toggle on match"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_ACTIVE" Comment="Forced Active"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_INACTIVE" Comment="Forced Inactive"/>
    </RefParameter>
    <RefParameter Name="OCMode_3" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
    </RefParameter>
    <RefParameter Name="OCMode_3" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="!Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
            <PossibleValue Value="TIM_OCMODE_ACTIVE" Comment="Active Level on match"/>
            <PossibleValue Value="TIM_OCMODE_INACTIVE" Comment="Inactive Level on match"/>
            <PossibleValue Value="TIM_OCMODE_TOGGLE" Comment="Toggle on match"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_ACTIVE" Comment="Forced Active"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_INACTIVE" Comment="Forced Inactive"/>
    </RefParameter>
    <RefParameter Name="OCMode_4" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
    </RefParameter>
    <RefParameter Name="OCMode_4" Comment="Mode" DefaultValue="TIM_OCMODE_TIMING" Type="list" >
        <Condition Diagnostic="for 6 steps" Expression="!Semaphore_6_Step_PWM_Generation$IpInstance"/>
            <PossibleValue Value="TIM_OCMODE_TIMING" Comment="Frozen (used for Timing base)"/>
            <PossibleValue Value="TIM_OCMODE_ACTIVE" Comment="Active Level on match"/>
            <PossibleValue Value="TIM_OCMODE_INACTIVE" Comment="Inactive Level on match"/>
            <PossibleValue Value="TIM_OCMODE_TOGGLE" Comment="Toggle on match"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_ACTIVE" Comment="Forced Active"/>
            <PossibleValue Value="TIM_OCMODE_FORCED_INACTIVE" Comment="Forced Inactive"/>
    </RefParameter>
    <RefParameter Name="Pulse_1" Comment="Pulse (16 bits value)" DefaultValue="0" Max="65535" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="!(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse_1" Comment="Pulse (32 bits value)" DefaultValue="0" Max="4294967295" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse_2" Comment="Pulse (16 bits value)" DefaultValue="0" Max="65535" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="!(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse_2" Comment="Pulse (32 bits value)" DefaultValue="0" Max="4294967295" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse_3" Comment="Pulse (16 bits value)" DefaultValue="0" Max="65535" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="!(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="Pulse_3" Comment="Pulse (32 bits value)" DefaultValue="0" Max="4294967295" Min="0" Type="integer">
        <Condition Diagnostic="" Expression="(($IpNumber=2)|($IpNumber=5)|($IpNumber=23)|($IpNumber=24))"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_1" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!Semaphore_Channel1x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_2" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!Semaphore_Channel2x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_3" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!Semaphore_Channel3x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_4" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!Semaphore_Channel4x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_1" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="Semaphore_Channel1x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_2" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="Semaphore_Channel2x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_3" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="Semaphore_Channel3x$IpInstance"/>
            <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="OCPolarity_4" Comment="CH Polarity" DefaultValue="TIM_OCPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="Semaphore_Channel4x$IpInstance"/>
        <PossibleValue Value="TIM_OCPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
<!-- only for tim1 and tim8 -->
    <RefParameter Name="OCNPolarity_1" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp; Semaphore_Channel1N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCNPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_1" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp; !Semaphore_Channel1N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_2" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel2N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCNPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
 <RefParameter Name="OCNPolarity_2" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp; !Semaphore_Channel2N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_3" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" >
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel3N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_OCNPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_3" Comment="CHN Polarity" DefaultValue="TIM_OCNPOLARITY_HIGH" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp; !Semaphore_Channel3N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNPOLARITY_HIGH" Comment="High"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_1" Comment="CHN Polarity" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)))"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_2" Comment="CHN Polarity" DefaultValue="null" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)))"/>
    </RefParameter>
    <RefParameter Name="OCNPolarity_3" Comment="CHN Polarity" DefaultValue="null" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)))"/>
    </RefParameter>
<!--OC Idle state parameter only for TIM1 and TIM8 -->
    <RefParameter Name="OCIdleState_1" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp; Semaphore_Channel1x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_1" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp;!Semaphore_Channel1x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_2" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel2x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_2" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp;!Semaphore_Channel2x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_3" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel3x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_3" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp;!Semaphore_Channel3x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_4" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel4x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_4" Comment="CH Idle State" DefaultValue="TIM_OCIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp;!Semaphore_Channel4x$IpInstance)"/>
            <PossibleValue Value="TIM_OCIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_1" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel1N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_1" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; !Semaphore_Channel1N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_2" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel2N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_2" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; !Semaphore_Channel2N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_3" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel3N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_3" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; !Semaphore_Channel3N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_4" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_Channel4N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_SET" Comment="Set"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_4" Comment="CHN Idle State" DefaultValue="TIM_OCNIDLESTATE_RESET" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; !Semaphore_Channel4N$IpInstance)"/>
            <PossibleValue Value="TIM_OCNIDLESTATE_RESET" Comment="Reset"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_1" Comment="CH Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|(!Semaphore_Channel1x$IpInstance))"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_2" Comment="CH Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|(!Semaphore_Channel2x$IpInstance))"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_3" Comment="CH Idle State" DefaultValue="null" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|(!Semaphore_Channel3x$IpInstance))"/>
    </RefParameter>
    <RefParameter Name="OCIdleState_4" Comment="CH Idle State" DefaultValue="null" Type="list" Visible="false" >
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|(!Semaphore_Channel4x$IpInstance))"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_1" Comment="CHN Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_2" Comment="CHN Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_3" Comment="CHN Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="OCNIdleState_4" Comment="CHN Idle State" DefaultValue="null" Type="list" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
<!--OC Idle state parameter only for TIM1 and TIM8 -->
<!-- OCxPE output Compare Preload management OC / forced -->
    <RefParameter Name="OC1Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
 <!-- <Condition Diagnostic="" Expression="output Compare || (PWM & OPM)"/> -->
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC2Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC3Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC4Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC5Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC6Preload" Comment="Output compare preload" DefaultValue="DISABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
<!--end of OCxPE output Compare Preload management for OC / forced -->
<!-- OCxPE output Compare Preload management for PWM modes-->
    <RefParameter Name="OC1Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
 <!-- <Condition Diagnostic="" Expression="output Compare || (PWM & OPM)"/> -->
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC2Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC3Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC4Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC5Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
 <RefParameter Name="OC6Preload_PWM" Comment="Output compare preload" DefaultValue="ENABLE" Type="list" Visible="true">
            <PossibleValue Value="DISABLE" Comment="Disable"/>
            <PossibleValue Value="ENABLE" Comment="Enable"/>
    </RefParameter>
<!--end of OCxPE output Compare Preload management for PWM modes -->
<!-- *************************DATA for ENCODER***********************************************-->
<!--EncoderMode-->
    <RefParameter Name="EncoderMode" Comment="Encoder Mode" DefaultValue="TIM_ENCODERMODE_TI1" Type="list" >
            <PossibleValue Value="TIM_ENCODERMODE_TI1" Comment="Encoder Mode TI1"/>
            <PossibleValue Value="TIM_ENCODERMODE_TI2" Comment="Encoder Mode TI2"/>
            <PossibleValue Value="TIM_ENCODERMODE_TI12" Comment="Encoder Mode TI1 and TI2"/>
    </RefParameter>
<!--IC1Polarity-->
    <RefParameter Name="IC1Polarity" Comment="Polarity" DefaultValue="TIM_ICPOLARITY_RISING" Type="list">
            <PossibleValue Value="TIM_ICPOLARITY_RISING" Comment="Rising Edge"/>
            <PossibleValue Value="TIM_ICPOLARITY_FALLING" Comment="Falling Edge"/>
<!-- <PossibleValue Value="TIM_ICPOLARITY_BOTHEDGE" Comment="Both Edges"/> -->
    </RefParameter>
<!--IC1Selection reserved for Encoder Mode-->
    <RefParameter Name="IC1Selection" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
            <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct"/>
    </RefParameter>
<!--IC1Prescaler-->
    <RefParameter Name="IC1Prescaler" Comment="Prescaler Division Ratio" DefaultValue="TIM_ICPSC_DIV1" Type="list" >
            <PossibleValue Value="TIM_ICPSC_DIV1" Comment="No division"/>
            <PossibleValue Value="TIM_ICPSC_DIV2" Comment="Division by 2"/>
            <PossibleValue Value="TIM_ICPSC_DIV4" Comment="Division by 4"/>
            <PossibleValue Value="TIM_ICPSC_DIV8" Comment="Division by 8"/>
    </RefParameter>
<!--IC1Filter-->
    <RefParameter Name="IC1Filter" Comment="Input Filter" DefaultValue="0" Max="15" Min="0" Type="integer">
    </RefParameter>
<!--IC2Polarity-->
    <RefParameter Name="IC2Polarity" Comment="Polarity" DefaultValue="TIM_ICPOLARITY_RISING" Type="list" >
            <PossibleValue Value="TIM_ICPOLARITY_RISING" Comment="Rising Edge"/>
            <PossibleValue Value="TIM_ICPOLARITY_FALLING" Comment="Falling Edge"/>
<!-- <PossibleValue Value="TIM_ICPOLARITY_BOTHEDGE" Comment="Both Edges"/> -->
    </RefParameter>
<!--IC2Selection reserved for Encoder Mode-->
     <RefParameter Name="IC2Selection" Comment="IC Selection" DefaultValue="TIM_ICSELECTION_DIRECTTI" Type="list" >
        <PossibleValue Value="TIM_ICSELECTION_DIRECTTI" Comment="Direct"/>
    </RefParameter>
<!--IC2Prescaler-->
    <RefParameter Name="IC2Prescaler" Comment="Prescaler Division Ratio" DefaultValue="TIM_ICPSC_DIV1" Type="list" >
        <PossibleValue Value="TIM_ICPSC_DIV1" Comment="No division"/>
        <PossibleValue Value="TIM_ICPSC_DIV2" Comment="Division by 2"/>
        <PossibleValue Value="TIM_ICPSC_DIV4" Comment="Division by 4"/>
        <PossibleValue Value="TIM_ICPSC_DIV8" Comment="Division by 8"/>
    </RefParameter>
<!--IC2Filter-->
    <RefParameter Name="IC2Filter" Comment="Input Filter" DefaultValue="0" Max="15" Min="0" Type="integer" >
    </RefParameter>
<!-- ******************************** TRGO refparameter *********************************-->
<!-- TIM_MasterOutputTrigger TIMER INSTANCE DEPENDENT -->
<!-- parametrage limite pour TIM6 et TIM7-->
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="TIM_TRGO_RESET" Type="list" Group="Trigger Output (TRGO) Parameters">
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|($IpNumber=21)|($IpNumber=22)) &amp; !Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance"/>
            <PossibleValue Value="TIM_TRGO_RESET" Comment="Reset (UG bit from TIMx_EGR)"/>
            <PossibleValue Value="TIM_TRGO_ENABLE" Comment="Enable (CNT_EN)"/>
            <PossibleValue Value="TIM_TRGO_UPDATE" Comment="Update Event"/>
            <PossibleValue Value="TIM_TRGO_OC1" Comment="Compare Pulse (OC1)"/>
            <PossibleValue Value="TIM_TRGO_OC1REF" Comment="Output Compare (OC1REF)"/>
            <PossibleValue Value="TIM_TRGO_OC2REF" Comment="Output Compare (OC2REF)"/>
            <PossibleValue Value="TIM_TRGO_OC3REF" Comment="Output Compare (OC3REF)"/>
            <PossibleValue Value="TIM_TRGO_OC4REF" Comment="Output Compare (OC4REF)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="TIM_TRGO_OC2REF" Type="list" Group="Trigger Output (TRGO) Parameters" >
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|($IpNumber=21)|($IpNumber=22)) &amp; Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance"/>
            <PossibleValue Value="TIM_TRGO_OC2REF" Comment="Output Compare (OC2REF)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="TIM_TRGO_RESET" Type="list" Group="Trigger Output (TRGO) Parameters">
        <Condition Diagnostic="" Expression="($IpNumber=15)|($IpNumber=21)|($IpNumber=22)"/>
            <PossibleValue Value="TIM_TRGO_RESET" Comment="Reset (UG bit from TIMx_EGR)"/>
            <PossibleValue Value="TIM_TRGO_ENABLE" Comment="Enable (CNT_EN)"/>
            <PossibleValue Value="TIM_TRGO_UPDATE" Comment="Update Event"/>
            <PossibleValue Value="TIM_TRGO_OC1" Comment="Compare Pulse (OC1)"/>
            <PossibleValue Value="TIM_TRGO_OC1REF" Comment="Output Compare (OC1REF)"/>
            <PossibleValue Value="TIM_TRGO_OC2REF" Comment="Output Compare (OC2REF)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="TIM_TRGO_RESET" Type="list" Group="Trigger Output (TRGO) Parameters">
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)) &amp;!(STM32F0x0_Value_Line)"/>
            <PossibleValue Value="TIM_TRGO_RESET" Comment="Reset (UG bit from TIMx_EGR)"/>
            <PossibleValue Value="TIM_TRGO_ENABLE" Comment="Enable (CNT_EN)"/>
            <PossibleValue Value="TIM_TRGO_UPDATE" Comment="Update Event"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="null" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)) &amp;(STM32F0x0_Value_Line)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterOutputTrigger" Comment="Trigger Event Selection" DefaultValue="null" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="(($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterSlaveMode" Comment="Master/Slave Mode (MSM bit)" DefaultValue="TIM_MASTERSLAVEMODE_DISABLE" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="true">
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17))  &amp; !Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance"/>
            <PossibleValue Value="TIM_MASTERSLAVEMODE_DISABLE" Comment="Disable (Trigger input effect not delayed)"/>
            <PossibleValue Value="TIM_MASTERSLAVEMODE_ENABLE" Comment="Enable (Trigger delayed for master/slaves simultaneous start)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterSlaveMode" Comment="Master/Slave Mode (MSM bit)" DefaultValue="TIM_MASTERSLAVEMODE_DISABLE" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)) &amp; Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance"/>
            <PossibleValue Value="TIM_MASTERSLAVEMODE_DISABLE" Comment="Disable (Trigger input effect not delayed)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterSlaveMode" Comment="Master/Slave Mode (MSM bit)" DefaultValue="null" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="(($IpNumber=9)|($IpNumber=12)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17))"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterSlaveMode" Comment="Master/Slave Mode (MSM bit)" DefaultValue="TIM_MASTERSLAVEMODE_DISABLE" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18))&amp;!(STM32F0x0_Value_Line)"/>
            <PossibleValue Value="TIM_MASTERSLAVEMODE_DISABLE" Comment="Disable (Trigger input effect not delayed)"/>
    </RefParameter>
    <RefParameter Name="TIM_MasterSlaveMode" Comment="Master/Slave Mode (MSM bit)" DefaultValue="null" Type="list" Group="Trigger Output (TRGO) Parameters" Visible="false">
        <Condition Diagnostic="" Expression="(($IpNumber=6)|($IpNumber=7)|($IpNumber=18))&amp;(STM32F0x0_Value_Line)"/>
    </RefParameter>
<!-- ********************************Break dead time refparameter*********************************-->
<!-- all parameters only present for TIM1&TIM8-->
<!-- DeadTime, OSSR, OSSI only present if a channel has both X and XN outputs -->
    <RefParameter Name="DeadTime" Comment="Dead Time" DefaultValue="0" Max="255" Min="0" Type="integer" Group="Break And Dead Time management - Output Configuration">
        <Condition Diagnostic="" Expression="( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17) )&amp; Semaphore_output_X_XN$IpInstance )"/>
    </RefParameter>
    <RefParameter Name="DeadTime" Comment="Dead Time" DefaultValue="0" Max="0" Min="0" Type="integer" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17) )&amp; !Semaphore_output_X_XN$IpInstance )&amp; Semaphore_output_Channel$IpInstance"/>
    </RefParameter>
    <RefParameter Name="DeadTime" Comment="Dead Time" DefaultValue="null" Max="0" Min="0" Type="integer" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)) &amp;Semaphore_output_Channel$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="OffStateRunMode" Comment="Off State Selection for Run Mode (OSSR)  " DefaultValue="TIM_OSSR_DISABLE" Type="list" Group="Break And Dead Time management - Output Configuration">
        <Condition Diagnostic="" Expression="( ( (($IpNumber=1)&amp;Semaphore_OSSR_TIM_1_8_TIM1)|(($IpNumber=8)&amp;Semaphore_OSSR_TIM_1_8_TIM8)|(($IpNumber=20)&amp;Semaphore_OSSR_TIM_1_8_TIM20)|(($IpNumber=15)&amp;Semaphore_OSSR_TIM_15_16_17_TIM15)|(($IpNumber=16)&amp;Semaphore_OSSR_TIM_15_16_17_TIM16)|(($IpNumber=17)&amp;Semaphore_OSSR_TIM_15_16_17_TIM17) )&amp; Semaphore_output_Channel$IpInstance )&amp;!Semaphore_Activate_Break_Input2$IpInstance"/>
            <PossibleValue Value="TIM_OSSR_DISABLE" Comment="Disable"/>
            <PossibleValue Value="TIM_OSSR_ENABLE" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="OffStateRunMode" Comment="Off State Selection for Run Mode (OSSR)  " DefaultValue="TIM_OSSR_ENABLE" Type="list" Group="Break And Dead Time management - Output Configuration">
        <Condition Diagnostic="" Expression="( ( (($IpNumber=1)&amp;Semaphore_OSSR_TIM_1_8_TIM1)|(($IpNumber=8)&amp;Semaphore_OSSR_TIM_1_8_TIM8)|(($IpNumber=20)&amp;Semaphore_OSSR_TIM_1_8_TIM20)|(($IpNumber=15)&amp;Semaphore_OSSR_TIM_15_16_17_TIM15)|(($IpNumber=16)&amp;Semaphore_OSSR_TIM_15_16_17_TIM16)|(($IpNumber=17)&amp;Semaphore_OSSR_TIM_15_16_17_TIM17) )&amp; Semaphore_output_Channel$IpInstance )&amp;Semaphore_Activate_Break_Input2$IpInstance"/>
            <PossibleValue Value="TIM_OSSR_ENABLE" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="OffStateRunMode" Comment="Off State Selection for Run Mode (OSSR)  " DefaultValue="TIM_OSSR_DISABLE" Type="list" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="( (($IpNumber=1)&amp;!Semaphore_OSSR_TIM_1_8_TIM1)|(($IpNumber=8)&amp;!Semaphore_OSSR_TIM_1_8_TIM8)|(($IpNumber=20)&amp;!Semaphore_OSSR_TIM_1_8_TIM20)|(($IpNumber=15)&amp;!Semaphore_OSSR_TIM_15_16_17_TIM15)|(($IpNumber=16)&amp;!Semaphore_OSSR_TIM_15_16_17_TIM16)|(($IpNumber=17)&amp;!Semaphore_OSSR_TIM_15_16_17_TIM17) )&amp; Semaphore_output_Channel$IpInstance "/>
            <PossibleValue Value="TIM_OSSR_DISABLE" Comment="Disable"/>
    </RefParameter>
    <RefParameter Name="OffStateRunMode" Comment="Off State Selection for Run Mode (OSSR)  " DefaultValue="null" Type="list" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!(($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))| !Semaphore_output_Channel$IpInstance "/>
    </RefParameter>
    <RefParameter Name="OffStateIDLEMode" Comment="Off State Selection for Idle Mode (OSSI)  " DefaultValue="TIM_OSSI_DISABLE" Type="list" Group="Break And Dead Time management - Output Configuration" >
        <Condition Diagnostic="" Expression="( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17) )&amp; Semaphore_output_Channel$IpInstance )&amp;!Semaphore_Activate_Break_Input2$IpInstance"/>
            <PossibleValue Value="TIM_OSSI_DISABLE" Comment="Disable"/>
            <PossibleValue Value="TIM_OSSI_ENABLE" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="OffStateIDLEMode" Comment="Off State Selection for Idle Mode (OSSI)  " DefaultValue="TIM_OSSI_ENABLE" Type="list" Group="Break And Dead Time management - Output Configuration" >
        <Condition Diagnostic="" Expression="( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17) )&amp; Semaphore_output_Channel$IpInstance )&amp;Semaphore_Activate_Break_Input2$IpInstance"/>
            <PossibleValue Value="TIM_OSSI_ENABLE" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="OffStateIDLEMode" Comment="Off State Selection for Idle Mode (OSSI)  " DefaultValue="null" Type="list" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!( ( ($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17) )&amp; Semaphore_output_Channel$IpInstance )"/>
    </RefParameter>
<!-- LockLevel, Break State , BreakPolarity, AutomaticOutput only present if a channel is configured as output-->
    <RefParameter Name="LockLevel" Comment="Lock Configuration  " DefaultValue="TIM_LOCKLEVEL_OFF" Type="list" Group="Break And Dead Time management - Output Configuration">
        <Condition Diagnostic="" Expression="( (($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
            <PossibleValue Value="TIM_LOCKLEVEL_OFF" Comment="Off"/>
            <PossibleValue Value="TIM_LOCKLEVEL_1" Comment="Lock Level 1"/>
            <PossibleValue Value="TIM_LOCKLEVEL_2" Comment="Lock Level 2"/>
            <PossibleValue Value="TIM_LOCKLEVEL_3" Comment="Lock Level 3"/>
    </RefParameter>
    <RefParameter Name="LockLevel" Comment="Lock Configuration  " DefaultValue="null" Type="list" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
    </RefParameter>
    <RefParameter Name="BreakState" Comment="BRK State" DefaultValue="TIM_BREAK_DISABLE" Type="list" Group="Break And Dead Time management - BRK Configuration">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance &amp; !Semaphore_Activate_Break_Input$IpInstance)"/>
            <PossibleValue Value="TIM_BREAK_DISABLE" Comment="Disable"/>
            <PossibleValue Value="TIM_BREAK_ENABLE" Comment="Enable"/>
    </RefParameter>
   <RefParameter Name="BreakState" Comment="BRK State" DefaultValue="TIM_BREAK_ENABLE" Type="list" Group="Break And Dead Time management - BRK Configuration">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance &amp; Semaphore_Activate_Break_Input$IpInstance)"/>
            <PossibleValue Value="TIM_BREAK_ENABLE" Comment="Enable"/>
            <PossibleValue Value="TIM_BREAK_DISABLE" Comment="Disable"/>
    </RefParameter>
    <RefParameter Name="BreakState" Comment="BRK State" DefaultValue="null" Type="list" Group="Break And Dead Time management - BRK Configuration" Visible="false">
    <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
    </RefParameter>
    <RefParameter Name="BreakPolarity" Comment="BRK Polarity" DefaultValue="TIM_BREAKPOLARITY_HIGH" Type="list" Group="Break And Dead Time management - BRK Configuration">
       <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
            <PossibleValue Value="TIM_BREAKPOLARITY_HIGH" Comment="High"/>
            <PossibleValue Value="TIM_BREAKPOLARITY_LOW" Comment="Low"/>
    </RefParameter>
    <RefParameter Name="BreakPolarity" Comment="BRK Polarity" DefaultValue="null" Type="list" Group="Break And Dead Time management - BRK Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
    </RefParameter>
    <RefParameter Name="AutomaticOutput" Comment="Automatic Output State" DefaultValue="TIM_AUTOMATICOUTPUT_DISABLE" Type="list" Group="Break And Dead Time management - Output Configuration">
        <Condition Diagnostic="" Expression="((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
            <PossibleValue Value="TIM_AUTOMATICOUTPUT_DISABLE" Comment="Disable"/>
            <PossibleValue Value="TIM_AUTOMATICOUTPUT_ENABLE" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="AutomaticOutput" Comment="Automatic Output State" DefaultValue="null" Type="list" Group="Break And Dead Time management - Output Configuration" Visible="false">
        <Condition Diagnostic="" Expression="!((($IpNumber=1)|($IpNumber=8)|($IpNumber=20)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))&amp; Semaphore_output_Channel$IpInstance )"/>
    </RefParameter>
<!-- ********************************Clear Input*********************************-->
<!--BEGIN correction Bug 318788 -->
    <RefParameter Name="ClearInputState" Comment="Clear Input State" DefaultValue="ENABLE" Type="list" Group="Clear Input" Visible="false">
        <PossibleValue Value="ENABLE" Comment="enable"/>
    </RefParameter>
<!--END correction Bug 318788 -->
<!-- present OCREFCLR only for devices with a COMP -->
    <RefParameter Name="ClearInputSource" Comment="Clear Input Source" DefaultValue="TIM_CLEARINPUTSOURCE_ETR" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="ETR selected as clearing source" Expression="(Semaphore_ETRasClearingSource$IpInstance)"/>
            <PossibleValue Value="TIM_CLEARINPUTSOURCE_ETR" Comment="Input Source ETR"/>
    </RefParameter>
    <RefParameter Name="ClearInputSource" Comment="Clear Input Source" DefaultValue="TIM_CLEARINPUTSOURCE_NONE" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="Clear function active but ETR not selected" Expression="!Semaphore_ETRasClearingSource$IpInstance &amp;(COMP1_Exist |COMP2_Exist)"/>
            <PossibleValue Value="TIM_CLEARINPUTSOURCE_NONE" Comment="Disable" Semaphore="Semaphore_ClearingDisable$IpInstance"/>
            <PossibleValue Value="TIM_CLEARINPUTSOURCE_ETR" Comment="Input Source ETR" Semaphore="Semaphore_ETRasClearingfromconfigSource$IpInstance" Condition="!Semaphore_ETRasClearingSource$IpInstance" Diagnostic="ETR must be selected as a clearing source in the pinout view to validate this option" Action="Disable"/>
            <PossibleValue Value="TIM_CLEARINPUTSOURCE_OCREFCLR" Comment="Input Source OCREFCLR"/>
    </RefParameter>
    <RefParameter Name="ClearInputSource" Comment="Clear Input Source" DefaultValue="TIM_CLEARINPUTSOURCE_NONE" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="Clear function active but ETR not selected" Expression="!Semaphore_ETRasClearingSource$IpInstance &amp;!(COMP1_Exist |COMP2_Exist)"/>
            <PossibleValue Value="TIM_CLEARINPUTSOURCE_NONE" Comment="Disable" Semaphore="Semaphore_ClearingDisable$IpInstance"/>
    </RefParameter>
    <RefParameter Name="ClearInputPolarity" Comment="Clear Input Polarity" DefaultValue="TIM_CLEARINPUTPOLARITY_NONINVERTED" Type="list" Group="Clear Input">
        <Condition Diagnostic="ETR selected as clearing source" Expression="(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance) &amp;(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
            <PossibleValue Value="TIM_CLEARINPUTPOLARITY_NONINVERTED" Comment="Non inverted"/>
            <PossibleValue Value="TIM_CLEARINPUTPOLARITY_INVERTED" Comment="Inverted"/>
    </RefParameter>
    <RefParameter Name="ClearInputPrescaler" Comment="Clear Input Prescaler" DefaultValue="TIM_CLEARINPUTPRESCALER_DIV1" Type="list" Group="Clear Input">
        <Condition Diagnostic="ETR selected as clearing source" Expression="(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance) &amp;(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
            <PossibleValue Value="TIM_CLEARINPUTPRESCALER_DIV1" Comment="No division"/>
            <PossibleValue Value="TIM_CLEARINPUTPRESCALER_DIV2" Comment="Division by 2"/>
            <PossibleValue Value="TIM_CLEARINPUTPRESCALER_DIV4" Comment="Division by 4"/>
            <PossibleValue Value="TIM_CLEARINPUTPRESCALER_DIV8" Comment="Division by 8"/>
    </RefParameter>
    <RefParameter Name="ClearInputFilter" Comment="Clear Input Filter" DefaultValue="0" Max="15" Min="0" Type="integer" Group="Clear Input">
        <Condition Diagnostic="ETR selected as clearing source" Expression="(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance)&amp;(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ClearInputPolarity" Comment="Clear Input Polarity" DefaultValue="null" Type="list" Group="Clear Input" Visible="false" >
        <Condition Diagnostic="ETR selected as clearing source" Expression="!(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance)| !(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ClearInputPrescaler" Comment="Clear Input Prescaler" DefaultValue="null" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="ETR selected as clearing source" Expression="!(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance)| !(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
    </RefParameter>
    <RefParameter Name="ClearInputFilter" Comment="Clear Input Filter" DefaultValue="null" Max="0" Min="0" Type="integer" Group="Clear Input" Visible="false">
        <Condition Diagnostic="ETR selected as clearing source" Expression="!(Semaphore_ETRasClearingfromconfigSource$IpInstance | Semaphore_ETRasClearingSource$IpInstance)| !(Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance|Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance|Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance|Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance|Semaphore_ClearChannel5_TIM_CHANNEL_5_$IpInstance|Semaphore_ClearChannel6_TIM_CHANNEL_6_$IpInstance)"/>
    </RefParameter>
<!-- ClearChannelx only present if channelx is configured as output-->
<!-- Clear Channel ONE ref parameters-->
    <RefParameter Name="ClearChannel__1" Comment="Clear Channel 1" DefaultValue="TIM_CHANNEL_1" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance" />
            <PossibleValue Value="TIM_CHANNEL_1" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel__1" Comment="Clear Channel 1" DefaultValue="null" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance" />
    </RefParameter>
    <RefParameter Name="ClearChannel1" Comment="Clear Channel 1" DefaultValue="" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="" Expression="(Semaphore_output_Channel1$IpInstance &amp; (!Semaphore_forced_output_Channel1$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))"/>
        <PossibleValue Value="" Comment="Disable"/>
        <PossibleValue Value="TIM_CHANNEL_1" Semaphore="Semaphore_ClearChannel1_TIM_CHANNEL_1_$IpInstance" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel1" Comment="Clear Channel 1" DefaultValue="" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!(Semaphore_output_Channel1$IpInstance  &amp; (!Semaphore_forced_output_Channel1$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
        <PossibleValue Value="" Comment="Disable"/>
    </RefParameter>
<!-- Clear Channel TWO ref parameters-->
    <RefParameter Name="ClearChannel__2" Comment="Clear Channel 2" DefaultValue="TIM_CHANNEL_2" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance" />
            <PossibleValue Value="TIM_CHANNEL_2" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel__2" Comment="Clear Channel 2" DefaultValue="null" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance" />
    </RefParameter>
    <RefParameter Name="ClearChannel2" Comment="Clear Channel 2" DefaultValue="" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="" Expression="(Semaphore_output_Channel2$IpInstance &amp; (!Semaphore_forced_output_Channel2$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_2" Semaphore="Semaphore_ClearChannel2_TIM_CHANNEL_2_$IpInstance" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel2" Comment="Clear Channel 2" DefaultValue="" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!(Semaphore_output_Channel2$IpInstance &amp; (!Semaphore_forced_output_Channel2$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_2" Comment="Enable"/>
    </RefParameter>
<!-- Clear Channel THREE ref parameters-->
    <RefParameter Name="ClearChannel__3" Comment="Clear Channel 3" DefaultValue="TIM_CHANNEL_3" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance" />
            <PossibleValue Value="TIM_CHANNEL_3" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel__3" Comment="Clear Channel 3" DefaultValue="null" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance" />
    </RefParameter>
    <RefParameter Name="ClearChannel3" Comment="Clear Channel 3" DefaultValue="" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="" Expression="(Semaphore_output_Channel3$IpInstance &amp; (!Semaphore_forced_output_Channel3$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_3" Semaphore="Semaphore_ClearChannel3_TIM_CHANNEL_3_$IpInstance" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel3" Comment="Clear Channel 3" DefaultValue="" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!(Semaphore_output_Channel3$IpInstance &amp; (!Semaphore_forced_output_Channel3$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_3" Comment="Enable"/>
    </RefParameter>
<!-- Clear Channel FOUR ref parameters-->
    <RefParameter Name="ClearChannel__4" Comment="Clear Channel 4" DefaultValue="TIM_CHANNEL_4" Type="list" Group="Clear Input" Visible="false">
            <Condition Diagnostic="" Expression="Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance" />
            <PossibleValue Value="TIM_CHANNEL_4" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel__4" Comment="Clear Channel 4" DefaultValue="null" Type="list" Group="Clear Input" Visible="false">
        <Condition Diagnostic="" Expression="!Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance" />
    </RefParameter>
    <RefParameter Name="ClearChannel4" Comment="Clear Channel 4" DefaultValue="" Type="list" Group="Clear Input" Visible="true">
        <Condition Diagnostic="" Expression="(Semaphore_output_Channel4$IpInstance &amp; (!Semaphore_forced_output_Channel4$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_4" Semaphore="Semaphore_ClearChannel4_TIM_CHANNEL_4_$IpInstance" Comment="Enable"/>
    </RefParameter>
    <RefParameter Name="ClearChannel4" Comment="Clear Channel 4" DefaultValue="" Type="list" Group="Clear Input" Visible="false">
       <Condition Diagnostic="" Expression="!(Semaphore_output_Channel4$IpInstance &amp; (!Semaphore_forced_output_Channel4$IpInstance) &amp; (!Semaphore_ClearingDisable$IpInstance))" />
            <PossibleValue Value="" Comment="Disable"/>
            <PossibleValue Value="TIM_CHANNEL_4" Comment="Enable"/>
    </RefParameter>
<!-- ***********************************************************************************-->
<!-- ********************************hallSensor refparameter*********************************-->
    <RefParameter Name="Commutation_Delay" Comment="Commutation Delay" DefaultValue="0" Max="65535" Min="0" Type="integer">
    </RefParameter>
<!-- *******************************TI1_selection refparameter (XOR)*********************************-->
    <RefParameter Name="TI1_Selection" Comment="TI1_Selection" DefaultValue="TIM_TI1SELECTION_XORCOMBINATION" Type="list">
            <PossibleValue Value="TIM_TI1SELECTION_XORCOMBINATION" Comment="XOR enabled"/>
            <PossibleValue Value="TIM_TI1SELECTION_CH1" Comment="XOR disabled"/>
    </RefParameter>
<!-- *******************************REMAP Functions*********************************-->
<!-- for TIM14 of F0 family -->
    <RefParameter Name="TIM14_TI1_REMAP" Comment="TI1 remap capabilities for TIM14" DefaultValue="TIM_TIM14_MCO" Type="list" Group="TI1 remap capabilities for TIM14">
            <PossibleValue Value="TIM_TIM14_RTC" Comment="TIM14 Channel 1 is connected to RTC_clock" Semaphore="SEM2RCC_RTC_clock_REQUIRED_$IpInstance" Condition="!RTCUsed_ForRCC" Action="Disable" Diagnostic="RTC IP must be active to enable this remap"/>
            <PossibleValue Value="TIM_TIM14_HSE" Comment="TIM14 Channel 1 is connected to HSE/32" Semaphore="SEM2RCC_HSE_REQUIRED_$IpInstance" Condition="!(HSEOscillator|HSEByPass)" Action="Disable" Diagnostic="HSE Oscillator must be activated in the RCC IP (Pinout view)"/>
            <PossibleValue Value="TIM_TIM14_MCO" Comment="TIM14 Channel 1 is connected to MCO" Semaphore="SEM2RCC_MCO_REQUIRED_$IpInstance"/>
    </RefParameter>
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ REF MODE \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
<!-- ***********************************************************************************-->
    <RefMode Name="Empty" HalMode ="TIM" >
    </RefMode>
<!-- ***********************************************************************************-->
    <RefMode Name="Counter_init" HalMode ="TIM" Abstract="true">
        <Condition Diagnostic="" Expression="!(Semaphore_clearable$IpInstance &amp;!(($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)))"/>
            <Parameter Name="Prescaler" />
            <Parameter Name="CounterMode" />
            <Parameter Name="Period" />
            <Parameter Name="ClockDivision" />
            <Parameter Name="RepetitionCounter" />
            <Parameter Name="AutoReloadPreload" />
            <Parameter Name="TIM_MasterSlaveMode" />
            <Parameter Name="TIM_MasterOutputTrigger" />
            <Parameter Name="BreakState" />
            <Parameter Name="BreakPolarity" />
            <Parameter Name="AutomaticOutput" />
            <Parameter Name="OffStateRunMode" />
            <Parameter Name="OffStateIDLEMode" />
            <Parameter Name="LockLevel" />
            <Parameter Name="DeadTime" />
            <Parameter Name="ClockFilter" />
    </RefMode>
    <RefMode Name="Counter_init" HalMode ="TIM" Abstract="true">
        <Condition Diagnostic="" Expression="Semaphore_clearable$IpInstance &amp;!(($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17))"/>
            <Parameter Name="Prescaler" />
            <Parameter Name="CounterMode" />
            <Parameter Name="Period" />
            <Parameter Name="ClockDivision" />
            <Parameter Name="RepetitionCounter" />
            <Parameter Name="AutoReloadPreload" />
            <Parameter Name="TIM_MasterSlaveMode" />
            <Parameter Name="TIM_MasterOutputTrigger" />
            <!-- TIM_MasterOutputTrigger2 Not for F0 devices -->
            <Parameter Name="BreakState" />
            <Parameter Name="BreakPolarity" />
           <Parameter Name="AutomaticOutput" />
           <Parameter Name="OffStateRunMode" />
           <Parameter Name="OffStateIDLEMode" />
           <Parameter Name="LockLevel" />
           <Parameter Name="DeadTime" />
           <Parameter Name="ClockFilter" />
            <ConfigForMode>ConfigOCrefClear1</ConfigForMode>
            <ConfigForMode>ConfigOCrefClear2</ConfigForMode>
            <ConfigForMode>ConfigOCrefClear3</ConfigForMode>
            <ConfigForMode>ConfigOCrefClear4</ConfigForMode>
            <Parameter Name="ClearInputState" />
            <Parameter Name="ClearInputSource" />
            <Parameter Name="ClearInputPolarity" />
            <Parameter Name="ClearInputPrescaler" />
            <Parameter Name="ClearInputFilter" />
            <Parameter Name="ClearChannel1" />
            <Parameter Name="ClearChannel2" />
            <Parameter Name="ClearChannel3" />
            <Parameter Name="ClearChannel4" />
    </RefMode>
<!-- ***********************************************************************************-->
    <RefMode Name="TRGO_use" HalMode ="TIM" Group="TRGO configuration">
            <Parameter Name="TIM_MasterOutputTrigger" />
            <Parameter Name="TIM_MasterSlaveMode" />
    </RefMode>
<!-- *********************** for timers 6&7&10&11&13&14 ********************************************-->
    <RefMode BaseMode ="Counter_init" Name="Enable_Timer" HalMode ="TIM_Base">
            <ConfigForMode>Base_Init</ConfigForMode>
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
<!-- ***********************************************************************************-->
    <RefMode BaseMode ="Input_Capture1_from_TI1" Name="Input_Capture1_from_TI1_TIM1_COMP"/>
    <RefMode BaseMode ="Input_Capture1_from_TI1" Name="Input_Capture1_from_TI1_TIM3_COMP"/>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture1_from_TI1" HalMode ="TIM_IC" Group="Input Capture Channel 1">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>IC_Init</ConfigForMode>
            <ConfigForMode>IC_ConfigChannel_CH1</ConfigForMode>
            <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
            </Parameter>
            <Parameter Name="ICPolarity_CH1" />
            <Parameter Name="ICSelection" >
                <PossibleValue>TIM_ICSELECTION_DIRECTTI</PossibleValue>
            </Parameter>
            <Parameter Name="ICPrescaler" />
            <Parameter Name="ICFilter_CH1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture1_from_TI1_REMAP_TIM14" HalMode ="TIM_IC" Group="Input Capture Channel 1">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>IC_Init</ConfigForMode>
            <ConfigForMode>IC_ConfigChannel_CH1</ConfigForMode>
            <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
            </Parameter>
            <Parameter Name="ICPolarity_CH1" />
            <Parameter Name="ICSelection" >
                <PossibleValue>TIM_ICSELECTION_DIRECTTI</PossibleValue>
            </Parameter>
            <Parameter Name="ICPrescaler" />
            <Parameter Name="ICFilter_CH1" />
            <ConfigForMode>RemapConfig_TIM14_TI1</ConfigForMode>
            <Parameter Name="TIM14_TI1_REMAP" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture1_from_TI2" HalMode ="TIM_IC" Group="Input Capture Channel 1">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>IC_Init</ConfigForMode>
            <ConfigForMode>IC_ConfigChannel_CH1</ConfigForMode>
            <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
            </Parameter>
            <Parameter Name="ICPolarity_CH1" />
            <Parameter Name="ICSelection" >
                <PossibleValue>TIM_ICSELECTION_INDIRECTTI</PossibleValue>
            </Parameter>
            <Parameter Name="ICPrescaler" />
            <Parameter Name="ICFilter_CH1" />
     </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture1_from_TRC" HalMode ="TIM_IC" Group="Input Capture Channel 1">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>IC_Init</ConfigForMode>
            <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
            <ConfigForMode>IC_ConfigChannel_TRC1</ConfigForMode>
            <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
            </Parameter>
            <Parameter Name="ICPolarity_TRC" />
            <Parameter Name="ICSelection_TRC" >
                <PossibleValue>TIM_ICSELECTION_TRC</PossibleValue>
            </Parameter>
            <Parameter Name="ICPrescaler" />
            <Parameter Name="ICFilter_TRC_TI1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture2_from_TI2" HalMode ="TIM_IC" Group="Input Capture Channel 2">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>IC_Init</ConfigForMode>
            <ConfigForMode>IC_ConfigChannel_CH2</ConfigForMode>
            <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
            </Parameter>
            <Parameter Name="ICPolarity_CH2" />
            <Parameter Name="ICSelection" >
                <PossibleValue>TIM_ICSELECTION_DIRECTTI</PossibleValue>
            </Parameter>
            <Parameter Name="ICPrescaler" />
            <Parameter Name="ICFilter_CH2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture2_from_TI1" HalMode ="TIM_IC" Group="Input Capture Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_CH2</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_CH2" />
           <Parameter Name="ICSelection" >
               <PossibleValue>TIM_ICSELECTION_INDIRECTTI</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_CH2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture2_from_TRC" HalMode ="TIM_IC" Group="Input Capture Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_TRC2</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_TRC" />
           <Parameter Name="ICSelection_TRC" >
               <PossibleValue>TIM_ICSELECTION_TRC</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_TRC_TI2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture3_from_TI3" HalMode ="TIM_IC" Group="Input Capture Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_CH3</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_CH3" />
           <Parameter Name="ICSelection" >
               <PossibleValue>TIM_ICSELECTION_DIRECTTI</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_CH3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture3_from_TI4" HalMode ="TIM_IC" Group="Input Capture Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_CH3</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_3</PossibleValue>
          </Parameter>
           <Parameter Name="ICPolarity_CH3" />
           <Parameter Name="ICSelection" >
               <PossibleValue>TIM_ICSELECTION_INDIRECTTI</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_CH3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture3_from_TRC" HalMode ="TIM_IC" Group="Input Capture Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_TRC3</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_TRC" />
           <Parameter Name="ICSelection_TRC" >
               <PossibleValue>TIM_ICSELECTION_TRC</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_TRC_TI3" />
    </RefMode>
    <RefMode BaseMode ="Input_Capture4_from_TI4" Name="Input_Capture4_from_TI4_TIM2_COMP"/>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture4_from_TI4" HalMode ="TIM_IC" Group="Input Capture Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_CH4</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_CH4" />
           <Parameter Name="ICSelection" >
               <PossibleValue>TIM_ICSELECTION_DIRECTTI</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_CH4" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture4_from_TI3" HalMode ="TIM_IC" Group="Input Capture Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_CH4</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_CH4" />
           <Parameter Name="ICSelection" >
               <PossibleValue>TIM_ICSELECTION_INDIRECTTI</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_CH4" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Input_Capture4_from_TRC" HalMode ="TIM_IC" Group="Input Capture Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
           <ConfigForMode>IC_Init</ConfigForMode>
           <ConfigForMode>IC_ConfigChannel_TRC4</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="ICPolarity_TRC" />
           <Parameter Name="ICSelection_TRC" >
               <PossibleValue>TIM_ICSELECTION_TRC</PossibleValue>
           </Parameter>
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter_TRC_TI4" />
    </RefMode>
<!--****************************** Refmode OutputCompare ******************************-->
    <RefMode BaseMode ="Counter_init" Name="Output Compare1 No Output" HalMode ="TIM_OC" Group="Output Compare No Output Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare2 No Output" HalMode ="TIM_OC" Group="Output Compare No Output Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare3 No Output" HalMode ="TIM_OC" Group="Output Compare No Output Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_3" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare4 No Output" HalMode ="TIM_OC" Group="Output Compare No Output Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_4</ConfigForMode>
     <ConfigForMode>setOC4Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_4" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC4Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_4" />
           <Parameter Name="OCIdleState_4" />
           <Parameter Name="OCNIdleState_4" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare1 CH1" HalMode ="TIM_OC" Group="Output Compare Channel 1">
<!---->
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare2 CH2" HalMode ="TIM_OC" Group="Output Compare Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare3 CH3" HalMode ="TIM_OC" Group="Output Compare Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_3" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare4 CH4" HalMode ="TIM_OC" Group="Output Compare Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_4</ConfigForMode>
     <ConfigForMode>setOC4Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_4" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC4Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_4" />
           <Parameter Name="OCIdleState_4" />
           <Parameter Name="OCNIdleState_4" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare1 CH1N" HalMode ="TIM_OC" Group="Output Compare Channel 1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare2 CH2N" HalMode ="TIM_OC" Group="Output Compare Channel 2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare3 CH3N" HalMode ="TIM_OC" Group="Output Compare Channel 3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_3" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare1 CH1 CH1N" HalMode ="TIM_OC" Group="Output Compare Channel 1 and 1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare2 CH2 CH2N" HalMode ="TIM_OC" Group="Output Compare Channel 2 and 2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Output Compare3 CH3 CH3N" HalMode ="TIM_OC" Group="Output Compare Channel 3 and 3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_3" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
     </RefMode>
<!--******************************END Refmode OutputCompare ******************************-->
<!--****************************** Refmode Forced Output ******************************-->
    <RefMode BaseMode ="Counter_init" Name="Forced Output1 CH1" HalMode ="TIM_OC" Group="Forced Output Channel 1">
<!---->
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output2 CH2" HalMode ="TIM_OC" Group="Forced Output Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output3 CH3" HalMode ="TIM_OC" Group="Forced Output Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output4 CH4" HalMode ="TIM_OC" Group="Forced Output Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_4</ConfigForMode>
     <ConfigForMode>setOC4Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC4Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_4" />
           <Parameter Name="OCIdleState_4" />
           <Parameter Name="OCNIdleState_4" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output1 CH1N" HalMode ="TIM_OC" Group="Forced Output Channel 1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output2 CH2N" HalMode ="TIM_OC" Group="Forced Output Channel 2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output3 CH3N" HalMode ="TIM_OC" Group="Forced Output Channel 3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output1 CH1 CH1N" HalMode ="TIM_OC" Group="Forced Output Channel 1 and  1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output2 CH2 CH2N" HalMode ="TIM_OC" Group="Forced Output Channel 2 and  2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="Forced Output3 CH3 CH3N" HalMode ="TIM_OC" Group="Forced Output Channel 3 and  3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OC_Init</ConfigForMode>
           <ConfigForMode>OC_ConfigChannel_forced_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_OC</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_forced"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload" />
           <Parameter Name="DefaultOCFastMode" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
<!--******************************END Refmode Forced Output ******************************-->
<!--****************************Ref mode PWM*******************************-->
    <RefMode BaseMode ="Counter_init" Name="PWM Generation1 CH1" HalMode ="TIM_OC" Group="PWM Generation Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation2 CH2" HalMode ="TIM_OC" Group="PWM Generation Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation3 CH3" HalMode ="TIM_OC" Group="PWM Generation Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation4 CH4" HalMode ="TIM_OC" Group="PWM Generation Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_4</ConfigForMode>
     <ConfigForMode>setOC4Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC4Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_4" />
           <Parameter Name="OCIdleState_4" />
           <Parameter Name="OCNIdleState_4" />
    </RefMode>
     <!-- debut retravail ajout PWM no output-->
    <RefMode BaseMode ="Counter_init" Name="PWM Generation1 No Output" HalMode ="TIM_OC" Group="PWM Generation Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation2 No Output" HalMode ="TIM_OC" Group="PWM Generation Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation3 No Output" HalMode ="TIM_OC" Group="PWM Generation Channel 3">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation4 No Output" HalMode ="TIM_OC" Group="PWM Generation Channel 4">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_4</ConfigForMode>
     <ConfigForMode>setOC4Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_4</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM" />
           <Parameter Name="Pulse" />
     <Parameter Name="OC4Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_4" />
           <Parameter Name="OCIdleState_4" />
           <Parameter Name="OCNIdleState_4" />
    </RefMode>
<!-- fin retravail ajout PWM no output-->
    <RefMode BaseMode ="Counter_init" Name="PWM Generation1 CH1N" HalMode ="TIM_OC" Group="PWM Generation Channel 1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation2 CH2N" HalMode ="TIM_OC" Group="PWM Generation Channel 2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation3 CH3N" HalMode ="TIM_OC" Group="PWM Generation Channel 3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation1 CH1 CH1N" HalMode ="TIM_OC" Group="PWM Generation Channel 1 and 1N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_1</ConfigForMode>
     <ConfigForMode>setOC1Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
               <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC1Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation2 CH2 CH2N" HalMode ="TIM_OC" Group="PWM Generation Channel 2 and 2N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_2</ConfigForMode>
     <ConfigForMode>setOC2Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC2Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="PWM Generation3 CH3 CH3N" HalMode ="TIM_OC" Group="PWM Generation Channel 3 and 3N">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Init</ConfigForMode>
           <ConfigForMode>PWM_ConfigChannel_3</ConfigForMode>
     <ConfigForMode>setOC3Preload_PWM</ConfigForMode>
           <Parameter Name="Channel" >
                <PossibleValue>TIM_CHANNEL_3</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_PWM"/>
           <Parameter Name="Pulse" />
     <Parameter Name="OC3Preload_PWM" />
           <Parameter Name="OCFastMode_PWM" />
           <Parameter Name="OCPolarity_3" />
           <Parameter Name="OCNPolarity_3" />
           <Parameter Name="OCIdleState_3" />
           <Parameter Name="OCNIdleState_3" />
    </RefMode>
<!--******************************END Refmode PWM ******************************-->
<!--****************************Ref mode OnePulse*******************************-->
    <RefMode BaseMode ="Counter_init" Name="OPM_bit" HalMode ="TIM_OC" Group="Counter Settings">
             <ConfigForMode>OnePulse_Init</ConfigForMode>
             <Parameter Name="TIM_OnePulse_Mode"/>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation1-CH1" HalMode ="TIM_OC" Group="One Pulse Generation Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_1</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation2-CH2" HalMode ="TIM_OC" Group="One Pulse Generation Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_2</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation1-CH1N" HalMode ="TIM_OC" Group="One Pulse Generation Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_1</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation2-CH2N" HalMode ="TIM_OC" Group="One Pulse Generation Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_2</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation1-CH1-CH1N" HalMode ="TIM_OC" Group="One Pulse Generation Channel 1">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_1</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_1" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_1" />
           <Parameter Name="OCNPolarity_1" />
           <Parameter Name="OCIdleState_1" />
           <Parameter Name="OCNIdleState_1" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="One-Pulse-Generation2-CH2-CH2N" HalMode ="TIM_OC" Group="One Pulse Generation Channel 2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>OPM_ConfigChannel_2</ConfigForMode>
           <Parameter Name="Output_Channel" >
                <PossibleValue>TIM_CHANNEL_2</PossibleValue>
           </Parameter>
           <Parameter Name="Input_Channel" >
                <PossibleValue>TIM_CHANNEL_1</PossibleValue>
           </Parameter>
           <Parameter Name="OCMode_2" />
           <Parameter Name="Pulse" />
           <Parameter Name="OCPolarity_2" />
           <Parameter Name="OCNPolarity_2" />
           <Parameter Name="OCIdleState_2" />
           <Parameter Name="OCNIdleState_2" />
           <Parameter Name="ICPolarity" />
           <Parameter Name="ICSelection" />
           <Parameter Name="ICPrescaler" />
           <Parameter Name="ICFilter" />
    </RefMode>
<!--******************************END Refmode OnePulse ******************************-->
<!--****************************Ref mode Xored HAll Sensor*******************************-->
    <RefMode BaseMode="Counter_init" Name="Xored_Inputs_Hall_Sensor_Interface" HalMode="TIM_HallSensor" Group="Hall Sensor">
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
            <ConfigForMode>HallSensor_Init</ConfigForMode>
 <!-- <ConfigForMode>OnePulse_ConfigChannel</ConfigForMode>-->
            <Parameter Name="IC1Prescaler" />
            <Parameter Name="IC1Polarity" />
            <Parameter Name="IC1Filter" />
            <Parameter Name="Commutation_Delay" />
    </RefMode>
<!--****************************END Ref mode Xored HAll Sensor*******************************-->
 <!--HAL_TIM_Encoder_Init-->
    <RefMode BaseMode ="Counter_init" Name="Encoder_Interface" HalMode ="TIM_Encoder" Group="Encoder">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>Encoder_Init</ConfigForMode>
           <Parameter Name="EncoderMode" />
           <Parameter Name="Separateur-channel1-nonParameter" />
           <Parameter Name="IC1Polarity" />
           <Parameter Name="IC1Selection" />
           <Parameter Name="IC1Prescaler" />
           <Parameter Name="IC1Filter" />
           <Parameter Name="Separateur-channel2-nonParameter" />
           <Parameter Name="IC2Polarity" />
           <Parameter Name="IC2Selection" />
           <Parameter Name="IC2Prescaler" />
           <Parameter Name="IC2Filter" />
    </RefMode>
<!--**************************** PWM input CH1 *******************************-->
    <RefMode BaseMode ="Counter_init" Name="PWM_Input_1" HalMode ="" Group="PWM Input CH1 ">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Input_mode_CH1</ConfigForMode>
           <Parameter Name="TIM_InputTrigger_List" >
               <PossibleValue>TIM_TS_TI1FP1</PossibleValue>
           </Parameter>
           <Parameter Name="TIM_SlaveMode_List" >
               <PossibleValue>TIM_SLAVEMODE_RESET</PossibleValue>
           </Parameter>
           <Parameter Name="Separateur-channel1-nonParameter" />
           <Parameter Name="Channel_1" />
           <Parameter Name="ICPolarity_1" />
           <Parameter Name="ICSelection_1" />
           <Parameter Name="ICPrescaler_1" />
           <Parameter Name="ICFilter_1" />
           <Parameter Name="Separateur-channel2-nonParameter" />
           <Parameter Name="Channel_2" />
           <Parameter Name="ICPolarity_2" />
           <Parameter Name="ICSelection_2" />
           <Parameter Name="ICPrescaler_2" />
           <Parameter Name="ICFilter_2" />
    </RefMode>
<!--**************************** PWM input CH2 *******************************-->
    <RefMode BaseMode ="Counter_init" Name="PWM_Input_2" HalMode ="" Group="PWM Input CH2">
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
           <ConfigForMode>PWM_Input_mode_CH2</ConfigForMode>
           <Parameter Name="TIM_InputTrigger_List" >
              <PossibleValue>TIM_TS_TI2FP2</PossibleValue>
           </Parameter>
           <Parameter Name="TIM_SlaveMode_List" >
                <PossibleValue>TIM_SLAVEMODE_RESET</PossibleValue>
           </Parameter>
           <Parameter Name="Separateur-channel1-nonParameter" />
           <Parameter Name="Channel_1" />
           <Parameter Name="ICPolarity_1" />
           <Parameter Name="ICSelection_1" />
           <Parameter Name="ICPrescaler_1" />
           <Parameter Name="ICFilter_1" />
           <Parameter Name="Separateur-channel2-nonParameter" />
           <Parameter Name="Channel_2" />
           <Parameter Name="ICPolarity_2" />
           <Parameter Name="ICSelection_2" />
           <Parameter Name="ICPrescaler_2" />
           <Parameter Name="ICFilter_2" />
    </RefMode>
<!--********************* RefMode for reset gated clock trigger SMS/TS *******************************-->
    <RefMode BaseMode ="Counter_init" Name="Internal" HalMode ="TIM_Base">
            <ConfigForMode>ConfigClockSource</ConfigForMode>
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ClockSourceETR_Mode2" HalMode ="TIM_Base">
           <Parameter Name="ClockPolarity" >
                <PossibleValue>TIM_CLOCKPOLARITY_INVERTED</PossibleValue>
                <PossibleValue>TIM_CLOCKPOLARITY_NONINVERTED</PossibleValue>
           </Parameter>
           <Parameter Name="ClockPrescaler" >
                <PossibleValue>TIM_CLOCKPRESCALER_DIV1</PossibleValue>
                <PossibleValue>TIM_CLOCKPRESCALER_DIV2</PossibleValue>
                <PossibleValue>TIM_CLOCKPRESCALER_DIV4</PossibleValue>
                <PossibleValue>TIM_CLOCKPRESCALER_DIV8</PossibleValue>
           </Parameter>
<!-- <Parameter Name="ClockFilter" />-->
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ITR0" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ITR1" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ITR2" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ITR3" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ClockSourceTI1ED" HalMode ="TIM_Base">
           <Parameter Name="ClockPolarity" >
           <PossibleValue>TIM_CLOCKPOLARITY_BOTHEDGE</PossibleValue>
           </Parameter>
<!-- <Parameter Name="ClockFilter" />-->
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ClockSourceTI1FP1" HalMode ="TIM_Base">
            <Parameter Name="ClockPolarity" >
            <PossibleValue>TIM_CLOCKPOLARITY_RISING</PossibleValue>
            <PossibleValue>TIM_CLOCKPOLARITY_FALLING</PossibleValue>
            <PossibleValue>TIM_CLOCKPOLARITY_BOTHEDGE</PossibleValue>
            </Parameter>
<!-- <Parameter Name="ClockFilter" />-->
            <ConfigForMode>ConfigClockSource</ConfigForMode>
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="ClockSourceTI2FP2" HalMode ="TIM_Base">
            <Parameter Name="ClockPolarity" >
            <PossibleValue>TIM_CLOCKPOLARITY_RISING</PossibleValue>
            <PossibleValue>TIM_CLOCKPOLARITY_FALLING</PossibleValue>
            <PossibleValue>TIM_CLOCKPOLARITY_BOTHEDGE</PossibleValue>
            </Parameter>
<!-- <Parameter Name="ClockFilter" />-->
            <ConfigForMode>ConfigClockSource</ConfigForMode>
            <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
            <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
<!-- AJOUT POUR PARTIR DES TRIGGER SOURCE ET PLUS DES MODES -->
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ITR0" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ITR1" HalMode ="TIM_Base">
           <Condition Diagnostic="" Expression="!($IpNumber=2)"/>
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ITR1" HalMode ="TIM_Base">
           <Condition Diagnostic="" Expression="($IpNumber=2)"/>
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ITR2" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ITR3" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_TI1ED" HalMode ="TIM_Base">
        <ConfigForMode>ConfigClockSource</ConfigForMode>
        <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
            <Parameter Name="Slave_TriggerPolarity" />
            <Parameter Name="Slave_TriggerPrescaler" />
            <Parameter Name="Slave_TriggerFilter" />
            <Parameter Name="TIM_SlaveMode" />
        <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
        <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_ETR" HalMode ="TIM_Base">
        <ConfigForMode>ConfigClockSource</ConfigForMode>
        <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
            <Parameter Name="Slave_TriggerPolarity" />
            <Parameter Name="Slave_TriggerPrescaler" />
            <Parameter Name="Slave_TriggerFilter" />
            <Parameter Name="TIM_SlaveMode" />
        <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
        <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_TI1FP1" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
    <RefMode BaseMode ="Counter_init" Name="TriggerSource_TI2FP2" HalMode ="TIM_Base">
           <ConfigForMode>ConfigClockSource</ConfigForMode>
           <ConfigForMode>SlaveConfigSynchronization</ConfigForMode>
               <Parameter Name="Slave_TriggerPolarity" />
               <Parameter Name="Slave_TriggerPrescaler" />
               <Parameter Name="Slave_TriggerFilter" />
               <Parameter Name="TIM_SlaveMode" />
           <ConfigForMode>TIM_MasterConfigSynchronization</ConfigForMode>
           <ConfigForMode>TIM_ConfigBreakDeadTime</ConfigForMode>
    </RefMode>
<!--********************* RefMode for Clearing OCxref via ETR *******************************-->
<!--********************* RefMode for XOR Gate Activation *******************************-->
    <RefMode BaseMode ="Empty" Name="XOR_enable" HalMode ="">
            <ConfigForMode>ConfigTI1Input</ConfigForMode>
    </RefMode>
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ MODES \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
<!--/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\-->
    <ModeLogicOperator Name="OR">
        <Mode Name="Activated" RemoveCondition="($IpNumber=1)|($IpNumber=2)|($IpNumber=3)|($IpNumber=4)|($IpNumber=5)|($IpNumber=8)|($IpNumber=9)|($IpNumber=12)|($IpNumber=15)|($IpNumber=19)|($IpNumber=20)|($IpNumber=21)|($IpNumber=22)|($IpNumber=23)|($IpNumber=24)">
            <ModeLogicOperator Name="OR">
                <Mode Name="Enable_Timer">
                    <Semaphore>Semaphore_ClockSourceInternal$IpInstance</Semaphore>
                    <Semaphore>Semaphore_Activated$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceINT"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
            <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
        </Mode>
        <Mode Name="Controller_Mode" UserName="Slave Mode">
            <Semaphore>Semaphore_ControllerMode$IpInstance</Semaphore>
            <Semaphore>Semaphore_ETH_ControllerMode$IpInstance</Semaphore>
            <Condition Expression="!Semaphore_Multi_Channels$IpInstance" Diagnostic="Not valid while a Combined_Channel is active"/>
            <Condition Expression="!Semaphore_One_Pulse_Generation$IpInstance" Diagnostic="Not valid while OnePulse mode is active"/>
            <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Clock Mode" UserName="External Clock Mode 1" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                    <Semaphore>Semaphore_SMC_Clock$IpInstance</Semaphore>
                    <Condition Expression="!(Semaphore_Multi_Channels$IpInstance)" Diagnostic="Controller function is fully managed by Combined_Channel mode"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ControllerModeClock"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Reset Mode" UserName="Reset Mode" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                    <Semaphore>Semaphore_SMC_Reset$IpInstance</Semaphore>
                    <Condition Expression="!(Semaphore_Multi_Channels$IpInstance)" Diagnostic="Controller function is fully managed by Combined_Channel mode"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ControllerModeReset"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Gated Mode" UserName="Gated Mode" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                    <Semaphore>Semaphore_SMC_Gated$IpInstance</Semaphore>
                    <Condition Expression="!(Semaphore_Multi_Channels$IpInstance+Semaphore_TriggerSourceTI1ED$IpInstance)" Diagnostic="Controller function is fully managed by Combined_Channel mode / TI1ED can not be used in gated mode"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ControllerModeGated"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Trigger Mode" UserName="Trigger Mode" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                    <Semaphore>Semaphore_SMC_Trigger$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ControllerModeTrigger"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="Trigger Source" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
            <Condition Expression="!Semaphore_One_Pulse_Generation$IpInstance" Diagnostic="Trigger source selection is fully managed by One Pulse generation mode" />
            <Condition Expression="!Semaphore_Multi_Channels$IpInstance" Diagnostic="Trigger source selection is fully managed by the Combined Channels selected mode" />
            <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
                        <Semaphore>Semaphore_TriggerSource$IpInstance</Semaphore>
                        <Semaphore>Semaphore_Trigger_DMA_Enable$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
                <Mode Name="TriggerSource_ITR0" UserName="ITR0" >
                                        <Semaphore>Semaphore_TriggerSourceITR0$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_SourceTRC$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceITR"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_ITR1" UserName="ITR1" >
                                        <Semaphore>Semaphore_TriggerSourceITR1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ETH_TriggerSourceITR1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_SourceTRC$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceITR"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_ITR2" UserName="ITR2" RemoveCondition="($IpNumber=21)|($IpNumber=22)" >
                                        <Semaphore>Semaphore_TriggerSourceITR2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_SourceTRC$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceITR"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_ITR3" UserName="ITR3" RemoveCondition="($IpNumber=21)|($IpNumber=22)">
                                        <Semaphore>Semaphore_TriggerSourceITR3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_SourceTRC$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceITR"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_ETR" UserName="ETR1">
                                        <Semaphore>Semaphore_TriggerSourceETR$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ETRpinUsed$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="ETR"/>
                    </SignalLogicalOp>
<!--TEST--> <Condition Expression=" (!Semaphore_ETRasClearingSource$IpInstance) &amp; (!Semaphore_ClockSourceETRMode1$IpInstance) &amp; (!Semaphore_ClockSourceETRMode2$IpInstance)&amp;!(Semaphore_input_Channel_TRC$IpInstance)&amp;(Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_CH1pinUsed$IpInstance))" Diagnostic="An active Slave Mode should be selected first . This option might become unavailable if (1)ETR is already used as a clearing source (2)ETR is already used as a Clock Source, or (3)if an input capture from TRC is already selected (4) specifically for TIM2 if CH1 IO is already used" />
                </Mode>
                <Mode Name="TriggerSource_TI1ED" UserName="TI1_ED">
<!--TEST--> <Condition Diagnostic="This option is not available if either Channel 1 is already set or the Slave mode controller is in Gated mode" Expression="!(Semaphore_SMC_Gated$IpInstance|Semaphore_output_Channel1$IpInstance|((Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance)&amp;(Semaphore_input_Channel1_direct$IpInstance|Semaphore_input_Channel2_indirect$IpInstance)))"/>
                                        <Semaphore>Semaphore_TriggerSourceTI1ED$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ClockTriggerSourceOnTI1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_SourceTRC$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_TI1FP1" UserName="TI1FP1">
<!--TEST--> <Condition Expression="!(Semaphore_output_Channel1$IpInstance|((Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance)&amp;(Semaphore_input_Channel1_direct$IpInstance|Semaphore_input_Channel2_indirect$IpInstance)))&amp;(Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)" Diagnostic="An active Slave Mode should be selected first . This option might become unavailable if Channel 1 is already used"/>
                                        <Semaphore>Semaphore_TriggerSourceTI1FP1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ClockTriggerSourceOnTI1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="TriggerSource_TI2FP2" UserName="TI2FP2">
                                        <Condition Expression="!(Semaphore_output_Channel2$IpInstance|((Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance)&amp;(Semaphore_input_Channel2_direct$IpInstance|Semaphore_input_Channel1_indirect$IpInstance)))&amp;(Semaphore_SMC_Trigger$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)" Diagnostic="An active Slave Mode should be selected first . This option might become unavailable if Channel 2 is already used "/>
                                        <Semaphore>Semaphore_TriggerSourceTI2FP2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ClockTriggerSourceOnTI2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH2_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
          </Mode>
                  <Mode Name="Clock Source   " RemoveCondition="($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=16)|($IpNumber=17)">
                        <Semaphore>Semaphore_ClockSource$IpInstance</Semaphore>
            <Condition Expression="!Semaphore_Encoder_Interface$IpInstance" Diagnostic="Not available in Encoder Mode"/>
            <Condition Expression="!Semaphore_SMC_Clock$IpInstance" Diagnostic="Not available when the slave mode controller is in external clock mode 1"/>
            <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Internal" UserName="Internal Clock" >
                                       <Condition Expression="!(Semaphore_SMC_Clock$IpInstance)" Diagnostic="Cannot be used while the slave mode controller is in external clock mode"/>
                                        <Semaphore>Semaphore_ClockSourceInternal$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_ClockSourceINT"/>
                    </SignalLogicalOp>
                </Mode>
    <Mode Name="ClockSourceETR_Mode2" UserName="ETR2" RemoveCondition="($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                                        <Semaphore>Semaphore_ClockSourceETRMode2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ETRpinUsed$IpInstance</Semaphore>
                                        <Condition Expression="!(Semaphore_Encoder_Interface$IpInstance|Semaphore_SMC_Clock$IpInstance) &amp; (!Semaphore_ETRasClearingSource$IpInstance) &amp; (!Semaphore_TriggerSourceETR$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_CH1pinUsed$IpInstance))" Diagnostic="Cannot be used (1) while Encoder mode is selected,(2) in External Clock mode,(3) while ETR is aready used as clearing source or as Trigger Source, (4) specifically for TIM2 if CH1 IO is already used"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="ETR"/>
                    </SignalLogicalOp>
                </Mode>
                        </ModeLogicOperator>
<!--Fin sfo-->
                   </Mode>
        <Mode Name="Channel1" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)">
                        <Semaphore>Semaphore_Channel1$IpInstance</Semaphore>
                        <Semaphore>Semaphore_CaptureCompare_1_DMA_Enable$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Input_Capture1_from_TI1" UserName="Input Capture direct mode">
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel1_direct$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                                        <Condition Diagnostic="(1) Channel1 is already used as input for the Slave mode controller, (2)Specifically for TIM2 , ETR IO is already used" Expression="((Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)|!(Semaphore_ClockTriggerSourceOnTI1$IpInstance))&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture1_from_TI1_REMAP_TIM14" UserName="Input Capture direct mode from Remap" RemoveCondition="!($IpNumber=14)">
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel1_direct$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
<!-- peut etre retire -->
                                        <Condition Diagnostic="(1) Channel1 is already used as input for the Slave mode controller, (2)Specifically for TIM2 , ETR IO is already used" Expression="((Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)|!(Semaphore_ClockTriggerSourceOnTI1$IpInstance))&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_NoInput1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture1_from_TI1_TIM1_COMP" UserName="Input Capture direct from COMPx" RemoveCondition="!(($IpNumber=1)&amp;(COMP1_Exist | COMP2_Exist ))">
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel1_direct$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Condition Diagnostic="(1) Channel1 is already used as input for the Slave mode controller, (2)Specifically for TIM2 , ETR IO is already used" Expression="((Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)|!(Semaphore_ClockTriggerSourceOnTI1$IpInstance))&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_NoInput1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture1_from_TI1_TIM3_COMP" UserName="Input Capture direct from COMPx" RemoveCondition="!(($IpNumber=3)&amp;(COMP1_Exist | COMP2_Exist ))">
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel1_direct$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Condition Diagnostic="(1) Channel1 is already used as input for the Slave mode controller, (2)Specifically for TIM2 , ETR IO is already used" Expression="((Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance)|!(Semaphore_ClockTriggerSourceOnTI1$IpInstance))&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_NoInput1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture1_from_TI2" UserName="Input Capture indirect mode">
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel1_indirect$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH2_Input_IO_$IpInstance</Semaphore>
                                        <Condition Diagnostic="Channel2 must be in Input Capture Direct Mode to activate that mode" Expression="Semaphore_input_Channel2_direct$IpInstance&amp;(!((Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance)&amp;(Semaphore_ClockTriggerSourceOnTI2$IpInstance)))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
    <Mode Name="Input_Capture1_from_TRC" UserName="Input Capture triggered by TRC" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                                        <Condition Diagnostic="An ITRx or TI1_ED must be selected as Clock/trigger source" Expression="Semaphore_SourceTRC$IpInstance"/>
                                        <Semaphore>Semaphore_input_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC_TI1$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_CH1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare1 No Output" UserName="Output Compare No Output">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OC_No_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare1 CH1" UserName="Output Compare CH1">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance)) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare1 CH1N" UserName="Output Compare CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare1 CH1 CH1N" UserName="Output Compare CH1 CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation1 No Output" UserName="PWM Generation No Output">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation,(3) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance)) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation1 CH1" UserName="PWM Generation CH1">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation,(3) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance)) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation1 CH1N" UserName="PWM Generation CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation1 CH1 CH1N" UserName="PWM Generation CH1 CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
<!--
                <Mode Name="One-Pulse-Generation1-CH1" UserName="One Pulse Generation on CH1">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation,(3) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance)) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1"/>
                        <Signal Name="CH2"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="One-Pulse-Generation1-CH1N" UserName="One Pulse Generation on CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1N"/>
                        <Signal Name="CH2"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="One-Pulse-Generation1-CH1-CH1N" UserName="One Pulse Generation on CH1 CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1"/>
                        <Signal Name="CH1N"/>
                        <Signal Name="CH2"/>
                    </SignalLogicalOp>
                </Mode>
-->
                <Mode Name="Forced Output1 CH1" UserName="Forced Output CH1">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation,(3) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance)) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output1 CH1N" UserName="Forced Output CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output1 CH1 CH1N" UserName="Forced Output CH1 CH1N">
                                        <Condition Diagnostic="(1) Channel1 cannot be used in output while TI1 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI1$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel1N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_15_16_17_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Output"/>
                        <Signal Name="CH1N"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
            <Condition Diagnostic="Channel1 cannot be used if either a Combined_Channel mode or the One Pulse Generation on CH2x mode is active" Expression="((!(Semaphore_Multi_Channels$IpInstance+Semaphore_One_Pulse_Generation2$IpInstance) &amp; !(($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17))) | (Semaphore_Activated$IpInstance &amp; (($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17))))"/>
            <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
        </Mode>
  <Mode Name="Channel2" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                        <Semaphore>Semaphore_Channel2$IpInstance</Semaphore>
                        <Semaphore>Semaphore_CaptureCompare_2_DMA_Enable$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Input_Capture2_from_TI2" UserName="Input Capture direct mode">
                                        <Semaphore>Semaphore_input_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel2_direct$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH2_Input_IO_$IpInstance</Semaphore>
                                        <Condition Diagnostic="Channel2 is already used as input for the Slave mode controller" Expression="!((Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance)&amp;(Semaphore_ClockTriggerSourceOnTI2$IpInstance))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture2_from_TI1" UserName="Input Capture indirect mode">
                                        <Semaphore>Semaphore_input_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel2_indirect$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                                        <Condition Diagnostic="Channel1 must be in Input Capture Direct Mode to activate that mode" Expression="Semaphore_input_Channel1_direct$IpInstance&amp;(!((Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance)&amp;(Semaphore_ClockTriggerSourceOnTI1$IpInstance)))"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture2_from_TRC" UserName="Input Capture triggered by TRC">
                                        <Condition Diagnostic="An ITRX or TI1_ED must be selected as Clock/trigger source" Expression="Semaphore_SourceTRC$IpInstance"/>
                                        <Semaphore>Semaphore_input_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC_TI2$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_CH2"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare2 No Output" UserName="Output Compare No Output">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OC_No_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output2"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare2 CH2" UserName="Output Compare CH2">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare2 CH2N" UserName="Output Compare CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare2 CH2 CH2N" UserName="Output Compare CH2 CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation2 No Output" UserName="PWM Generation No Output">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output2"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation2 CH2" UserName="PWM Generation CH2">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation2 CH2N" UserName="PWM Generation CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation2 CH2 CH2N" UserName="PWM Generation CH2 CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
<!--
                <Mode Name="One-Pulse-Generation2-CH2" UserName="One Pulse Generation on CH2">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2"/>
                        <Signal Name="CH1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="One-Pulse-Generation2-CH2N" UserName="One Pulse Generation on CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                         <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2N"/>
                        <Signal Name="CH1"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="One-Pulse-Generation2-CH2-CH2N" UserName="One Pulse Generation on CH2 CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;Semaphore_OPM_Activated$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                               <Semaphore>Semaphore_One_Pulse_Generation2$IpInstance</Semaphore>
                                <Semaphore>Semaphore_One_Pulse_Generation$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2"/>
                        <Signal Name="CH2N"/>
                        <Signal Name="CH1"/>
                    </SignalLogicalOp>
                </Mode>
-->
                <Mode Name="Forced Output2 CH2" UserName="Forced Output CH2">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output2 CH2N" UserName="Forced Output CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output2 CH2 CH2N" UserName="Forced Output CH2 CH2N">
                                        <Condition Diagnostic="(1) Channel2 cannot be used in output while TI2 is used as clock or trigger source, (2) mode not compatible with XOR funtion activation" Expression="!(Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel2x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Output"/>
                        <Signal Name="CH2N"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
                <Condition Diagnostic="Channel2 cannot be used if a Combined_Channel mode is active" Expression="!Semaphore_Multi_Channels$IpInstance"/>
                <Condition Diagnostic="Channel2 cannot be used if the One Pulse Generation on CH1x mode is active" Expression="!Semaphore_One_Pulse_Generation1$IpInstance"/>
                <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
             </Mode>
  <Mode Name="Channel3" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|($IpNumber=21)|($IpNumber=22)">
                        <Semaphore>Semaphore_Channel3$IpInstance</Semaphore>
                        <Semaphore>Semaphore_CaptureCompare_3_DMA_Enable$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Input_Capture3_from_TI3" UserName="Input Capture direct mode">
                                        <Semaphore>Semaphore_input_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel3_direct$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture3_from_TI4" UserName="Input Capture indirect mode">
                                        <Semaphore>Semaphore_input_Channel3$IpInstance</Semaphore> <Semaphore>Semaphore_input_Channel3_indirect$IpInstance</Semaphore>
                                        <Condition Diagnostic="Channel4 must be in Input Capture Direct Mode to activate that mode" Expression="Semaphore_input_Channel4_direct$IpInstance"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH4" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture3_from_TRC" UserName="Input Capture triggered by TRC">
                                        <Condition Diagnostic="An ITRX or TI1_ED must be selected as Clock/trigger source" Expression="Semaphore_SourceTRC$IpInstance"/>
                                        <Semaphore>Semaphore_input_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC_TI3$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_CH3"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare3 No Output" UserName="Output Compare No Output">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OC_No_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output3"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare3 CH3" UserName="Output Compare CH3">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare3 CH3N" UserName="Output Compare CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare3 CH3 CH3N" UserName="Output Compare CH3 CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation3 No Output" UserName="PWM Generation No Output">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output3"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation3 CH3" UserName="PWM Generation CH3">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation3 CH3N" UserName="PWM Generation CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation3 CH3 CH3N" UserName="PWM Generation CH3 CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output3 CH3" UserName="Forced Output CH3">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output3 CH3N" UserName="Forced Output CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output3 CH3 CH3N" UserName="Forced Output CH3 CH3N">
                                        <Condition Diagnostic="Mode not compatible with XOR funtion activation" Expression="!Semaphore_XOR_Activatedd$IpInstance"/>
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel3$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_X_XN$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3N$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel3x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OSSR_TIM_1_8_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Output"/>
                        <Signal Name="CH3N"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
           <Condition Diagnostic="Channel3 is not usable if HALL sensor mode is active" Expression="(!(Semaphore_6_Step_PWM_Generation$IpInstance+Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance))"/>
           <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
        </Mode>
  <Mode Name="Channel4" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|($IpNumber=21)|($IpNumber=22)">
                        <Semaphore>Semaphore_Channel4$IpInstance</Semaphore>
                        <Semaphore>Semaphore_CaptureCompare_4_DMA_Enable$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
                <Mode Name="Input_Capture4_from_TI4" UserName="Input Capture direct mode">
                                        <Semaphore>Semaphore_input_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel4_direct$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH4" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
    <Mode Name="Input_Capture4_from_TI4_TIM2_COMP" UserName="Input Capture direct from COMPx" RemoveCondition="!(($IpNumber=2)&amp;(COMP1_Exist | COMP2_Exist ))">
        <Semaphore>Semaphore_input_Channel4$IpInstance</Semaphore>
        <Semaphore>Semaphore_input_Channel4_direct$IpInstance</Semaphore>
        <Semaphore>Semaphore_CH4pinUsed$IpInstance</Semaphore>
        <SignalLogicalOp Name="AND">
            <Signal Name="VS_NoInput4"/>
        </SignalLogicalOp>
    </Mode>
                <Mode Name="Input_Capture4_from_TI3" UserName="Input Capture indirect mode">
                                        <Semaphore>Semaphore_input_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel4_indirect$IpInstance</Semaphore>
                                        <Condition Diagnostic="Channel3 must be in Input Capture Direct Mode to activate that mode" Expression="Semaphore_input_Channel3_direct$IpInstance"/>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH3" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Input_Capture4_from_TRC" UserName="Input Capture triggered by TRC">
                                        <Condition Diagnostic="An ITRx or TI1_ED must be selected as Clock/trigger source" Expression="Semaphore_SourceTRC$IpInstance"/>
                                        <Semaphore>Semaphore_input_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_input_Channel_TRC_TI4$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_CH4"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare4 No Output" UserName="Output Compare No Output">
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_OC_No_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel4x$IpInstance</Semaphore>
                                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_no_output4"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Output Compare4 CH4" UserName="Output Compare CH4">
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel4x$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH4" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation4 No Output" UserName="PWM Generation No Output">
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel4x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                              <SignalLogicalOp Name="AND">
                             <Signal Name="VS_no_output4"/>
                          </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM Generation4 CH4" UserName="PWM Generation CH4">
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_clearable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel4x$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_MODE$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_PWM_Generation_Output$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH4" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="Forced Output4 CH4" UserName="Forced Output CH4">
                                        <Semaphore>Semaphore_output_Channel$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_forced_output_Channel4$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Channel4x$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH4" Direction="Output"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
           <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
        </Mode>
        <Mode Name="Multi-Channels" UserName="Combined Channels" RemoveCondition="!(($ModeExist_6_Step_PWM_Generation)|($ModeExist_6_Step_PWM_Generation_IT)|($ModeExist_6_Step_PWM_Generation_DMA)|($ModeExist_Encoder_Interface)|($ModeExist_PWM_Input_1)|($ModeExist_PWM_Input_2)|($ModeExist_Xored_Inputs_Hall_Sensor_Interface))">
                        <Semaphore>Semaphore_Multi_Channels$IpInstance</Semaphore>
            <ModeLogicOperator Name="XOR">
    <Mode Name="Encoder_Interface" UserName="Encoder Mode" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)">
                                <Condition Diagnostic="(1) Channel 1 , 2  must not be activated,(2)TI1 or TI2 shall not be used as clock/trigger source(3) external clock mode 2 must not be used ,(4) or slave mode must not be set (5) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_Channel1$IpInstance|Semaphore_Channel2$IpInstance|Semaphore_ClockTriggerSourceOnTI1$IpInstance|Semaphore_ClockTriggerSourceOnTI2$IpInstance) &amp; !(Semaphore_ClockSourceETRMode2$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))" />
                                        <Semaphore>Semaphore_Encoder_Interface$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore> <!-- correction F2-->
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH2_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                        <Signal Name="CH2" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
    <Mode Name="PWM_Input_1" UserName="PWM Input on CH1" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=10)|($IpNumber=11)|($IpNumber=13)|($IpNumber=14)|($IpNumber=16)|($IpNumber=17)">
                                        <Condition Diagnostic="PWM_Input_1 cannot be used (1) if Channel1 or Channel2 are already active,(2) if a Slave mode is already set ,(3)if the XOR function is activated (4)  specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_Channel1$IpInstance+Semaphore_Channel2$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))" />
                                        <Semaphore>Semaphore_PWM_Input_1$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CaptureCompare_1_DMA_Enable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Trigger_DMA_Enable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore> <!-- correction F2-->
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                    </SignalLogicalOp>
                </Mode>
                <Mode Name="PWM_Input_2" UserName="PWM Input on CH2">
                                        <Semaphore>Semaphore_PWM_Input_2$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CaptureCompare_2_DMA_Enable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Trigger_DMA_Enable$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH2" Direction="Input"/>
                    </SignalLogicalOp>
                                        <Condition Diagnostic="PWM_Input_2 cannot be used (1) if Channel1 or Channel2 are already active,(2) if a Slave mode is already set ,(3)if the XOR function is activated" Expression="!(Semaphore_Channel1$IpInstance+Semaphore_Channel2$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance" />
                </Mode>
                <Mode Name="Xored_Inputs_Hall_Sensor_Interface" UserName="XOR ON / Hall Sensor Mode">
                                        <Semaphore>Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_Trigger_DMA_Enable$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH1pinUsed$IpInstance</Semaphore> <!-- correction F2-->
                                        <Semaphore>Semaphore_CH1_Input_IO_$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_CH2_Input_IO_$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CH1" Direction="Input"/>
                        <Signal Name="CH2" Direction="Input"/>
                        <Signal Name="CH3" Direction="Input"/>
                    </SignalLogicalOp>
                                        <Condition Diagnostic="(1) Channel 1 , 2 and 3 must not be activated, (2) TI1 or TI2 can not be used as clock/trigger source,(3)the XOR function must not be activated (4) specifically for TIM2, if ETR IO is already used" Expression="!(Semaphore_Channel1$IpInstance+Semaphore_Channel2$IpInstance+Semaphore_Channel3$IpInstance|Semaphore_ClockTriggerSourceOnTI1$IpInstance|Semaphore_ClockTriggerSourceOnTI2$IpInstance|Semaphore_SMC_Clock$IpInstance|Semaphore_SMC_Reset$IpInstance|Semaphore_SMC_CombinedResetTrigger$IpInstance|Semaphore_SMC_Gated$IpInstance|Semaphore_SMC_Trigger$IpInstance) &amp;!Semaphore_XOR_Activatedd$IpInstance &amp;!(($IpNumber=2)&amp;(Semaphore_ETRpinUsed$IpInstance))" />
                </Mode>
            </ModeLogicOperator>
           <Condition Diagnostic="Channel 1 must not be activated, nor any slave mode" Expression="!(Semaphore_Channel1$IpInstance)" />
           <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
        </Mode>
        <Mode Name="Interrupt-On-Update">
                <Semaphore>Semaphore_Interrupt_On_Update$IpInstance</Semaphore>
        </Mode>
        <Mode Name="Output-Trigger">
                <Semaphore>Semaphore_Output_Trigger$IpInstance</Semaphore>
        </Mode>
        <Mode Name="Activate-Break-Input">
                        <Condition Diagnostic="At least one channel must be set in output mode" Expression="((Semaphore_output_Channel1$IpInstance)&amp;!(Semaphore_OC_No_output_Channel1$IpInstance))|((Semaphore_output_Channel2$IpInstance)&amp;!(Semaphore_OC_No_output_Channel2$IpInstance))|((Semaphore_output_Channel3$IpInstance)&amp;!(Semaphore_OC_No_output_Channel3$IpInstance))|((Semaphore_output_Channel4$IpInstance)&amp;!(Semaphore_OC_No_output_Channel4$IpInstance))" />
            <ModeLogicOperator Name="OR">
                <Mode Name="Activate-Break-Input">
                                <Semaphore>Semaphore_Activate_Break_Input$IpInstance</Semaphore>
                    <SignalLogicalOp Name="AND">
                        <Signal Name="BKIN"/>
                    </SignalLogicalOp>
                </Mode>
            </ModeLogicOperator>
        </Mode>
                <Mode Name="Use ETR as Clearing Source">
            <ModeLogicOperator Name="XOR">
                <Mode Name="ETR-as-clearing-source" UserName="ETR IO as Clearing Source">
                                        <Semaphore>Semaphore_ETRasClearingSource$IpInstance</Semaphore>
                                        <Semaphore>Semaphore_ETRpinUsed$IpInstance</Semaphore>
                                        <Condition Diagnostic="activated only when a channel is configured in output and not all in forced_output Not available if ETR is used as Clock Source or Trigger Source" Expression="Semaphore_clearable$IpInstance &amp; (!Semaphore_TriggerSourceETR$IpInstance) &amp; (!Semaphore_ClockSourceETRMode1$IpInstance) &amp; (!Semaphore_ClockSourceETRMode2$IpInstance)&amp;!(($IpNumber=2)&amp;(Semaphore_CH1pinUsed$IpInstance))" />
                    <SignalLogicalOp Name="AND">
                        <Signal Name="ETR"/>
                    </SignalLogicalOp>
                </Mode>
                        </ModeLogicOperator>
            </Mode>
               <Mode Name="XOR activation" RemoveCondition="($IpNumber=6)|($IpNumber=7)|($IpNumber=18)|($IpNumber=9)|($IpNumber=10)|($IpNumber=11)|($IpNumber=12)|($IpNumber=13)|($IpNumber=14)|($IpNumber=15)|($IpNumber=16)|($IpNumber=17)|($IpNumber=21)|($IpNumber=22)">
            <ModeLogicOperator Name="OR">
<!--CONDITION -->
<!--CHANNEL 1 NOT in output mode -->
<!--CHANNEL 2 NOT in output mode -->
<!--CHANNEL 3 NOT in output mode -->
<!--Not Encoder mode -->
<!--Not PWM input mode-->
<!--Not Hall Sensor mode : otherwise it will generate the code for Xor activation in both Hall and xor functions-->
<!--EXCLUSION -->
<!--NOT encoder -->
<!--NOT PWM input-->
<!--Not Hall Sensor mode : otherwise it will generate the code for Xor activation in both Hall and xor functions-->
<!--NOT CH1/CH2/CH3 in output-->
                <Mode Name="XOR_enable">
                                        <Semaphore>Semaphore_XOR_Activatedd$IpInstance</Semaphore>
                                        <Condition Diagnostic="Requires Channel 1 and 2, 1 and 3 or 1 and 2 and 3 to be set either as a clock, a trigger source or in input capture mode" Expression="((((Semaphore_ClockTriggerSourceOnTI1$IpInstance|Semaphore_input_Channel1_direct$IpInstance) &amp;(Semaphore_TriggerSourceTI2FP2$IpInstance|Semaphore_input_Channel2_direct$IpInstance)) &amp;(((Semaphore_input_Channel3_direct$IpInstance|!Semaphore_Channel3$IpInstance))))|(((Semaphore_ClockTriggerSourceOnTI1$IpInstance|Semaphore_input_Channel1_direct$IpInstance)&amp;(Semaphore_TriggerSourceTI2FP2$IpInstance|Semaphore_input_Channel2_direct$IpInstance|!Semaphore_Channel2$IpInstance)&amp;(Semaphore_input_Channel3_direct$IpInstance)))) &amp;!Semaphore_Encoder_Interface$IpInstance &amp;!Semaphore_PWM_Input_1$IpInstance &amp;!Semaphore_PWM_Input_2$IpInstance &amp;!Semaphore_Xored_Inputs_Hall_Sensor_Interface$IpInstance"/>
                                <SignalLogicalOp Name="AND">
                    <Signal Name="VS_XOR"/>
                </SignalLogicalOp>
                </Mode>
                        </ModeLogicOperator>
            </Mode>
                <Mode Name="One Pulse Mode">
            <ModeLogicOperator Name="OR">
                <Mode Name="OPM_bit" UserName="One pulse">
                                        <Semaphore>Semaphore_OPM_Activated$IpInstance</Semaphore>
                                        <Condition Diagnostic="The timer needs to be activated" Expression="(($IpNumber=1)|($IpNumber=2)|($IpNumber=3)|($IpNumber=4)|($IpNumber=5)|($IpNumber=8)|($IpNumber=9)|($IpNumber=12)|($IpNumber=15)|($IpNumber=19)|($IpNumber=20)|($IpNumber=21)|($IpNumber=22)|($IpNumber=23)|($IpNumber=24))|Semaphore_Activated$IpInstance" />
                    <SignalLogicalOp Name="AND">
                        <Signal Name="VS_OPM"/>
                    </SignalLogicalOp>
                </Mode>
                        </ModeLogicOperator>
           <Condition Expression="!SYS_$IpInstance" Diagnostic="Timer already used for system time base"/>
            </Mode>
    </ModeLogicOperator>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="BKIN" Direction="Input"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH1" ExclusiveGroupName="S_TIM2_CH1_ETR:TIM2" ShareableGroupName="S_$IpInstance_CH1:TIM1,TIM3,TIM4,TIM5,TIM8,TIM9,TIM10,TIM11,TIM12,TIM13,TIM14,TIM15,TIM16,TIM17,TIM19,TIM21,TIM22" />
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH1N" Direction="Output"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH2" ShareableGroupName="S_$IpInstance_CH2"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH2N" Direction="Output"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH3" ShareableGroupName="S_$IpInstance_CH3"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH3N" Direction="Output"/>
    <RefSignal IOMode="AlternateFunctionOpenDrainAndPushPullDefaultPP" Name="CH4" ShareableGroupName="S_$IpInstance_CH4"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="ETR" ExclusiveGroupName="S_TIM2_CH1_ETR:TIM2" ShareableGroupName="S_$IpInstance_ETR:TIM1,TIM3,TIM4,TIM5,TIM8,TIM9,TIM10,TIM11,TIM12,TIM13,TIM14,TIM15,TIM16,TIM17,TIM19,TIM21,TIM22" Direction="Input" />
            <!-- Virtual signals -->
    <RefSignal Name="VS_ControllerModeReset" Virtual="true"/>
    <RefSignal Name="VS_ControllerModeGated" Virtual="true"/>
    <RefSignal Name="VS_ControllerModeClock" Virtual="true"/>
    <RefSignal Name="VS_ControllerModeTrigger" Virtual="true"/>
    <RefSignal Name="VS_ControllerModeCombinedResetTrigger" Virtual="true"/>
    <RefSignal Name="VS_ClockSourceINT" Virtual="true"/>
    <RefSignal Name="VS_ClockSourceITR" Virtual="true"/>
    <RefSignal Name="VS_CH1" Virtual="true" ShareableGroupName="S_VirtualCH1$IpInstance"/>
    <RefSignal Name="VS_CH2" Virtual="true" ShareableGroupName="S_VirtualCH2$IpInstance"/>
    <RefSignal Name="VS_CH3" Virtual="true" ShareableGroupName="S_VirtualCH3$IpInstance"/>
    <RefSignal Name="VS_CH4" Virtual="true" ShareableGroupName="S_VirtualCH4$IpInstance"/>
    <RefSignal Name="VS_no_output1" Virtual="true"/>
    <RefSignal Name="VS_no_output2" Virtual="true"/>
    <RefSignal Name="VS_no_output3" Virtual="true"/>
    <RefSignal Name="VS_no_output4" Virtual="true"/>
    <RefSignal Name="VS_OPM" Virtual="true"/>
    <RefSignal Name="VS_XOR" Virtual="true"/>
    <RefSignal Name="VS_NoInput4" Virtual="true"/>
    <RefSignal Name="VS_NoInput1" Virtual="true"/>
    <RefSignal Name="VS_NoInput2" Virtual="true"/>
    <RefSignal Name="VS_NoETR" Virtual="true"/>
</IP>
