<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP xmlns="http://mcd.rou.st.com/modules.php?name=mcu" DBVersion="V4.0" Name="TIM" Version="STM32Cube_FW_G4_V0.2.0" IncludeFile="stm32g4xx_ll_tim.h" 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_Configs.xsd">

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!-- A tester -->

    <RefConfig Name="Base_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
      <!--  <ImplementCallBack Name="HAL_TIM_Base_MspInit"/>   -->
      <!--  <ImplementCallBack Name="HAL_TIM_Base_MspDeInit"/> -->


    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!-- A tester -->

    <RefConfig Name="Base_DeInit">
        <CallLibMethod Name="LL_TIM_DeInit" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
        </CallLibMethod>
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!-- HAL
    <RefConfig Name="TIM_MasterConfigSynchronization">
        <CallLibMethod Name="HAL_TIMEx_MasterConfigSynchronization">
            <MethodArg Name="MasterOutputTrigger" ParameterName="TIM_MasterOutputTrigger"/>
            <MethodArg Name="MasterOutputTrigger2" ParameterName="TIM_MasterOutputTrigger2"/>
            <MethodArg Name="MasterSlaveMode" ParameterName="TIM_MasterSlaveMode"/>
        </CallLibMethod>
    </RefConfig>
-->

<!--Start LL-->
    <RefConfig Name="TIM_MasterConfigSynchronization" >
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_SetTriggerOutput" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="TimerSynchronization" ParameterName="TIM_MasterOutputTrigger"/>
            </CallLibMethod>
        </IFCondition>
<!-- if trgo2-->
<!--
/****************** TIM Instances : supporting ADC triggering through TRGO2 ***/
#define IS_TIM_TRGO2_INSTANCE(INSTANCE)    (((INSTANCE) == TIM1)    || \
                                            ((INSTANCE) == TIM8)    || \
                                            ((INSTANCE) == TIM20))
