<?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="COMP"  IncludeFile="stm32l0xx_ll_comp.h;stm32l0xx_ll_exti.h"  Version="STM32Cube_FW_L0_V1.7.0" 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">





       
    <RefConfig Name="Comp_Init">
     
        <CallLibMethod Name="LL_COMP_Init">
           <MethodArg Name="PowerMode" ParameterName="Mode"/>
           <MethodArg Name="InputPlus" ParameterName="NonInvertingInput"/>
           <MethodArg Name="InputMinus" ParameterName="InvertingInput"/>
           <MethodArg Name="OutputPolarity" ParameterName="OutputPol"/>
           <MethodArg Name="COMPx" ParameterName="Instance"/>
        </CallLibMethod>     
        <CallLibMethod Name="LL_COMP_SetCommonWindowMode">
           <MethodArg Name="COMPxy_COMMON"> 
                <CallLibMethod Name="__LL_COMP_COMMON_INSTANCE">
                   <MethodArg Name="COMPx" ParameterName="Instance"/>
                </CallLibMethod>
           </MethodArg> 
        </CallLibMethod>


        <IFCondition Expression="($IpNumber=2)">
           <IFCondition Expression="((InvertingInput =COMP_INPUT_MINUS_VREFINT)|(InvertingInput=COMP_INPUT_MINUS_1_4VREFINT)|(InvertingInput=COMP_INPUT_MINUS_1_2VREFINT)|(InvertingInput=COMP_INPUT_MINUS_3_4VREFINT))">
                <CallLibMethod Name="LL_SYSCFG_VREFINT_EnableCOMP"/>
                <CallLibMethod Name="" Type="HardCode">
                <HardCode Text="#n#t/* Wait loop initialization and execution */#n#t/* Note: Variable divided by 2 to compensate partially CPU processing cycles */#n#t__IO uint32_t wait_loop_index = 0;#n#twait_loop_index = (LL_COMP_DELAY_VOLTAGE_SCALER_STAB_US * (SystemCoreClock / (1000000 * 2)));#n#twhile(wait_loop_index != 0)#n#t{#n#t#twait_loop_index--;#n#t}#n#n#n"/>
                </CallLibMethod>
           </IFCondition> 
        </IFCondition> 

        <IFCondition Expression="(!(LPTIMConnection=COMP_LPTIMCONNECTION_DISABLED))">
             <IFCondition Expression="(LPTIMConnection=COMP_LPTIMCONNECTION_IN1_ENABLED)">
               <IFCondition Expression="($IpNumber=2)">
                 <CallLibMethod Name="LL_COMP_SetOutputLPTIM">
                    <MethodArg Name="COMPx" ParameterName="Instance"/>
                    <MethodArg Name="OutputLptim" FValue="LL_COMP_OUTPUT_LPTIM1_IN1_COMP2"/>
                 </CallLibMethod>
               <Else>
                 <CallLibMethod Name="LL_COMP_SetOutputLPTIM">
                   <MethodArg Name="COMPx" ParameterName="Instance"/>
                   <MethodArg Name="OutputLptim" FValue="LL_COMP_OUTPUT_LPTIM1_IN1_COMP1"/>
                 </CallLibMethod>
               </Else>
               </IFCondition> 
             <Else>
                <CallLibMethod Name="" Type="HardCode">
                 <HardCode Text="#n#t#define C_REV_ID_A              0x1000U /* Cut1.0 */#n#t#define C_REV_ID_Z              0x1008U /* Cut1.1 */#n#t#define C_REV_ID_Y              0x1003U /* Cut1.2 */#n#t#define C_DEV_ID_L073           0x447U#n#t#define C_DEV_ID_L053           0x417U"/>
                </CallLibMethod>

               <CallLibMethod Name="" Type="HardCode">
                <HardCode Text="#n#tuint32_t ID = LL_DBGMCU_GetDeviceID() ;#n#tuint32_t REVID = LL_DBGMCU_GetRevisionID() ;#n#tif (!(((ID == C_DEV_ID_L073) &amp;&amp; (REVID == C_REV_ID_A)) || ((ID == C_DEV_ID_L053) &amp;&amp;  (REVID == C_REV_ID_A)) || ((ID == C_DEV_ID_L053) &amp;&amp; (REVID == C_REV_ID_Z))))#n#t{#n#t#t"/>
               </CallLibMethod>
               <CallLibMethod Name="LL_COMP_SetOutputLPTIM">
                <MethodArg Name="COMPx" ParameterName="Instance"/>
                <MethodArg Name="OutputLptim" ParameterName="LPTIMConnection"/>
               </CallLibMethod>
               <CallLibMethod Name="" Type="HardCode">
                <HardCode Text="#n#t}#n#t"/>
               </CallLibMethod>
             </Else> 
             </IFCondition>            
        </IFCondition>   



        <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_NONE)">
            <CallLibMethod Name="LL_EXTI_DisableEvent_0_31">
              <MethodArg Name="ExtiLine" ParameterName="Instance"/>
            </CallLibMethod>
            <CallLibMethod Name="LL_EXTI_DisableIT_0_31">
              <MethodArg Name="ExtiLine" ParameterName="Instance"/>
            </CallLibMethod>
        <Else>      
             <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_IT_RISING)|(TriggerMode=COMP_TRIGGERMODE_EVENT_RISING)">
                  <CallLibMethod Name="LL_EXTI_EnableRisingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                  </CallLibMethod>    
                  <CallLibMethod Name="LL_EXTI_DisableFallingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                  </CallLibMethod>      
             </IFCondition> 
             <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_IT_FALLING)|(TriggerMode=COMP_TRIGGERMODE_EVENT_FALLING)">
                     <CallLibMethod Name="LL_EXTI_EnableFallingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                     </CallLibMethod>    
                     <CallLibMethod Name="LL_EXTI_DisableRisingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                     </CallLibMethod>      
             </IFCondition> 
             <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_IT_RISING_FALLING)|(TriggerMode=COMP_TRIGGERMODE_EVENT_RISING_FALLING)">
                     <CallLibMethod Name="LL_EXTI_EnableFallingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                     </CallLibMethod>    
                     <CallLibMethod Name="LL_EXTI_EnableRisingTrig_0_31">
                       <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                     </CallLibMethod>      
             </IFCondition> 
             <CallLibMethod Name="LL_EXTI_ClearFlag_0_31">
                 <MethodArg Name="ExtiLine" ParameterName="Instance"/>
             </CallLibMethod>
             <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_IT_RISING)|(TriggerMode=COMP_TRIGGERMODE_IT_FALLING)|(TriggerMode=COMP_TRIGGERMODE_IT_RISING_FALLING)">
                   <CallLibMethod Name="LL_EXTI_DisableEvent_0_31">
                     <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                   </CallLibMethod>
                   <CallLibMethod Name="LL_EXTI_EnableIT_0_31">
                     <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                   </CallLibMethod>
             </IFCondition> 
             <IFCondition Expression="(TriggerMode=COMP_TRIGGERMODE_EVENT_RISING)|(TriggerMode=COMP_TRIGGERMODE_EVENT_FALLING)|(TriggerMode=COMP_TRIGGERMODE_EVENT_RISING_FALLING)">
                   <CallLibMethod Name="LL_EXTI_EnableEvent_0_31">
                     <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                   </CallLibMethod>
                   <CallLibMethod Name="LL_EXTI_DisableIT_0_31">
                     <MethodArg Name="ExtiLine" ParameterName="Instance"/>
                   </CallLibMethod>
            </IFCondition> 
         </Else>           
      </IFCondition>   


    </RefConfig>



    <LibMethod Comment="" Name="LL_SYSCFG_VREFINT_EnableCOMP"/>

    <LibMethod Comment="" Name="LL_DBGMCU_GetRevisionID"/>
    <LibMethod Comment="" Name="LL_DBGMCU_GetDeviceID"/>


    <LibMethod Comment="" Name="LL_EXTI_EnableEvent_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_DisableEvent_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_IsEnabledEvent_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_EnableFallingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_DisableFallingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_IsEnabledFallingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_IsActiveFlag_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_ReadFlag_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_ClearFlag_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_EnableIT_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_DisableIT_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_IsEnabledIT_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_EnableRisingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_DisableRisingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_IsEnabledRisingTrig_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_EXTI_GenerateSWI_0_31">
        <Argument AddressOf="false" GenericType="simple" Name="ExtiLine" OptimizationCondition="equal"/>
    </LibMethod>

    <LibMethod Comment="" Name="__LL_COMP_COMMON_INSTANCE">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>

    <LibMethod Comment="" Name="LL_COMP_SetCommonWindowMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPxy_COMMON" TypeName="COMP_Common_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="WindowMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetCommonWindowMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPxy_COMMON" TypeName="COMP_Common_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_ConfigInputs">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="InputMinus" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="InputPlus" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_SetInputPlus">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="InputPlus" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetInputPlus">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_SetInputMinus">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="InputMinus" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetInputMinus">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_SetPowerMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="PowerMode" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetPowerMode">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_SetOutputLPTIM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="OutputLptim" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetOutputLPTIM">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_SetOutputPolarity">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="false" GenericType="simple" Name="OutputPolarity" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_GetOutputPolarity">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_DeInit">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_Init">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
        <Argument AddressOf="true" GenericType="struct" Name="COMP_InitStruct" TypeName="LL_COMP_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="PowerMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="InputPlus" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="InputMinus" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OutputPolarity" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_StructInit">
        <Argument AddressOf="true" GenericType="struct" Name="COMP_InitStruct" TypeName="LL_COMP_InitTypeDef">
            <Argument AddressOf="false" GenericType="simple" Name="PowerMode" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="InputPlus" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="InputMinus" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="OutputPolarity" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_Enable">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_Disable">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_IsEnabled">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_Lock">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_IsLocked">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <LibMethod Comment="" Name="LL_COMP_ReadOutputLevel">
        <Argument AddressOf="false" GenericType="baseaddress" Name="COMPx" TypeName="COMP_TypeDef"/>
    </LibMethod>
    <RefComponent Cclass="LL" Cgroup="COMP" Cversion="1.7.0">
        <File Category="header" Name="Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_ll_comp.h"/>
        <File Category="source" Name="Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_ll_comp.c"/>
        <File Category="header" Name="Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_ll_exti.h"/>
        <File Category="source" Name="Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_ll_exti.c"/>
        <File Category="header" Name="Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_ll_rcc.h"/>
        <File Category="source" Name="Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_ll_rcc.c"/>
    </RefComponent>
</IP>