-->
        <IFCondition Expression="($IpNumber=1 | $IpNumber=8 | $IpNumber=20)">
            <CallLibMethod Name="LL_TIM_SetTriggerOutput2" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="ADCSynchronization" ParameterName="TIM_MasterOutputTrigger2"/>
            </CallLibMethod>
        </IFCondition>

        <!--Start TIM_MASTERSLAVEMODE enable/disable/null  -->
        <IFCondition Expression="(TIM_MasterSlaveMode=TIM_MASTERSLAVEMODE_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableMasterSlaveMode" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(TIM_MasterSlaveMode=TIM_MASTERSLAVEMODE_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableMasterSlaveMode" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <!--End TIM_MASTERSLAVEMODE -->
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="TIM_ConfigBreakDeadTime">
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakDeadTime"/>
    </RefConfig>
-->
<!--Start LL-->
<!-- NEW implementation to do -->
<!-- &&&&&&&&&&&&&&&&&&&&&&&& -->

    <RefConfig Name="TIM_ConfigBreakDeadTime_OLDOLDOLDOLD">
     <IFCondition Expression="($IpNumber=1 | $IpNumber=8)">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_SetDeadTime">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="DeadTime" ParameterName="DeadTime"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_SetOffStates">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="OffStateIdle" ParameterName="OffStateIDLEMode"/>
                <MethodArg Name="OffStateRun" ParameterName="OffStateRunMode"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_ConfigBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="BreakPolarity" ParameterName="BreakPolarity"/>
                <MethodArg Name="BreakFilter" ParameterName="BreakFilter"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_ConfigBRK2">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Break2Polarity" ParameterName="Break2Polarity"/>
                <MethodArg Name="Break2Filter" ParameterName="Break2Filter"/>
            </CallLibMethod>
        </IFCondition>
        <!-- START REPRISE de AUTOMATICOUTPUT avec traitement de null -->
        <IFCondition Expression="AutomaticOutput=TIM_AUTOMATICOUTPUT_ENABLE">
            <CallLibMethod Name="LL_TIM_EnableAutomaticOutput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        <IFCondition Expression="AutomaticOutput=TIM_AUTOMATICOUTPUT_DISABLE">
            <CallLibMethod Name="LL_TIM_DisableAutomaticOutput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <!-- END REPRISE de AUTOMATICOUTPUT avec traitement de null -->
        
        <!-- Start BreakState-->
        <IFCondition Expression="BreakState=TIM_BREAK_ENABLE">
            <CallLibMethod Name="LL_TIM_EnableBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        <IFCondition Expression="BreakState=TIM_BREAK_DISABLE">
            <CallLibMethod Name="LL_TIM_DisableBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <!-- End BreakState-->
        
        <!-- Start Break2State-->
        <IFCondition Expression="Break2State=TIM_BREAK2_ENABLE">
            <CallLibMethod Name="LL_TIM_EnableBRK2">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="Break2State=TIM_BREAK2_DISABLE">
            <CallLibMethod Name="LL_TIM_DisableBRK2">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <!-- End Break2State-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_CC_SetLockLevel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="LockLevel" ParameterName="LockLevel"/>
            </CallLibMethod>
        </IFCondition>
     <Else>
         <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_SetDeadTime">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="DeadTime" ParameterName="DeadTime"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_SetOffStates">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="OffStateIdle" ParameterName="OffStateIDLEMode"/>
                <MethodArg Name="OffStateRun" ParameterName="OffStateRunMode"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_ConfigBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="BreakPolarity" ParameterName="BreakPolarity"/>
                <MethodArg Name="BreakFilter" ParameterName="BreakFilter"/>
            </CallLibMethod>
        </IFCondition>
        <!-- START REPRISE de AUTOMATICOUTPUT avec traitement de null -->
        
        <IFCondition Expression="AutomaticOutput=TIM_AUTOMATICOUTPUT_ENABLE">
            <CallLibMethod Name="LL_TIM_EnableAutomaticOutput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        <IFCondition Expression="AutomaticOutput=TIM_AUTOMATICOUTPUT_DISABLE">
            <CallLibMethod Name="LL_TIM_DisableAutomaticOutput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        
        <!-- END REPRISE de AUTOMATICOUTPUT avec traitement de null -->
        
        <!-- Start BreakState-->
        <IFCondition Expression="BreakState=TIM_BREAK_ENABLE">
            <CallLibMethod Name="LL_TIM_EnableBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        <IFCondition Expression="BreakState=TIM_BREAK_DISABLE">
            <CallLibMethod Name="LL_TIM_DisableBRK">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <!-- End BreakState-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_CC_SetLockLevel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="LockLevel" ParameterName="LockLevel"/>
            </CallLibMethod>
        </IFCondition>
     </Else>
    </IFCondition>
    </RefConfig>
    
    <!-- NEW implementation of BDTR -->
    
    <RefConfig Name="TIM_ConfigBreakDeadTime">

<!-- Addon for timer G4 -->
<!--
        <IFCondition Expression="Semaphore_DeadTimePreload_$IpInstance">
            <CallLibMethod Name="HAL_TIMEx_EnableDeadTimePreload" ReturnHAL="false" Type="HAL"/>
        </IFCondition>
        <IFCondition Expression="Semaphore_AsymmetricalDeadTime_$IpInstance">
            <CallLibMethod Name="HAL_TIMEx_ConfigAsymmetricalDeadTime" ReturnHAL="false" Type="HAL">
                <MethodArg Name="FallingDeadtime" ParameterName="FallingDeadTime"/>
            </CallLibMethod>
            <CallLibMethod Name="HAL_TIMEx_EnableAsymmetricalDeadTime" ReturnHAL="false" Type="HAL"/>
        </IFCondition>
-->
        <IFCondition Expression="Semaphore_DeadTimePreload_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDeadTimePreload" ReturnHAL="false">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="Semaphore_AsymmetricalDeadTime_$IpInstance">
            <CallLibMethod Name="LL_TIM_SetFallingDeadTime">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="DeadTime" ParameterName="FallingDeadTime"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_EnableAsymmetricalDeadTime">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
<!-- END Addon for timer G4 -->
        <IFCondition Expression="($IpNumber=1 | $IpNumber=8)">
             <CallLibMethod Name="LL_TIM_BDTR_Init" IPInitMethod="False">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="DeadTime" ParameterName="DeadTime"/>
                <MethodArg Name="OSSIState" ParameterName="OffStateIDLEMode"/>
                <MethodArg Name="OSSRState" ParameterName="OffStateRunMode"/>
                <MethodArg Name="BreakPolarity" ParameterName="BreakPolarity"/>
                <MethodArg Name="BreakFilter" ParameterName="BreakFilter"/>
                <MethodArg Name="Break2Polarity" ParameterName="Break2Polarity"/>
                <MethodArg Name="Break2Filter" ParameterName="Break2Filter"/>
                <MethodArg Name="AutomaticOutput" ParameterName="AutomaticOutput"/>
                <MethodArg Name="BreakState" ParameterName="BreakState"/>
                <MethodArg Name="Break2State" ParameterName="Break2State"/>
                <MethodArg Name="LockLevel" ParameterName="LockLevel"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_BDTR_Init" IPInitMethod="False">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="DeadTime" ParameterName="DeadTime"/>
                <MethodArg Name="OSSIState" ParameterName="OffStateIDLEMode"/>
                <MethodArg Name="OSSRState" ParameterName="OffStateRunMode"/>
                <MethodArg Name="BreakPolarity" ParameterName="BreakPolarity"/>
                <MethodArg Name="BreakFilter" ParameterName="BreakFilter"/>
                <MethodArg Name="AutomaticOutput" ParameterName="AutomaticOutput"/>
                <MethodArg Name="BreakState" ParameterName="BreakState"/>
                <MethodArg Name="LockLevel" ParameterName="LockLevel"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL-->
<!-- A TESTER@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->


    <RefConfig Name="TIM_ConfigBreakInput">
<!--
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_DigInput"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DigInput"/>
            <MethodArg Name="Enable" ParameterName="SourceBRKDigInput"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKDigInputPolarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
            <MethodArg Name="Enable" ParameterName="SourceBRKCOMP1"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP1Polarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
            <MethodArg Name="Enable" ParameterName="SourceBRKCOMP2"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP2Polarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_DFSDM"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DFSDM"/>
            <MethodArg Name="Enable" ParameterName="SourceBRKDFSDM"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_DigInput"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DigInput"/>
            <MethodArg Name="Enable" ParameterName="SourceBRK2DigInput"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2DigInputPolarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
            <MethodArg Name="Enable" ParameterName="SourceBRK2COMP1"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP1Polarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
            <MethodArg Name="Enable" ParameterName="SourceBRK2COMP2"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP2Polarity"/>
        </CallLibMethod>
        <CallLibMethod Name="HAL_TIMEx_ConfigBreakInput">
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_DFSDM"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DFSDM"/>
            <MethodArg Name="Enable" ParameterName="SourceBRK2DFSDM"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_DigInput"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DigInput"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKDigInputPolarity"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP1Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP2Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP3"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP3"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP3Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP3"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP3"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP4"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP4"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP4Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP4"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP4"/>
        </CallLibMethod>

<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP5"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP5"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP5Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP5"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP5"/>
        </CallLibMethod>

<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP6"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP6"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP6Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP6"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP6"/>
        </CallLibMethod>

<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP7"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP7"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRKCOMP7Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP7"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP7"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_DFSDM1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DFSDM1"/>
        </CallLibMethod>




        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_DigInput"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DigInput"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2DigInputPolarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP1Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP1"/>
        </CallLibMethod>


        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP2Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP2"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP2"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP3"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP3"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP3Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP3"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP3"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP4"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP4"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP4Polarity"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP4"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP4"/>
        </CallLibMethod>
<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP5"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP5"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP5Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP5"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP5"/>
        </CallLibMethod>
<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP6"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP6"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP6Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP6"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP6"/>
        </CallLibMethod>
<!--
        <CallLibMethod Name="LL_TIM_SetBreakInputSourcePolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_COMP7"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP7"/>
            <MethodArg Name="Polarity" ParameterName="SourceBRK2COMP7Polarity"/>
        </CallLibMethod>
-->
        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK_COMP7"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_COMP7"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_EnableBreakInputSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="BreakInput" ParameterName="BreakInput_BRK2_DFSDM1"/>
            <MethodArg Name="Source" ParameterName="Source_BRK_DFSDM1"/>
        </CallLibMethod>
    </RefConfig>
<!-- A TESTER @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

    <RefConfig Name="ConfigClockSource">
 <!--   <CallLibMethod Name="HAL_TIM_Base_Init"/>-->
 <!-- Start LL -->
         <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
 <!-- End LL   -->
<!-- HAL
        <CallLibMethod Name="HAL_TIM_ConfigClockSource"/>
         parametres de libmethod
             ClockSource
             ClockPolarity
             ClockPrescaler
             ClockFilter
        
        <ImplementCallBack Name="HAL_TIM_Base_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_Base_MspDeInit"/>
-->
<!-- LL support on going-->
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_INTERNAL)">
        <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" ParameterName="ClockSource"/>
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_ETRMODE1)">
        <CallLibMethod Name="LL_TIM_ConfigETR">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRPolarity" ParameterName="ClockPolarity"/>
            <MethodArg Name="ETRPrescaler" ParameterName="ClockPrescaler"/>
            <MethodArg Name="ETRFilter" ParameterName="ClockFilter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_ETRF"/> <!--forcage-->
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" ParameterName="ClockSource"/>
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_ETRMODE2)">
        <CallLibMethod Name="LL_TIM_ConfigETR">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRPolarity" ParameterName="ClockPolarity"/>
            <MethodArg Name="ETRPrescaler" ParameterName="ClockPrescaler"/>
            <MethodArg Name="ETRFilter" ParameterName="ClockFilter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" ParameterName="ClockSource"/>
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_TI1)">
        <CallLibMethod Name="LL_TIM_CC_DisableChannel">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channels" ParameterName="Channels"/> <!--A Verifier-->
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICFilter" ParameterName="ClockFilter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICPolarity" ParameterName="ClockPolarity"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_TI1FP1"/> <!--Forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/>
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_TI2)">
        <CallLibMethod Name="LL_TIM_CC_DisableChannel">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channels" ParameterName="Channels"/> <!--A Verifier-->
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICFilter" ParameterName="ClockFilter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICPolarity" ParameterName="ClockPolarity"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_TI2FP2"/> <!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/>
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_TI1ED)">
        <CallLibMethod Name="LL_TIM_CC_DisableChannel">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channels" ParameterName="Channels"/> <!--A Verifier-->
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICFilter" ParameterName="ClockFilter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel"/> <!--A Verifier-->
            <MethodArg Name="ICPolarity" ParameterName="ClockPolarity"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_TI1F_ED"/> <!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/><!--forcage-->
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource=TIM_CLOCKSOURCE_ITR0)">
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_ITR0"/><!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/><!--forcage-->
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_ITR1)">
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_ITR1"/><!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/><!--forcage-->
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_ITR2)">
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_ITR2"/> <!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/><!--forcage-->
        </CallLibMethod>
     </IFCondition>
     <IFCondition Expression="(ClockSource = TIM_CLOCKSOURCE_ITR3)">
        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="TriggerInput" FValue="LL_TIM_TS_ITR3"/> <!--forcage-->
        </CallLibMethod>
       <CallLibMethod Name="LL_TIM_SetClockSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/><!--forcage-->
        </CallLibMethod>
     </IFCondition>


    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_Init">
        <CallLibMethod Name="HAL_TIM_IC_Init"/>
        <ImplementCallBack Name="HAL_TIM_IC_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_IC_MspDeInit"/>
    </RefConfig>
-->
    <RefConfig Name="IC_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>


    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->


    <RefConfig Name="PWM_Input_mode_CH1">
<!--HAL
        <CallLibMethod Name="HAL_TIM_IC_Init"/>
-->
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>


<!--
        <CallLibMethod Name="HAL_TIM_SlaveConfigSynchronization">
            <MethodArg Name="InputTrigger" ParameterName="TIM_InputTrigger_List"/>
            <MethodArg Name="TriggerPrescaler" ParameterName="ICPrescaler_1"/>
            <MethodArg Name="TriggerPolarity" ParameterName="ICPolarity_1"/>
            <MethodArg Name="TriggerFilter" ParameterName="ICFilter_1"/>
            <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode_List"/>
        </CallLibMethod>
-->
        
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_SetTriggerInput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="TriggerInput" ParameterName="TIM_InputTrigger_List"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression ="TIM_SlaveMode=TIM_SLAVEMODE_EXTERNAL1"><!-- cht de slaveMode vers TIM_SlaveMode -->
            <CallLibMethod Name="LL_TIM_SetClockSource">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_SetSlaveMode">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode_List"/>
            </CallLibMethod>
        </Else>
        
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_ETRF">

            <CallLibMethod Name="LL_TIM_DisableExternalClock">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_ConfigETR">
                <MethodArg Name="TIMx"             ParameterName="Instance"/>
                <MethodArg Name="ETRPolarity"     ParameterName="ICPolarity_1"/>
                <MethodArg Name="ETRPrescaler"     ParameterName="ICPrescaler_1"/>
                <MethodArg Name="ETRFilter"     ParameterName="ICFilter_1"/>
            </CallLibMethod>
            
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI1F_ED">

            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI1FP1">

            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>
            
            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICPolarity" ParameterName="ICPolarity_1"/>
            </CallLibMethod>
            
        </IFCondition>
            
        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI2FP2">
    
            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>
            
            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICPolarity" ParameterName="ICPolarity_1"/>
            </CallLibMethod>

        </IFCondition>


        <IFCondition Expression ="1=1">
            <CallLibMethod Name="LL_TIM_DisableIT_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
            
            <CallLibMethod Name="LL_TIM_DisableDMAReq_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
<!--HAL
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="Channel" ParameterName="Channel_1"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_1"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_1"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_1"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
        </CallLibMethod>
-->
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_1"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_1"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_1"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_1"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_1"/>
        </CallLibMethod>
-->
        <!-- START recodage IC_Init-->
        <IFCondition Expression ="1=1">
            <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                    <MethodArg Name="ICActiveInput" ParameterName="ICSelection_1"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_1"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICFilter"      ParameterName="ICFilter_1"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_1"/>
            </CallLibMethod>
        </IFCondition>
        <!--END recodage IC_Init -->
        
<!--HAL
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="Channel" ParameterName="Channel_2"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_2"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_2"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_2"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
        </CallLibMethod>
-->
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_2"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_2"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_2"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_2"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_2"/>
        </CallLibMethod>
        
-->
        <!-- START recodage IC_Init-->
        <IFCondition Expression ="1=1">
            <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICActiveInput" ParameterName="ICSelection_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICFilter"      ParameterName="ICFilter_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_2"/>
            </CallLibMethod>
        </IFCondition>

        <!--END recodage IC_Init -->

  <!--     <ImplementCallBack Name="HAL_TIM_IC_MspInit"/>-->
  <!--     <ImplementCallBack Name="HAL_TIM_IC_MspDeInit"/>-->
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

    <RefConfig Name="PWM_Input_mode_CH2">
<!--
        <CallLibMethod Name="HAL_TIM_IC_Init"/>
-->
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>


<!-- 
        <CallLibMethod Name="HAL_TIM_SlaveConfigSynchronization">
            <MethodArg Name="InputTrigger" ParameterName="TIM_InputTrigger_List"/>
            <MethodArg Name="TriggerPrescaler" ParameterName="ICPrescaler_2"/>
            <MethodArg Name="TriggerPolarity" ParameterName="ICPolarity_2"/>
            <MethodArg Name="TriggerFilter" ParameterName="ICFilter_2"/>
            <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode_List"/>
        </CallLibMethod>
        
        
        
-->

        <!--codage de void TIM_SlaveTimer_SetConfig-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_SetTriggerInput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="TriggerInput" ParameterName="TIM_InputTrigger_List"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression ="TIM_SlaveMode=TIM_SLAVEMODE_EXTERNAL1"><!-- Chg de slaveMode vers TIM_SlaveMode-->
            <CallLibMethod Name="LL_TIM_SetClockSource">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_SetSlaveMode">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode_List"/>
            </CallLibMethod>
        </Else>
        
        </IFCondition>
            
        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_ETRF">
        
            <CallLibMethod Name="LL_TIM_DisableExternalClock">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
            
            <CallLibMethod Name="LL_TIM_ConfigETR">
                <MethodArg Name="TIMx"             ParameterName="Instance"/>
                <MethodArg Name="ETRPolarity"     ParameterName="ICPolarity_2"/>
                <MethodArg Name="ETRPrescaler"     ParameterName="ICPrescaler_2"/>
                <MethodArg Name="ETRFilter"     ParameterName="ICFilter_2"/>
            </CallLibMethod>

        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI1F_ED">

            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI1FP1">

            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICPolarity" ParameterName="ICPolarity_2"/>
            </CallLibMethod>

        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger_List=TIM_TS_TI2FP2">

            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICPolarity" ParameterName="ICPolarity_2"/>
            </CallLibMethod>

        </IFCondition>
        <IFCondition Expression ="1=1">
            <CallLibMethod Name="LL_TIM_DisableIT_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_DisableDMAReq_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

<!--HAL
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="Channel" ParameterName="Channel_1"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_1"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_1"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_1"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
        </CallLibMethod>
-->
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel_1"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_1"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_1"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_1"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_1"/>
        </CallLibMethod>
        
-->
        <!-- START recodage IC_Init-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICActiveInput" ParameterName="ICSelection_1"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_1"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICFilter"      ParameterName="ICFilter_1"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_1"/>
                <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_1"/>
            </CallLibMethod>
        </IFCondition>
        <!--END recodage IC_Init -->
<!--
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="Channel" ParameterName="Channel_2"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_2"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_2"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_2"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
        </CallLibMethod>
-->
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" ParameterName="Channel_2"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_2"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_2"/>
            <MethodArg Name="ICPrescaler" ParameterName="ICPrescaler_2"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_2"/>
        </CallLibMethod>
-->
        <!-- START recodage IC_Init-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICActiveInput" ParameterName="ICSelection_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICFilter"      ParameterName="ICFilter_2"/>
            </CallLibMethod>
                    <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="Channel"       ParameterName="Channel_2"/>
                <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_2"/>
            </CallLibMethod>
        </IFCondition>
        <!--END recodage IC_Init -->
 <!--       <ImplementCallBack Name="HAL_TIM_IC_MspInit"/>-->
 <!--       <ImplementCallBack Name="HAL_TIM_IC_MspDeInit"/>-->
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--A Faire
    <RefConfig Name="IC_DeInit">
        <CallLibMethod Name="HAL_TIM_IC_DeInit"/>
    </RefConfig>
-->

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="OC_Init">

        <CallLibMethod Name="HAL_TIM_OC_Init"/>
        <ImplementCallBack Name="HAL_TIM_OC_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_OC_MspDeInit"/>
        <ImplementCallBack Name="HAL_TIM_MspPostInit"/>
    </RefConfig>
-->
    <RefConfig Name="OC_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--A Faire-->
<!--
    <RefConfig Name="OC_DeInit">
        <CallLibMethod Name="HAL_TIM_OC_DeInit"/>
    </RefConfig>
    -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="PWM_Init">
        <CallLibMethod Name="HAL_TIM_PWM_Init"/>
        <ImplementCallBack Name="HAL_TIM_PWM_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_PWM_MspDeInit"/>
        <ImplementCallBack Name="HAL_TIM_MspPostInit"/>
    </RefConfig>
-->
    <RefConfig Name="PWM_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>


    </RefConfig>
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="PWM_DeInit">
        <CallLibMethod Name="HAL_TIM_PWM_DeInit"/>
    </RefConfig>
    -->
        <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="OnePulse_Init">
        <CallLibMethod Name="HAL_TIM_OnePulse_Init">
            <MethodArg Name="OnePulseMode" ParameterName="TIM_OnePulse_Mode"/>
        </CallLibMethod>
        <ImplementCallBack Name="HAL_TIM_OnePulse_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_OnePulse_MspDeInit"/>
        <ImplementCallBack Name="HAL_TIM_MspPostInit"/>
    </RefConfig>
    -->
    <RefConfig Name="OnePulse_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
        <CallLibMethod Name="LL_TIM_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Autoreload" ParameterName="Period"/>
        </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="1=1">
        <CallLibMethod Name="LL_TIM_SetOnePulseMode">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="OnePulseMode" ParameterName="TIM_OnePulse_Mode"/>
        </CallLibMethod>
        </IFCondition>


    </RefConfig>
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="OnePulse_DeInit">
        <CallLibMethod Name="HAL_TIM_OnePulse_DeInit"/>
    </RefConfig>
    -->
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="HallSensor_Init">
        <CallLibMethod Name="HAL_TIMEx_HallSensor_Init"/>
        <ImplementCallBack Name="HAL_TIMEx_HallSensor_MspInit"/>
        <ImplementCallBack Name="HAL_TIMEx_HallSensor_MspDeInit"/>
    </RefConfig>
    -->
    <RefConfig Name="HallSensor_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Autoreload" ParameterName="Period"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        
        <IFCondition Expression="1=1">
        <CallLibMethod Name="LL_TIM_CC_DisableChannel" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH1 | LL_TIM_CHANNEL_CH2"/>
        </CallLibMethod>
        
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"              ParameterName="Instance"/>
            <MethodArg Name="Channel"       FValue="LL_TIM_CHANNEL_CH1"/>
            <MethodArg Name="ICActiveInput" FValue="LL_TIM_ACTIVEINPUT_TRC"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       FValue="LL_TIM_CHANNEL_CH1"/>
            <MethodArg Name="ICPrescaler"   ParameterName="IC1Prescaler"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       FValue="LL_TIM_CHANNEL_CH1"/>
            <MethodArg Name="ICFilter"      ParameterName="IC1Filter"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       FValue="LL_TIM_CHANNEL_CH1"/>
            <MethodArg Name="ICPolarity"    ParameterName="IC1Polarity"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->

        <CallLibMethod Name="LL_TIM_IC_EnableXORCombination">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_SetTriggerInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="TriggerInput"  FValue="LL_TIM_TS_TI1F_ED"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_SetSlaveMode">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="SlaveMode"     FValue="LL_TIM_SLAVEMODE_RESET"/>
        </CallLibMethod>
        

        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx"             ParameterName="Instance"/>
            <MethodArg Name="CompareValue"     ParameterName="Commutation_Delay"/>
            <MethodArg Name="OCMode"         FValue="LL_TIM_OCMODE_PWM2"/>
            <MethodArg Name="Channel"         FValue="LL_TIM_CHANNEL_CH2"/>
            <MethodArg Name="OCPolarity"     FValue="LL_TIM_OCPOLARITY_HIGH"/>
            <MethodArg Name="OCNPolarity"     FValue="LL_TIM_OCPOLARITY_HIGH"/>
            <MethodArg Name="OCIdleState"     FValue="LL_TIM_OCIDLESTATE_LOW"/>
            <MethodArg Name="OCNIdleState"     FValue="LL_TIM_OCIDLESTATE_LOW"/>
            <MethodArg Name="OCState"         FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState"         FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>

        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
        </CallLibMethod>
        </IFCondition>


<!--
        <CallLibMethod Name="LL_TIM_HALLSENSOR_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="CommutationDelay" ParameterName="Commutation_Delay"/>
        </CallLibMethod>
        -->
    <!--    <ImplementCallBack Name="HAL_TIMEx_HallSensor_MspInit"/>-->
    <!--   <ImplementCallBack Name="HAL_TIMEx_HallSensor_MspDeInit"/>-->
    </RefConfig>
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="HallSensor_DeInit">
        <CallLibMethod Name="HAL_TIMEx_HallSensor_DeInit"/>
    </RefConfig>
    -->
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--
    <RefConfig Name="Encoder_Init">
        <CallLibMethod Name="HAL_TIM_Encoder_Init"/>
        <ImplementCallBack Name="HAL_TIM_Encoder_MspInit"/>
        <ImplementCallBack Name="HAL_TIM_Encoder_MspDeInit"/>
    </RefConfig>
    -->
    <RefConfig Name="Encoder_Init">
        <!-- Dithering -->
        <IFCondition Expression="Semaphore_DitheringEnable_$IpInstance">
            <CallLibMethod Name="LL_TIM_EnableDithering" Type="LL">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression="1=1">
        <CallLibMethod Name="LL_TIM_Init" Type="LL">
            <MethodArg Name="TIMx"             ParameterName="Instance"/>
            <MethodArg Name="Autoreload"     ParameterName="Period"/>
        </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_ENABLE)">
            <CallLibMethod Name="LL_TIM_EnableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="(AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE)">
            <CallLibMethod Name="LL_TIM_DisableARRPreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
<!--        
        <CallLibMethod Name="LL_TIM_ENCODER_Init">
            <MethodArg Name="TIMx"                 ParameterName="Instance"/>
            <MethodArg Name="IC1ActiveInput"     ParameterName="IC1Selection"/>
            <MethodArg Name="IC2ActiveInput"     ParameterName="IC2Selection"/>
            <MethodArg Name="IC1Polarity"         ParameterName="IC1Polarity"/>
            <MethodArg Name="IC2Polarity"         ParameterName="IC2Polarity"/>
            <MethodArg Name="IC1Prescaler"         ParameterName="IC1Prescaler"/>
            <MethodArg Name="IC2Prescaler"         ParameterName="IC2Prescaler"/>
            <MethodArg Name="IC1Filter"         ParameterName="IC1Filter"/>
            <MethodArg Name="IC2Filter"         ParameterName="IC2Filter"/>
        </CallLibMethod>
-->
        <IFCondition Expression="1=1">
        <CallLibMethod Name="LL_TIM_SetEncoderMode">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="EncoderMode" ParameterName="EncoderMode"/>
        </CallLibMethod>
                <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_1"/>
            <MethodArg Name="ICActiveInput" ParameterName="IC1Selection"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_1"/>
            <MethodArg Name="ICPrescaler"   ParameterName="IC1Prescaler"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_1"/>
            <MethodArg Name="ICFilter"      ParameterName="IC1Filter"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_1"/>
            <MethodArg Name="ICPolarity"    ParameterName="IC1Polarity"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
                <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_2"/>
            <MethodArg Name="ICActiveInput" ParameterName="IC2Selection"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_2"/>
            <MethodArg Name="ICPrescaler"   ParameterName="IC2Prescaler"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_2"/>
            <MethodArg Name="ICFilter"      ParameterName="IC2Filter"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel_2"/>
            <MethodArg Name="ICPolarity"    ParameterName="IC2Polarity"/>
        </CallLibMethod>
        </IFCondition>
        <!--END recodage IC_Init -->


<!-- SMS preload -->
<!--
        <IFCondition Expression="Semaphore_SMSActivationEnable_$IpInstance">
            <IFCondition Expression="Semaphore_SMSPreloadSourceIndex_$IpInstance">
                <CallLibMethod Name="HAL_TIMEx_ConfigSlaveModePreload" ReturnHAL="false" Type="HAL">
                    <MethodArg Name="Source"       ParameterName="SMS_Preload_Source"/>
                </CallLibMethod>
            </IFCondition>
            <CallLibMethod Name="HAL_TIMEx_EnableSlaveModePreload" ReturnHAL="false" Type="HAL"/>
        </IFCondition>
-->
        <IFCondition Expression="Semaphore_SMSActivationEnable_$IpInstance">
            <IFCondition Expression="Semaphore_SMSPreloadSourceIndex_$IpInstance">
                <CallLibMethod Name="LL_TIM_SetSMSPreloadSource">
                    <MethodArg Name="TIMx"             ParameterName="Instance"/>
                    <MethodArg Name="PreloadSource"    ParameterName="SMS_Preload_Source"/>
                </CallLibMethod>
            </IFCondition>
            <CallLibMethod Name="LL_TIM_EnableSMSPreload">
                <MethodArg Name="TIMx"         ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>


    </RefConfig>


    <RefConfig Name="Config_Encoder_Index">
            <CallLibMethod Name="LL_TIM_ConfigETR">
                <MethodArg Name="TIMx"          ParameterName="Instance"/>
                <MethodArg Name="ETRPolarity"   ParameterName="IndexPolarity"/>
                <MethodArg Name="ETRPrescaler"  ParameterName="IndexPrescaler"/>
                <MethodArg Name="ETRFilter"     ParameterName="IndexFilter"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_ConfigIDX">
                <MethodArg Name="TIMx"             ParameterName="Instance"/>
                <MethodArg Name="Configuration"    ParameterName="Global_Index_Configuration"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_EnableEncoderIndex">
                <MethodArg Name="TIMx"             ParameterName="Instance"/>
            </CallLibMethod>


    </RefConfig>



<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="Encoder_DeInit">
        <CallLibMethod Name="HAL_TIM_Encoder_DeInit"/>
    </RefConfig>
-->

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel">
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
        </CallLibMethod>
-->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter"/>
        </CallLibMethod>
                <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>


<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_CH1">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH1"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH1"/>
        </CallLibMethod>
    </RefConfig>

-->
    <RefConfig Name="IC_ConfigChannel_CH1">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH1"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH1"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
    -->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_CH1"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_CH1"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_CH2">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH2"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH2"/>
        </CallLibMethod>
    </RefConfig>
-->

    <RefConfig Name="IC_ConfigChannel_CH2">
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH2"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH2"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
-->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_CH2"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_CH2"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_CH3">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH3"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH3"/>
        </CallLibMethod>
    </RefConfig>
-->

    <RefConfig Name="IC_ConfigChannel_CH3">
<!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH3"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH3"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
-->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_CH3"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_CH3"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_CH4">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH4"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH4"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel_CH4">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_CH4"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_CH4"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
    -->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_CH4"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_CH4"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_TRC1">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_TRC"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_TRC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_TRC_TI1"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel_TRC1">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
             <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"  />
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC" />
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI1"/>
        </CallLibMethod>
    -->
            <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI1"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_TRC2">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_TRC"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_TRC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_TRC_TI2"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel_TRC2">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"  />
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC" />
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI2"/>
        </CallLibMethod>
            -->
            <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI2"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_TRC3">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_TRC"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_TRC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_TRC_TI3"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel_TRC3">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"  />
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC" />
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI3"/>
        </CallLibMethod>
    -->
        <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI3"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="IC_ConfigChannel_TRC4">
        <CallLibMethod Name="HAL_TIM_IC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigIC"/>
            <MethodArg Name="ICPolarity" ParameterName="ICPolarity_TRC"/>
            <MethodArg Name="ICSelection" ParameterName="ICSelection_TRC"/>
            <MethodArg Name="ICFilter" ParameterName="ICFilter_TRC_TI4"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="IC_ConfigChannel_TRC4">
    <!--
        <CallLibMethod Name="LL_TIM_IC_Init">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"  />
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC" />
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI4"/>
        </CallLibMethod>
    -->
            <!-- START recodage IC_Init-->
        <CallLibMethod Name="LL_TIM_IC_SetActiveInput">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICActiveInput" ParameterName="ICSelection_TRC"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPrescaler">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPrescaler"   ParameterName="ICPrescaler"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetFilter">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICFilter"      ParameterName="ICFilter_TRC_TI1"/>
        </CallLibMethod>
        <CallLibMethod Name="LL_TIM_IC_SetPolarity">
            <MethodArg Name="TIMx"          ParameterName="Instance"/>
            <MethodArg Name="Channel"       ParameterName="Channel"/>
            <MethodArg Name="ICPolarity"    ParameterName="ICPolarity_TRC"/>
        </CallLibMethod>
        <!--END recodage IC_Init -->
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_1">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
        <RefConfig Name="PWM_ConfigChannel_1">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_1"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_1"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_1"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_2">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="PWM_ConfigChannel_2">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_2"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_2"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_2"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_3">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="PWM_ConfigChannel_3">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH3"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_3"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_3"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_3"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH3"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH3"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_4">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="PWM_ConfigChannel_4">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH4"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_4"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_4"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_4"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH4"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH4"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_5">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="PWM_ConfigChannel_5">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH5"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_5"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_5"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_5"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH5"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH5"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="PWM_ConfigChannel_6">
        <CallLibMethod Name="HAL_TIM_PWM_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
            <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="PWM_ConfigChannel_6">
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_OC_EnablePreload" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH6"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
                <MethodArg Name="OCMode" ParameterName="OCMode_PWM"/>
                <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_6"/>
           <!--     <MethodArg Name="OCFastMode" ParameterName="OCFastMode_PWM"/> -->
                <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
                <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
                <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
                <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
         <!--       <MethodArg Name="OCState" ParameterName="OCState_6"/> not defined-->
         <!--       <MethodArg Name="OCNState" ParameterName="OCNState_6"/> not defined-->
                <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
                <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="OCFastMode_PWM=TIM_OCFAST_ENABLE"> <!-- voir si pas LL a la place-->
            <CallLibMethod Name="LL_TIM_OC_EnableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH6"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH6"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL

    <RefConfig Name="OC_ConfigChannel_1">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_1"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_1">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_1"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_1"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_1"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_1"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
        </CallLibMethod>

    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->


<!--HAL
    <RefConfig Name="OC_ConfigChannel_2">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_2"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_2">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_2"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_2"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_2"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_2"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
        </CallLibMethod>

    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="OC_ConfigChannel_3">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_3"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
        </CallLibMethod>
        <IFCondition Expression="Semaphore_PulseOnCompare_CH3_$IpInstance">
            <CallLibMethod Name="HAL_TIMEx_OC_ConfigPulseOnCompare" ReturnHAL="false" Type="HAL">
                <MethodArg Name="PulseWidthPrescaler"  ParameterName="PulseWidthPrescaler"/>
                <MethodArg Name="PulseWidth"           ParameterName="PulseWidth"         />
            </CallLibMethod>
        </IFCondition>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_3">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_3"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_3"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_3"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_3"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH3"/>
        </CallLibMethod>
        <IFCondition Expression="Semaphore_PulseOnCompare_CH3_$IpInstance">
            <CallLibMethod Name="LL_TIM_OC_SetPulseWidthPrescaler" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="PulseWidthPrescaler" ParameterName="PulseWidthPrescaler"/>
           </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_SetPulseWidth" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="PulseWidth" ParameterName="PulseWidth"/>
           </CallLibMethod>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="OC_ConfigChannel_4">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_4"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
        </CallLibMethod>
        <IFCondition Expression="Semaphore_PulseOnCompare_CH4_$IpInstance">
            <CallLibMethod Name="HAL_TIMEx_OC_ConfigPulseOnCompare" ReturnHAL="false" Type="HAL">
                <MethodArg Name="PulseWidthPrescaler"  ParameterName="PulseWidthPrescaler"/>
                <MethodArg Name="PulseWidth"           ParameterName="PulseWidth"         />
            </CallLibMethod>
        </IFCondition>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_4">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_4"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_4"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_4"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_4"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH4"/>
        </CallLibMethod>
        <IFCondition Expression="Semaphore_PulseOnCompare_CH4_$IpInstance">
            <CallLibMethod Name="LL_TIM_OC_SetPulseWidthPrescaler" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="PulseWidthPrescaler" ParameterName="PulseWidthPrescaler"/>
           </CallLibMethod>
            <CallLibMethod Name="LL_TIM_OC_SetPulseWidth" Type="LL">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="PulseWidth" ParameterName="PulseWidth"/>
           </CallLibMethod>
        </IFCondition>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="OC_ConfigChannel_5">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_5"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_5">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_5"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_5"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_5"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_5"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH5"/>
        </CallLibMethod>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--HAL
    <RefConfig Name="OC_ConfigChannel_6">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_6"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_6">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_6"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_6"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_6"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_6"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH6"/>
        </CallLibMethod>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!-- NE PAS ENCORE FAIRE -->
<!--
    <RefConfig Name="OC_ConfigChannel_forced_1">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_1">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_1"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_1"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_1"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
        </CallLibMethod>

    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="OC_ConfigChannel_forced_2">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_2">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_2"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_2"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_2"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
        </CallLibMethod>

    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="OC_ConfigChannel_forced_3">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_3">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_3"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_3"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_3"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_3"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_3"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_3"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_3"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH3"/>
        </CallLibMethod>

    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="OC_ConfigChannel_forced_4">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_4">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_4"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_4"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_4"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_4"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_4"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_4"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_4"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH4"/>
        </CallLibMethod>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="OC_ConfigChannel_forced_5">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_5">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_5"/>
       <!--     <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/> -->
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_5"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_5"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_5"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_5"/>
     <!--       <MethodArg Name="OCState" ParameterName="OCState_5"/> not defined-->
     <!--       <MethodArg Name="OCNState" ParameterName="OCNState_5"/> not defined-->
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH5"/>
        </CallLibMethod>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="OC_ConfigChannel_forced_6">
        <CallLibMethod Name="HAL_TIM_OC_ConfigChannel">
            <MethodArg Name="sConfig" ParameterName="sConfigOC"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="OCFastMode" ParameterName="DefaultOCFastMode"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
        </CallLibMethod>
    </RefConfig>
-->
<!--Start LL -->
    <RefConfig Name="OC_ConfigChannel_forced_6">
        <CallLibMethod Name="LL_TIM_OC_Init" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="sConfig" ParameterName="TIM_OC_InitStruct"/>
            <MethodArg Name="OCMode" ParameterName="OCMode_forced"/>
            <MethodArg Name="CompareValue" ParameterName="Pulse_Channel_6"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_6"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_6"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_6"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_6"/>
            <MethodArg Name="OCState" FValue="LL_TIM_OCSTATE_DISABLE"/>
            <MethodArg Name="OCNState" FValue="LL_TIM_OCSTATE_DISABLE"/>
        </CallLibMethod>
        <!-- Forcer le FastMode a Disable pour OC ( default mode )-->
        <CallLibMethod Name="LL_TIM_OC_DisableFast" Type="LL">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH6"/>
        </CallLibMethod>
    </RefConfig>
<!--End LL -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--               MODE DOES NOT EXIST ANY MORE                       -->
<!--
    <RefConfig Name="OPM_ConfigChannel_1">
        <CallLibMethod Name="HAL_TIM_OnePulse_ConfigChannel">
            <MethodArg Name="OCMode" ParameterName="OCMode_1"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_1"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_1"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_1"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_1"/>
            <MethodArg Name="OutputChannel" ParameterName="Output_Channel"/>
            <MethodArg Name="InputChannel" ParameterName="Input_Channel"/>
        </CallLibMethod>
    </RefConfig>
-->
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <!--               MODE DOES NOT EXIST ANY MORE                       -->
<!--
    <RefConfig Name="OPM_ConfigChannel_2">
        <CallLibMethod Name="HAL_TIM_OnePulse_ConfigChannel">
            <MethodArg Name="OCMode" ParameterName="OCMode_2"/>
            <MethodArg Name="OCPolarity" ParameterName="OCPolarity_2"/>
            <MethodArg Name="OCNPolarity" ParameterName="OCNPolarity_2"/>
            <MethodArg Name="OCIdleState" ParameterName="OCIdleState_2"/>
            <MethodArg Name="OCNIdleState" ParameterName="OCNIdleState_2"/>
            <MethodArg Name="OutputChannel" ParameterName="Output_Channel"/>
            <MethodArg Name="InputChannel" ParameterName="Input_Channel"/>
        </CallLibMethod>
    </RefConfig>
-->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--               MODE DOES NOT EXIST ANY MORE                       -->
<!--
    <RefConfig Name="ConfigCommutationEvent">
        <CallLibMethod Name="HAL_TIMEx_ConfigCommutationEvent"/>
    </RefConfig>
-->
    <!--               Translated to LL in case of                       -->
<!--
    <RefConfig Name="ConfigCommutationEvent">
    
        <IFCondition Expression="CommutationSource=(TIM_TS_ITR0|TIM_TS_ITR1|TIM_TS_ITR2|TIM_TS_ITR3)">
            <CallLibMethod Name="LL_TIM_SetTriggerInput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="TriggerInput" ParameterName="CommutationSource"/>
            </CallLibMethod>
        </IFCondition>
        
        <CallLibMethod Name="LL_TIM_CC_EnablePreload">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
        </CallLibMethod>
        
        <CallLibMethod Name="LL_TIM_CC_EnablePreload">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="CCUpdateSource" ParameterName="CommutationSource"/>
        </CallLibMethod>
    </RefConfig>
-->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--    
    <RefConfig Name="SlaveConfigSynchronization">
        <CallLibMethod Name="HAL_TIM_SlaveConfigSynchronization">
            <MethodArg Name="TriggerPrescaler" ParameterName="Slave_TriggerPrescaler"/>
            <MethodArg Name="TriggerPolarity" ParameterName="Slave_TriggerPolarity"/>
            <MethodArg Name="TriggerFilter" ParameterName="Slave_TriggerFilter"/>
            <MethodArg Name="InputTrigger" ParameterName="TIM_InputTrigger"/>
            <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="SlaveConfigSynchronization">
        <!--codage de void TIM_SlaveTimer_SetConfig-->
        <IFCondition Expression="1=1">
            <CallLibMethod Name="LL_TIM_SetTriggerInput">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="TriggerInput" ParameterName="TIM_InputTrigger"/>
            </CallLibMethod>
        </IFCondition>
        <IFCondition Expression ="TIM_SlaveMode=TIM_SLAVEMODE_EXTERNAL1"><!-- changement de slaveMode vers TIM_SlaveMode-->
            <CallLibMethod Name="LL_TIM_SetClockSource">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="ClockSource" FValue="LL_TIM_CLOCKSOURCE_EXT_MODE1"/>
            </CallLibMethod>
        <Else>
            <CallLibMethod Name="LL_TIM_SetSlaveMode">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="SlaveMode" ParameterName="TIM_SlaveMode"/>
            </CallLibMethod>
        </Else>
        </IFCondition>
            
        <IFCondition Expression ="TIM_InputTrigger=TIM_TS_ETRF">
            <CallLibMethod Name="LL_TIM_DisableExternalClock">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
            
            <CallLibMethod Name="LL_TIM_ConfigETR">
                <MethodArg Name="TIMx"             ParameterName="Instance"/>
                <MethodArg Name="ETRPolarity"     ParameterName="Slave_TriggerPolarity"/>
                <MethodArg Name="ETRPrescaler"     ParameterName="Slave_TriggerPrescaler"/>
                <MethodArg Name="ETRFilter"     ParameterName="Slave_TriggerFilter"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger=TIM_TS_TI1F_ED">
            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="Slave_TriggerFilter"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger=TIM_TS_TI1FP1">
            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICFilter" ParameterName="Slave_TriggerFilter"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH1"/>
                <MethodArg Name="ICPolarity" ParameterName="Slave_TriggerPolarity"/>
            </CallLibMethod>
        </IFCondition>

        <IFCondition Expression ="TIM_InputTrigger=TIM_TS_TI2FP2">
            <CallLibMethod Name="LL_TIM_CC_DisableChannel">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channels" FValue="LL_TIM_CHANNEL_CH2"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetFilter">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICFilter" ParameterName="Slave_TriggerFilter"/>
            </CallLibMethod>

            <CallLibMethod Name="LL_TIM_IC_SetPolarity">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
                <MethodArg Name="Channel" FValue="LL_TIM_CHANNEL_CH2"/>
                <MethodArg Name="ICPolarity" ParameterName="Slave_TriggerPolarity"/>
            </CallLibMethod>

        </IFCondition>

        <!--FIN codage de void TIM_SlaveTimer_SetConfig-->
        <IFCondition Expression ="1=1">
    
            <CallLibMethod Name="LL_TIM_DisableIT_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        
            <CallLibMethod Name="LL_TIM_DisableDMAReq_TRIG">
                <MethodArg Name="TIMx" ParameterName="Instance"/>
            </CallLibMethod>
        </IFCondition>
    </RefConfig>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear1">
        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>
        </CallLibMethod>
    </RefConfig>
-->

    <RefConfig Name="ConfigOCrefClear1">
        <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__1=TIM_CHANNEL_1">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear2">
        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__2"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="ConfigOCrefClear2">
        <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__2=TIM_CHANNEL_2">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__2"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__2"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
    
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear3">

        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__3"/>
        </CallLibMethod>

    </RefConfig>
    
-->
    <RefConfig Name="ConfigOCrefClear3">
         <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__3=TIM_CHANNEL_3">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__3"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__3"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear4">
        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__4"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="ConfigOCrefClear4">
          <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__4=TIM_CHANNEL_4">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__4"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__4"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear5">

        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__5"/>
        </CallLibMethod>

    </RefConfig>
-->
    <RefConfig Name="ConfigOCrefClear5">
         <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__5=TIM_CHANNEL_5">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__5"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__5"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!--
    <RefConfig Name="ConfigOCrefClear6">
        <CallLibMethod Name="HAL_TIM_ConfigOCrefClear">
            <MethodArg Name="Channel" ParameterName="ClearChannel__6"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="ConfigOCrefClear6">
         <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
        <IFCondition Expression="ClearChannel__6=TIM_CHANNEL_6">
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP1">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP2">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP2"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP3">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP3"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP4">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP4"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP5">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP5"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP6">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP6"/>
                </CallLibMethod>
            </IFCondition>
            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_COMP7">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP7"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ClearInputPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ClearInputPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ClearInputFilter"/>
                </CallLibMethod>
            </IFCondition>

            <IFCondition Expression="ClearInputState=ENABLE">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__6"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__6"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
    </RefConfig>
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
    <RefConfig Name="ConfigOCrefClear_GENERIC "> <!-- To be used by all other calls-->
          <!--  <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>--><!-- TO BE REPLACED BY CALLING FUNCTION PARAMETERS -->
          
        <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_NONE">
                <!-- reset OCCS -->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_COMP1"/> <!--Force OCCS=0 et OCREF_CLR=0 -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" FValue="LL_TIM_ETR_POLARITY_NONINVERTED"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_POLARITY_NONINVERTED-->
                    <MethodArg Name="ETRPrescaler" FValue="LL_TIM_ETR_PRESCALER_DIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_PRESCALER_DIV1-->
                    <MethodArg Name="ETRFilter" FValue="LL_TIM_ETR_FILTER_FDIV1"/> <!--PARAMETRE A FORCER a  LL_TIM_ETR_FILTER_FDIV1-->
                </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_OCREFCLR">
                <!-- Reset OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_NC"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_NC -->
                </CallLibMethod>
        </IFCondition>
        <IFCondition Expression="ClearInputSource=TIM_CLEARINPUTSOURCE_ETR">
                <!-- Set OCCS-->
                <CallLibMethod Name="LL_TIM_SetOCRefClearInputSource">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="OCRefClearInputSource" FValue="LL_TIM_OCREF_CLR_INT_ETR"/> <!--PARAMETRE A FORCER a LL_TIM_OCREF_CLR_INT_ETR -->
                </CallLibMethod>
                <!-- reset SMCR_ECE -->
                <CallLibMethod Name="LL_TIM_DisableExternalClock">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                </CallLibMethod>
                <!-- set SMCR_ETP/ETPS/ETF -->
                <CallLibMethod Name="LL_TIM_ConfigETR">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="ETRPolarity" ParameterName="ETRPolarity"/>
                    <MethodArg Name="ETRPrescaler" ParameterName="ETRPrescaler"/>
                    <MethodArg Name="ETRFilter" ParameterName="ETRFilter"/>
                </CallLibMethod>
        </IFCondition>

        <!-- switch case on Channel -->

        <IFCondition Expression="Channel=TIM_CHANNEL_CH1">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__1"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
        <IFCondition Expression="Channel=TIM_CHANNEL_CH2">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__2"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__2"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
        <IFCondition Expression="Channel=TIM_CHANNEL_CH3">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__3"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__3"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
        <IFCondition Expression="Channel=TIM_CHANNEL_CH4">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__4"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__4"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
        <IFCondition Expression="Channel=TIM_CHANNEL_CH5">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__5"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__5"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>
        <IFCondition Expression="Channel=TIM_CHANNEL_CH6">
            <IFCondition Expression="ClearInputState=Enable">
                <!-- Set  CCMR1_OC1CE-->
                <CallLibMethod Name="LL_TIM_OC_EnableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__6"/>
                </CallLibMethod>
            <Else>
                <CallLibMethod Name="LL_TIM_OC_DisableClear">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
                    <MethodArg Name="Channel" ParameterName="ClearChannel__6"/>
                </CallLibMethod>
            </Else>
            </IFCondition>
        </IFCondition>


    </RefConfig>
    <!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--
    <RefConfig Name="ConfigTI1Input">
        <CallLibMethod Name="HAL_TIM_ConfigTI1Input">
            <MethodArg Name="TI1_Selection" ParameterName="TI1_Selection"/>
        </CallLibMethod>
    </RefConfig>
-->
    <RefConfig Name="ConfigTI1Input">
    <IFCondition Expression="TI1_Selection=TIM_TI1SELECTION_XORCOMBINATION">
        <CallLibMethod Name="LL_TIM_IC_EnableXORCombination">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
        </CallLibMethod>
    <Else>
        <CallLibMethod Name="LL_TIM_IC_DisableXORCombination">
                    <MethodArg Name="TIMx" ParameterName="Instance"/>
        </CallLibMethod>
    </Else>
    </IFCondition>
    </RefConfig>


<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!--OCxPreload management-->

	<RefConfig Name="setOC1Preload_OC">
		<IFCondition Expression="(OC1Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC2Preload_OC">
		<IFCondition Expression="(OC2Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC3Preload_OC">
		<IFCondition Expression="(OC3Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC4Preload_OC">
		<IFCondition Expression="(OC4Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC5Preload_OC">
		<IFCondition Expression="(OC5Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC6Preload_OC">
		<IFCondition Expression="(OC6Preload = ENABLE)">
			<CallLibMethod Name="LL_TIM_OC_EnablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	
	<RefConfig Name="setOC1Preload_PWM">
		<IFCondition Expression="(OC1Preload_PWM = DISABLE)">
			<CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC2Preload_PWM">
		<IFCondition Expression="(OC2Preload_PWM = DISABLE)">
			<CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC3Preload_PWM">
		<IFCondition Expression="(OC3Preload_PWM = DISABLE)">
			<CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC4Preload_PWM">
		<IFCondition Expression="(OC4Preload_PWM = DISABLE)">
			<CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC5Preload_PWM">
		<IFCondition Expression="(OC5Preload_PWM = DISABLE)">
            <CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				<MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>
	<RefConfig Name="setOC6Preload_PWM">
		<IFCondition Expression="(OC6Preload_PWM = DISABLE)">
			<CallLibMethod Name="LL_TIM_OC_DisablePreload" ReturnHAL="false" Type="HAL">
				 <MethodArg Name="TIMx" ParameterName="Instance"/>
			</CallLibMethod>
		</IFCondition>
    </RefConfig>


<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->



	<!--Start Remap -->

    <RefConfig Name="RemapConfig_TIM1_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM1_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="RemapConfig_TIM2_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM2_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="RemapConfig_TIM3_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM3_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>	
    <RefConfig Name="RemapConfig_TIM4_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM4_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="RemapConfig_TIM5_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM5_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="RemapConfig_TIM8_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM8_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="RemapConfig_TIM20_ETR">
        <CallLibMethod Name="LL_TIM_SetETRSource">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="ETRSource" ParameterName="TIM20_ETR_REMAP"/>
        </CallLibMethod>
    </RefConfig>





    <RefConfig Name="TISelection_TIM1_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM1_TI1_REMAP"/>
        </CallLibMethod>
    </RefConfig>


    <RefConfig Name="TISelection_TIM2_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM2_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM2_TI2">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM2_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM2_TI3">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM2_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM2_TI4">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM2_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>




    <RefConfig Name="TISelection_TIM3_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM3_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM3_TI2">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM3_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM3_TI3">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM3_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>



    <RefConfig Name="TISelection_TIM4_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM4_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM4_TI2">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM4_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM4_TI3">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM4_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM4_TI4">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM4_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>



    <RefConfig Name="TISelection_TIM5_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM5_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM5_TI2">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM5_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>




    <RefConfig Name="TISelection_TIM8_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM8_TI1_REMAP"/>
        </CallLibMethod>
    </RefConfig>



    <RefConfig Name="TISelection_TIM15_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM15_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM15_TI2">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM15_GLOBAL_REMAP"/>
        </CallLibMethod>
    </RefConfig>



    <RefConfig Name="TISelection_TIM16_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM16_TI1_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM17_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM17_TI1_REMAP"/>
        </CallLibMethod>
    </RefConfig>
    <RefConfig Name="TISelection_TIM20_TI1">
        <CallLibMethod Name="LL_TIM_SetRemap">
            <MethodArg Name="TIMx" ParameterName="Instance"/>
            <MethodArg Name="Remap" ParameterName="TIM20_TI1_REMAP"/>
        </CallLibMethod>
    </RefConfig>




















<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->

<!-- FIN -->

    <LibMethod Comment="" Name="LL_TIM_EnableBRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableBRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ConfigBRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakPolarity" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakFilter" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakAFMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisarmBRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ReArmBRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableBRK2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableBRK2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ConfigBRK2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Break2Polarity" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Break2Filter" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Break2AFMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisarmBRK2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ReArmBRK2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetOffStates" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="OffStateIdle" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="OffStateRun" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableAutomaticOutput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableAutomaticOutput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledAutomaticOutput">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableAllOutputs" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableAllOutputs" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledAllOutputs">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableBreakInputSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakInput" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Source" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableBreakInputSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakInput" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Source" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetBreakInputSourcePolarity" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="BreakInput" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Source" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Polarity" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_EnablePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_DisablePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_SetUpdate" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CCUpdateSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_SetDMAReqTrigger">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="DMAReqTrigger" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_GetDMAReqTrigger">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_SetLockLevel" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="LockLevel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_EnableChannel" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channels" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_DisableChannel" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channels" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_CC_IsEnabledChannel">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channels" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableExternalClock" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableExternalClock" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledExternalClock">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetClockSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="ClockSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetEncoderMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="EncoderMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ConfigDMABurst">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="DMABurstBaseAddress" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="DMABurstLength" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDMAReq_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDMAReq_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDMAReq_TRIG">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableEncoderIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableEncoderIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledEncoderIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetIndexDirection" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="IndexDirection" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetIndexDirection" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableFirstIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableFirstIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledFirstIndex" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetIndexPositionning" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="IndexPositionning" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetIndexPositionning" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ConfigIDX" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Configuration" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_UPDATE" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_CC1" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_CC2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_CC3" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_CC4" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_COM" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_BRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GenerateEvent_BRK2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC5">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC5">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC6">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC6">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_TRIG">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_TRIG">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_BRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_BRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_BRK2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_BRK2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC1OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC1OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC2OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC2OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC3OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC3OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_CC4OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_CC4OVR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_SYSBRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_SYSBRK">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_TERR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_TERR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_IERR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_IERR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_DIR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_DIR">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ClearFlag_IDX">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsActiveFlag_IDX">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DeInit">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_InitStruct" TypeName="LL_TIM_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CounterMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Autoreload" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ClockDivision" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RepetitionCounter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_InitStruct" TypeName="LL_TIM_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CounterMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Autoreload" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ClockDivision" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RepetitionCounter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_OC_InitStruct" TypeName="LL_TIM_OC_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="OCMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCIdleState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNIdleState" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_OC_InitStruct" TypeName="LL_TIM_OC_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="OCMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCIdleState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OCNIdleState" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_ICInitStruct" TypeName="LL_TIM_IC_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="ICPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICPrescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICFilter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_IC_InitStruct" TypeName="LL_TIM_IC_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="ICPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICPrescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ICFilter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ENCODER_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_EncoderInitStruct" TypeName="LL_TIM_ENCODER_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="EncoderMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1ActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2ActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Filter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ENCODER_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_EncoderInitStruct" TypeName="LL_TIM_ENCODER_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="EncoderMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1ActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2ActiveInput" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC2Filter" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_HALLSENSOR_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_HallSensorInitStruct" TypeName="LL_TIM_HALLSENSOR_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="IC1Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CommutationDelay" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_HALLSENSOR_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_HallSensorInitStruct" TypeName="LL_TIM_HALLSENSOR_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="IC1Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Prescaler" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="IC1Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CommutationDelay" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_BDTR_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="TIM_BDTRInitStruct" TypeName="LL_TIM_BDTR_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="OSSRState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OSSIState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="LockLevel" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="DeadTime" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakFilter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakAFMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2AFMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="AutomaticOutput" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_BDTR_Init" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="true" GenericType="struct" Name="TIM_BDTRInitStruct" TypeName="LL_TIM_BDTR_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="OSSRState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OSSIState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="LockLevel" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="DeadTime" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakState" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakPolarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakFilter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="BreakAFMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2Polarity" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2Filter" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="Break2AFMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="AutomaticOutput" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_Config" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Configuration" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_SetActiveInput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ICActiveInput" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetActiveInput">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_SetPrescaler" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ICPrescaler" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetPrescaler">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_SetFilter" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ICFilter" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetFilter">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_SetPolarity" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ICPolarity" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetPolarity">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_EnableXORCombination" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_DisableXORCombination" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_IsEnabledXORCombination">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetCaptureCH1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetCaptureCH2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetCaptureCH3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IC_GetCaptureCH4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_UPDATE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_CC1">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_CC2">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_CC3">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_CC4">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_COM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_TRIG" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_BRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_BRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_BRK" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_TERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_TERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_TERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_IERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_IERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_IERR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_DIR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_DIR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_DIR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableIT_IDX" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableIT_IDX" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledIT_IDX" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetOCRefClearInputSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="OCRefClearInputSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_ConfigOutput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Configuration" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetPolarity" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Polarity" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetPolarity">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetIdleState" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="IdleState" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetIdleState">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_EnableFast" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_DisableFast" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_IsEnabledFast">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_EnablePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_DisablePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_IsEnabledPreload">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_EnableClear" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_DisableClear" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_IsEnabledClear">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Channel" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="DeadTime" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH1" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH3" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH4" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH5" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetCompareCH6" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CompareValue" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH1" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH3" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH4" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH5" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_GetCompareCH6" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetCH5CombinedChannels" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="GroupCH5" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableAsymmetricalDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableAsymmetricalDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledAsymmetricalDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetFallingDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="DeadTime" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetFallingDeadTime" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDeadTimePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDeadTimePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDeadTimePreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetPulseWidthPrescaler" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="PulseWidthPrescaler" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetPulseWidthPrescaler" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_OC_SetPulseWidth" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="PulseWidth" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetPulseWidth" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetRemap" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Remap" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableHSE32" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableHSE32" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledHSE32" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetTriggerOutput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="TimerSynchronization" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetTriggerOutput2" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="ADCSynchronization" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetSlaveMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="SlaveMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetTriggerInput" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="TriggerInput" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableMasterSlaveMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableMasterSlaveMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledMasterSlaveMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_ConfigETR" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="ETRPolarity" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ETRPrescaler" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="ETRFilter" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetETRSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="ETRSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableSMSPreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableSMSPreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledSMSPreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetSMSPreloadSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="PreloadSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetSMSPreloadSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableCounter" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableCounter" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledCounter">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableUpdateEvent" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableUpdateEvent" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledUpdateEvent">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetUpdateSource" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="UpdateSource" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetUpdateSource">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetOnePulseMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="OnePulseMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetOnePulseMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetCounterMode" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="CounterMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetCounterMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableARRPreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableARRPreload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledARRPreload">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetClockDivision" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="ClockDivision" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetClockDivision">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetCounter" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Counter" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetCounter">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetDirection">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetPrescaler" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="Prescaler" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetPrescaler">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetAutoReload" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="AutoReload" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetAutoReload">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_SetRepetitionCounter" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="RepetitionCounter" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_GetRepetitionCounter">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableUIFRemap" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableUIFRemap" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_EnableDithering" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_DisableDithering" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_TIM_IsEnabledDithering" Optimizable="true">
        <Argument AddressOf="false" GenericType="baseaddress" Name="TIMx" TypeName="TIM_TypeDef"/>
    </LibMethod>
    <RefComponent Cclass="LL" Cgroup="TIM" Cversion="0.2.0">
        <File Category="header" Name="Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_tim.h"/>
        <File Category="source" Name="Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_ll_tim.c"/>
    </RefComponent>
</IP>
