<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP DBVersion="V4.0" IPType="peripheral" Name="RCC" Version="STM32G05_rcc_v1_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_Modes.xsd" 
    xmlns="http://mcd.rou.st.com/modules.php?name=mcu">
 
    <About>RCC: Reset and Clock Control</About>
	

    <RefParameter Visible="false" Comment="Oscillator Type" DefaultValue="+OscillatorTypeHSI+|OscillatorTypeLSI+|OscillatorTypeHSE+|OscillatorTypeLSE" Name="OscillatorType" Type="list"/>
     <RefParameter Name="HSE_Timout"   Comment="HSE Startup Timout Value (ms)" Type="integer" DefaultValue="100" Min="1"  Max="4294967295" Group="RCC Parameters"/>
	 <RefParameter Name="LSE_Timout"   Comment="LSE Startup Timout Value (ms)" Type="integer" DefaultValue="5000" Min="1" Max="4294967295"  Group="RCC Parameters"/>
    <!--Les multiplicateurs-->

   
    <!--APB MUL for TIM-->
    <RefParameter Visible="false" Comment="APB Timer Clock Divider" DefaultValue="1" Name="APB1TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="APB timer clock" Expression="APB1CLKDivider=RCC_HCLK_DIV1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="APB Timer Clock Divider"  DefaultValue="2" Name="APB1TimCLKDivider" Type="integer" Max="2" Min="2"/>
	  
    <!--PLLN-->
    <RefParameter Visible="false" Comment="PLLN" DefaultValue="8" Max="86" Min="8" Name="PLLN" Type="integer"/>


    <RefParameter Visible="false" Comment="I2S_CKIN" Name="EXTERNAL_CLOCK_VALUE" DefaultValue="48000" Type="double" Display="value/1000000" Unit="MHz"/>
    <!--divisor-->


    <!--Cortex_Div-->
<RefParameter Visible="false" Comment="Cortex Div" DefaultValue="SYSTICK_CLKSOURCE_HCLK" Name="Cortex_Div" Type="list">
         <PossibleValue Comment="1" Value="SYSTICK_CLKSOURCE_HCLK" Semaphore="HCLKDiv1"/>
		 <PossibleValue Comment="8" Value="SYSTICK_CLKSOURCE_HCLK_DIV8"/>
   </RefParameter>	
      <RefParameter Visible="false" Comment="Cortex_DivARG" DefaultValue="HAL_RCC_GetHCLKFreq()/1000" Name="Cortex_DivARG" Type="String">
        <Condition Expression="HCLKDiv1" Diagnostic=""/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="Cortex_DivARG" DefaultValue="HAL_RCC_GetHCLKFreq()/8000" Name="Cortex_DivARG" Type="String"/>
    <!--RCC_RTC_Clock_Source_FROM_HSE-->
    <RefParameter Visible="false" Comment="RCC_RTC_Clock_Source_FROM_HSE" Name="RCC_RTC_Clock_Source_FROM_HSE" Type="integer" DefaultValue="32" Max="32" Min="32"/>
    <RefParameter Visible="false" Comment="RCC_CEC_Clock_Source_FROM_HSI16" Name="RCC_CEC_Clock_Source_FROM_HSI16" Type="integer" DefaultValue="488" Max="488" Min="488"/>
    <!--PLLM-->
    <RefParameter Visible="false" Comment="PLLM" DefaultValue="RCC_PLLM_DIV1" Name="PLLM" Type="list">
        <PossibleValue Comment="1" Value="RCC_PLLM_DIV1"/>
        <PossibleValue Comment="2" Value="RCC_PLLM_DIV2"/>
        <PossibleValue Comment="3" Value="RCC_PLLM_DIV3"/>
        <PossibleValue Comment="4" Value="RCC_PLLM_DIV4"/>
        <PossibleValue Comment="5" Value="RCC_PLLM_DIV5"/>
        <PossibleValue Comment="6" Value="RCC_PLLM_DIV6"/>
        <PossibleValue Comment="7" Value="RCC_PLLM_DIV7"/>
	<PossibleValue Comment="8" Value="RCC_PLLM_DIV8"/>
    </RefParameter>
    <!--PLLR-->
    <RefParameter Visible="false" Comment="PLLR" DefaultValue="RCC_PLLR_DIV2" Name="PLLR" Type="list">
        <PossibleValue Comment="2" Value="RCC_PLLR_DIV2" Semaphore="PLLR2"/>
        <PossibleValue Comment="3" Value="RCC_PLLR_DIV3" Semaphore="PLLR3"/>
        <PossibleValue Comment="4" Value="RCC_PLLR_DIV4" Semaphore="PLLR4"/>
        <PossibleValue Comment="5" Value="RCC_PLLR_DIV5" Semaphore="PLLR5"/>
        <PossibleValue Comment="6" Value="RCC_PLLR_DIV6" Semaphore="PLLR6"/>
        <PossibleValue Comment="7" Value="RCC_PLLR_DIV7" Semaphore="PLLR7"/>
        <PossibleValue Comment="8" Value="RCC_PLLR_DIV8" Semaphore="PLLR8"/>
    </RefParameter>
    <!--PLLP-->
    <RefParameter Visible="false" Comment="PLLP" DefaultValue="RCC_PLLP_DIV2" Name="PLLP" Type="list">
        <PossibleValue Comment="2"  Value="RCC_PLLP_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_PLLP_DIV3"/>      
        <PossibleValue Comment="4"  Value="RCC_PLLP_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_PLLP_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_PLLP_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_PLLP_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_PLLP_DIV8"/>
        <PossibleValue Comment="9"  Value="RCC_PLLP_DIV9"/>
        <PossibleValue Comment="10" Value="RCC_PLLP_DIV10"/>
        <PossibleValue Comment="11" Value="RCC_PLLP_DIV11"/>
        <PossibleValue Comment="12" Value="RCC_PLLP_DIV12"/>
        <PossibleValue Comment="13" Value="RCC_PLLP_DIV13"/>
        <PossibleValue Comment="14" Value="RCC_PLLP_DIV14"/>
        <PossibleValue Comment="15" Value="RCC_PLLP_DIV15"/>
        <PossibleValue Comment="16" Value="RCC_PLLP_DIV16"/>
        <PossibleValue Comment="17" Value="RCC_PLLP_DIV17"/>
        <PossibleValue Comment="18" Value="RCC_PLLP_DIV18"/>
        <PossibleValue Comment="19" Value="RCC_PLLP_DIV19"/>
        <PossibleValue Comment="20" Value="RCC_PLLP_DIV20"/>
        <PossibleValue Comment="21" Value="RCC_PLLP_DIV21"/>
        <PossibleValue Comment="22" Value="RCC_PLLP_DIV22"/>
        <PossibleValue Comment="23" Value="RCC_PLLP_DIV23"/>
        <PossibleValue Comment="24" Value="RCC_PLLP_DIV24"/>
        <PossibleValue Comment="25" Value="RCC_PLLP_DIV25"/>
        <PossibleValue Comment="26" Value="RCC_PLLP_DIV26"/>
        <PossibleValue Comment="27" Value="RCC_PLLP_DIV27"/>
        <PossibleValue Comment="28" Value="RCC_PLLP_DIV28"/>
        <PossibleValue Comment="29" Value="RCC_PLLP_DIV29"/>
        <PossibleValue Comment="30" Value="RCC_PLLP_DIV30"/>
        <PossibleValue Comment="31" Value="RCC_PLLP_DIV31"/>
        <PossibleValue Comment="32" Value="RCC_PLLP_DIV32"/>      
    </RefParameter>
    <!--PLLQ-->

    <RefParameter Visible="false" Comment="PLLQ" DefaultValue="RCC_PLLQ_DIV2" Name="PLLQ" Type="list">
        <PossibleValue Comment="2" Value="RCC_PLLQ_DIV2" Semaphore="PLLQ2"/>
        <PossibleValue Comment="3" Value="RCC_PLLQ_DIV3" Semaphore="PLLQ3"/>
        <PossibleValue Comment="4" Value="RCC_PLLQ_DIV4" Semaphore="PLLQ4"/>
        <PossibleValue Comment="5" Value="RCC_PLLQ_DIV5" Semaphore="PLLQ5"/>
        <PossibleValue Comment="6" Value="RCC_PLLQ_DIV6" Semaphore="PLLQ6"/>
        <PossibleValue Comment="7" Value="RCC_PLLQ_DIV7" Semaphore="PLLQ7"/>
        <PossibleValue Comment="8" Value="RCC_PLLQ_DIV8" Semaphore="PLLQ8"/>
    </RefParameter>


    <!--AHBCLKDivider-->
    <RefParameter Comment="AHBCLK Divider" Visible="false" DefaultValue="RCC_SYSCLK_DIV1" Name="AHBCLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_SYSCLK_DIV1" Semaphore="AHBCLKDivider1"/>
        <PossibleValue Comment="2"   Value="RCC_SYSCLK_DIV2"/>
        <PossibleValue Comment="4"   Value="RCC_SYSCLK_DIV4"/>
        <PossibleValue Comment="8"   Value="RCC_SYSCLK_DIV8"/>
        <PossibleValue Comment="16"  Value="RCC_SYSCLK_DIV16"/>
        <PossibleValue Comment="64"  Value="RCC_SYSCLK_DIV64"/>
        <PossibleValue Comment="128" Value="RCC_SYSCLK_DIV128"/>
        <PossibleValue Comment="256" Value="RCC_SYSCLK_DIV256"/>
        <PossibleValue Comment="512" Value="RCC_SYSCLK_DIV512"/>
    </RefParameter>
    <!--RCC_MCODiv1-->
    <RefParameter Visible="false" Comment="MCO Prescaler" DefaultValue="RCC_MCODIV_1" Name="RCC_MCODiv" Type="list">
        <PossibleValue Comment="1"  Value="RCC_MCODIV_1"/>
        <PossibleValue Comment="2"  Value="RCC_MCODIV_2"/>
        <PossibleValue Comment="4"  Value="RCC_MCODIV_4"/>
        <PossibleValue Comment="8"  Value="RCC_MCODIV_8"/>
        <PossibleValue Comment="16" Value="RCC_MCODIV_16"/>
        <PossibleValue Comment="32" Value="RCC_MCODIV_32"/>
        <PossibleValue Comment="64" Value="RCC_MCODIV_64"/>
        <PossibleValue Comment="128" Value="RCC_MCODIV_128"/>
    </RefParameter>
    <!--diviseur APB 1..16-->
    <RefParameter Visible="false"  Comment="APB Clock Divider" DefaultValue="RCC_HCLK_DIV1" Name="APB1CLKDivider" Type="list">
        <PossibleValue Comment="1"  Value="RCC_HCLK_DIV1"/>
        <PossibleValue Comment="2"  Value="RCC_HCLK_DIV2"/>
        <PossibleValue Comment="4"  Value="RCC_HCLK_DIV4"/>
        <PossibleValue Comment="8"  Value="RCC_HCLK_DIV8"/>
        <PossibleValue Comment="16" Value="RCC_HCLK_DIV16"/>
    </RefParameter>
   
   <!--diviseur HSI16 1..128-->
    <RefParameter Visible="false" Comment="HSI Divider" DefaultValue="RCC_HSI_DIV1" Name="HSISYSCLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_HSI_DIV1"/>
        <PossibleValue Comment="2"   Value="RCC_HSI_DIV2"/>
        <PossibleValue Comment="4"   Value="RCC_HSI_DIV4"/>
        <PossibleValue Comment="8"   Value="RCC_HSI_DIV8"/>
        <PossibleValue Comment="16"  Value="RCC_HSI_DIV16"/>
        <PossibleValue Comment="32"  Value="RCC_HSI_DIV32"/>
        <PossibleValue Comment="64"  Value="RCC_HSI_DIV64"/>
	<PossibleValue Comment="128" Value="RCC_HSI_DIV128"/>
    </RefParameter>

   <!--diviseur RNG 1..8-->
    <RefParameter Visible="false" Comment="RNG Divider" DefaultValue="RCC_RNGCLK_DIV1" Name="RNGCLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_RNGCLK_DIV1"/>
        <PossibleValue Comment="2"   Value="RCC_RNGCLK_DIV2"/>
        <PossibleValue Comment="4"   Value="RCC_RNGCLK_DIV4"/>
        <PossibleValue Comment="8"   Value="RCC_RNGCLK_DIV8"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="RNG HSI Divider" DefaultValue="8" Max="8" Min="8" Name="RNGHSIDiv" Type="integer"/>
    <!--Les multiplicateurs-->
    
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_PLLSOURCE_HSI" Name="PLLSourceVirtual" Type="list">
        <PossibleValue Comment="Pllsource Hsi" Value="RCC_PLLSOURCE_HSI"/>
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+PLLSourceVirtual" Name="PLLSourceVirtualString" Type="string"/>
	
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+PLLSourceVirtualString" Name="PLLSource" Type="list">
	<PossibleValue Comment="Pllsource Hsi" Value="RCC_PLLSOURCE_HSI" Semaphore="PLLSourceHSI" />
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE" Semaphore="PLLSourceHSE"/>
    </RefParameter>
    <!--SYSCLKSource-->
    <RefParameter Comment="SYSCLK Source" Visible="false" DefaultValue="RCC_SYSCLKSOURCE_HSI" Name="SYSCLKSource" Type="list">
        <PossibleValue Comment="Sysclksource Lse"    Value="RCC_SYSCLKSOURCE_LSE"    Semaphore="SysSourceLse"/>
        <PossibleValue Comment="Sysclksource Hsi"    Value="RCC_SYSCLKSOURCE_HSI"    Semaphore="SysSourceHSI"/>
        <PossibleValue Comment="Sysclksource Hse"    Value="RCC_SYSCLKSOURCE_HSE"    Semaphore="SysSourceHSE"/>
        <PossibleValue Comment="Sysclksource Pllclk" Value="RCC_SYSCLKSOURCE_PLLCLK" Semaphore="SysSourcePLL"/>
        <PossibleValue Comment="Sysclksource Lsi"    Value="RCC_SYSCLKSOURCE_LSI"    Semaphore="SysSourceLsi"/>        
    </RefParameter>
    <!--RCC_MCO1Source-->
    <RefParameter Visible="false" Comment="MCO Clock Source" DefaultValue="RCC_MCO1SOURCE_SYSCLK" Name="RCC_MCO1Source" Type="list">
        <PossibleValue Comment="MCO1SRC SYSCLK" Value="RCC_MCO1SOURCE_SYSCLK" Semaphore="MCOSourcesys"/>
        <PossibleValue Comment="MCO1SRC HSI"    Value="RCC_MCO1SOURCE_HSI"    Semaphore="MCOSourceHSI"/>
        <PossibleValue Comment="MCO1SRC HSE"    Value="RCC_MCO1SOURCE_HSE"    Semaphore="MCOSourceHSE"/>
        <PossibleValue Comment="MCO1SRC PLLCLK" Value="RCC_MCO1SOURCE_PLLCLK" Semaphore="MCOSourcePLL"/>
        <PossibleValue Comment="MCO1SRC LSE"    Value="RCC_MCO1SOURCE_LSE"    Semaphore="MCOSourceLSE"/>
        <PossibleValue Comment="MCO1SRC LSI"    Value="RCC_MCO1SOURCE_LSI"    Semaphore="MCOSourceLSI"/>

    </RefParameter>   
	<!--LSCOSource-->
    <RefParameter Visible="false" Comment="LSCOS Clock Source" DefaultValue="RCC_LSCOSOURCE_LSI" Name="LSCOSource1" Type="list">
        <PossibleValue Comment="LSI"    Value="RCC_LSCOSOURCE_LSI"       Semaphore="LSCOSSourceLSI"/>
	<PossibleValue Comment="LSE"    Value="RCC_LSCOSOURCE_LSE"       Semaphore="LSCOSSourceLSE"/>
    </RefParameter>
     
     <RefParameter Visible="false" Comment="LSCOSource1ARG" DefaultValue="+LSCOSource1" Name="LSCOSource1ARG" Type="list">
        <Condition Diagnostic="LSCO used" Expression="LSCOConfig  &amp; CodegenConfigPeriph=true"/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="LSCOSource1ARG" DefaultValue="null" Name="LSCOSource1ARG" Type="list"/>
    
    <!--RCC_RTC_Clock_SourceVirtual-->
    <RefParameter Visible="false"  Comment="RTC Clock Selection" DefaultValue="RCC_RTCCLKSOURCE_LSI" Name="RTCClockSelection" Type="list" IP="RTC">
        <PossibleValue Comment="Rtcclksource Lse"        Value="RCC_RTCCLKSOURCE_LSE"       Semaphore="RTCSourceLSE"/>
        <PossibleValue Comment="Rtcclksource Lsi"        Value="RCC_RTCCLKSOURCE_LSI"       Semaphore="RTCSourceLSI"/>
        <PossibleValue Comment="Rtcclksource Hse div32"  Value="RCC_RTCCLKSOURCE_HSE_DIV32" Semaphore="RTCSourceHSE"/>
   
       
    </RefParameter>
    <!--USART1CLockSelection-->
    <RefParameter Visible="false"  Comment="USART1 Clock Selection" DefaultValue="RCC_USART1CLKSOURCE_PCLK2" Name="USART1CLockSelection" Type="list" IP="USART1">
        <PossibleValue Comment="Usart1 Clksource Pclk2"  Value="RCC_USART1CLKSOURCE_PCLK1"  Semaphore="USART1SourcePCLK2"/>
        <PossibleValue Comment="Usart1 Clksource Sysclk" Value="RCC_USART1CLKSOURCE_SYSCLK" Semaphore="USART1SourceSys"/>
        <PossibleValue Comment="Usart1 Clksource Hsi"    Value="RCC_USART1CLKSOURCE_HSI"    Semaphore="USART1SourceHSI"/>
        <PossibleValue Comment="Usart1 Clksource Lse"    Value="RCC_USART1CLKSOURCE_LSE"    Semaphore="USART1SourceLSE"/>
    </RefParameter>
    <!--USART2CLockSelection-->
    <RefParameter Visible="false"  Comment="USART2 Clock Selection" DefaultValue="RCC_USART2CLKSOURCE_PCLK1" Name="USART2CLockSelection" Type="list" IP="USART2">
        <PossibleValue Comment="Usart2 Clksource Pclk1"  Value="RCC_USART2CLKSOURCE_PCLK1"  Semaphore="USART2SourcePCLK1"/>
        <PossibleValue Comment="Usart2 Clksource Sysclk" Value="RCC_USART2CLKSOURCE_SYSCLK" Semaphore="USART2SourceSys"/>
        <PossibleValue Comment="Usart2 Clksource Hsi"    Value="RCC_USART2CLKSOURCE_HSI"    Semaphore="USART2SourceHSI"/>
        <PossibleValue Comment="Usart2 Clksource Lse"    Value="RCC_USART2CLKSOURCE_LSE"    Semaphore="USART2SourceLSE"/>
    </RefParameter>
    <!--I2S1CLockSelection-->
    <RefParameter Visible="false"  Comment="I2S1 Clock Selection" DefaultValue="RCC_I2S1CLKSOURCE_SYSCLK" Name="I2S1CLockSelection" Type="list" IP="I2S1">
        <PossibleValue Comment="I2S1 Clksource Sysclk"  Value="RCC_I2S1CLKSOURCE_SYSCLK"  Semaphore="I2S1SourceSysclk"/>
        <PossibleValue Comment="I2S1 Clksource Pll"     Value="RCC_I2S1CLKSOURCE_PLL"     Semaphore="I2S1SourcePll"/>
        <PossibleValue Comment="I2S1 Clksource Hsi"     Value="RCC_I2S1CLKSOURCE_HSI"     Semaphore="I2S1SourceHsi"/>
        <PossibleValue Comment="I2S1 Clksource Ext"     Value="RCC_I2S1CLKSOURCE_EXT"     Semaphore="I2S1SourceExt"/>
    </RefParameter>

    <!--LPUART1CLockSelection-->
    <RefParameter Visible="false"  Comment="LPUART1 Clock Selection" DefaultValue="RCC_LPUART1CLKSOURCE_PCLK1" Name="LPUART1CLockSelection" Type="list" IP="LPUART">
        <PossibleValue Comment="LPUART1 Clksource Pclk2"  Value="RCC_LPUART1CLKSOURCE_PCLK1"  Semaphore="LPUART1SourcePCLK1"/>
        <PossibleValue Comment="LPUART1 Clksource Sysclk" Value="RCC_LPUART1CLKSOURCE_SYSCLK" Semaphore="LPUART1SourceSys"/>
        <PossibleValue Comment="LPUART1 Clksource Hsi"    Value="RCC_LPUART1CLKSOURCE_HSI"    Semaphore="LPUART1SourceHSI"/>
        <PossibleValue Comment="LPUART1 Clksource Lse"    Value="RCC_LPUART1CLKSOURCE_LSE"    Semaphore="LPUART1SourceLSE"/>
    </RefParameter>
    <!--I2C1CLockSelection-->
    <RefParameter Visible="false"  Comment="I2C1 Clock Selection" DefaultValue="RCC_I2C1CLKSOURCE_PCLK1"    Name="I2C1CLockSelection" Type="list" IP="I2C1">
        <PossibleValue Comment="I2C1 Clksource PCLK1"  Value="RCC_I2C1CLKSOURCE_PCLK1"  Semaphore="I2C1SourcePCLK1"/>
        <PossibleValue Comment="I2C1 Clksource Sysclk" Value="RCC_I2C1CLKSOURCE_SYSCLK" Semaphore="I2C1SourceSys"/>
        <PossibleValue Comment="I2C1 Clksource Hsi"    Value="RCC_I2C1CLKSOURCE_HSI"    Semaphore="I2C1SourceHSI"/>
    </RefParameter>

    <!--LPTIM1CLockSelection-->
    <RefParameter Visible="false"  Comment="LPTIM1 Clock Selection" DefaultValue="RCC_LPTIM1CLKSOURCE_PCLK" Name="LPTIM1CLockSelection" Type="list" IP="LPTIM1">
        <PossibleValue Comment="Lptim1 Clksource Pclk" Value="RCC_LPTIM1CLKSOURCE_PCLK1"/>
        <PossibleValue Comment="Lptim1 Clksource Lsi"  Value="RCC_LPTIM1CLKSOURCE_LSI" Semaphore="LPTIM1SOURCELSI"/>
        <PossibleValue Comment="Lptim1 Clksource Hsi"  Value="RCC_LPTIM1CLKSOURCE_HSI" Semaphore="LPTIM1SOURCEHSI"/>
        <PossibleValue Comment="Lptim1 Clksource Lse"  Value="RCC_LPTIM1CLKSOURCE_LSE" Semaphore="LPTIM1SOURCELSE"/>
    </RefParameter>
    <!--LPTIM2CLockSelection-->	
    <RefParameter Visible="false"  Comment="LPTIM2 Clock Selection" DefaultValue="RCC_LPTIM2CLKSOURCE_PCLK" Name="LPTIM2CLockSelection" Type="list" IP="LPTIM2">
        <PossibleValue Comment="LPTIM2 Clksource Pclk" Value="RCC_LPTIM2CLKSOURCE_PCLK1"/>
        <PossibleValue Comment="LPTIM2 Clksource Lsi"  Value="RCC_LPTIM2CLKSOURCE_LSI" Semaphore="LPTIM2SOURCELSI"/>
        <PossibleValue Comment="LPTIM2 Clksource Hsi"  Value="RCC_LPTIM2CLKSOURCE_HSI" Semaphore="LPTIM2SOURCEHSI"/>
        <PossibleValue Comment="LPTIM2 Clksource Lse"  Value="RCC_LPTIM2CLKSOURCE_LSE" Semaphore="LPTIM2SOURCELSE"/>
    </RefParameter>
    <!--TIM1CLockSelection-->
    <RefParameter Visible="false"  Comment="TIM1 Clock Selection" DefaultValue="RCC_TIM1CLKSOURCE_PCLK1" Name="TIM1CLockSelectionVirtual" Type="list" IP="TIMER1">
        <Condition Diagnostic="When TIM1/TIM15 derives from PLLQ, they can be only an integer multiple of PCLK and must be aligned with it." Expression="!(((PLLR2 &amp; PLLQ2) |(PLLR3 &amp; PLLQ3) | (PLLR4 &amp; (PLLQ4 | PLLQ2)) | (PLLR5 &amp; PLLQ5) | (PLLR6 &amp; (PLLQ3 | PLLQ2 | PLLQ6)) | (PLLR7 &amp; PLLQ7) | (PLLR8 &amp; (PLLQ8 | PLLQ4 | PLLQ2))) &amp; (SYSCLKFreq_VALUE1=SYSCLKFreq_VALUE2) &amp; SysSourcePLL) &amp; !STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim1 Clksource Pclk" Value="RCC_TIM1CLKSOURCE_PCLK1" Semaphore="TIM1SOURCEPclk"/>
    </RefParameter>
    <RefParameter Visible="false"  Comment="TIM1 Clock Selection" DefaultValue="RCC_TIM1CLKSOURCE_PCLK1" Name="TIM1CLockSelectionVirtual" Type="list" IP="TIMER1">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim1 Clksource Pclk" Value="RCC_TIM1CLKSOURCE_PCLK1" Semaphore="TIM1SOURCEPclk"/>
        <PossibleValue Comment="tim1 Clksource Lsi"  Value="RCC_TIM1CLKSOURCE_PLL"   Semaphore="TIM1SOURCEPll"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+TIM1CLockSelectionVirtual" Name="TIM1CLockSelectionVirtualString" Type="string"/>
    <RefParameter Visible="false"  Comment="TIM1 Clock Selection" DefaultValue="+TIM1CLockSelectionVirtualString" Name="TIM1CLockSelection" Type="list" IP="TIMER1">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim1 Clksource Pclk" Value="RCC_TIM1CLKSOURCE_PCLK1" Semaphore="TIM1SOURCEPclk"/>
        <PossibleValue Comment="tim1 Clksource Lsi"  Value="RCC_TIM1CLKSOURCE_PLL"   Semaphore="TIM1SOURCEPll"/>
    </RefParameter>
    <!--TIM1CLockSelection-->
    <RefParameter Visible="false"  Comment="CEC Clock Selection" DefaultValue="RCC_CECCLKSOURCE_HSI_DIV488" Name="CECCLockSelection" Type="list" IP="HDMI_CEC">
        <PossibleValue Comment="CEC Clksource HSI/488"  Value="RCC_CECCLKSOURCE_HSI_DIV488"   Semaphore="CECSOURCEHSI"/>
        <PossibleValue Comment="CEC Clksource LSE"      Value="RCC_CECCLKSOURCE_LSE"          Semaphore="CECSOURCELSE"/>        
    </RefParameter>
    <!--TIM15CLockSelection-->
    <RefParameter Visible="false"  Comment="TIM1 Clock Selection" DefaultValue="RCC_TIM15CLKSOURCE_PCLK1" Name="TIM15CLockSelectionVirtual" Type="list" IP="TIMER15">
        <Condition Diagnostic="When TIM1/TIM15 derives from PLLQ, they can be only an integer multiple of PCLK and must be aligned with it." Expression="!(((PLLR2 &amp; PLLQ2) |(PLLR3 &amp; PLLQ3) | (PLLR4 &amp; (PLLQ4 | PLLQ2)) | (PLLR5 &amp; PLLQ5) | (PLLR6 &amp; (PLLQ3 | PLLQ2 | PLLQ6)) | (PLLR7 &amp; PLLQ7) | (PLLR8 &amp; (PLLQ8 | PLLQ4 | PLLQ2))) &amp; (SYSCLKFreq_VALUE1=SYSCLKFreq_VALUE2) &amp; SysSourcePLL) &amp; !STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim1 Clksource Pclk" Value="RCC_TIM15CLKSOURCE_PCLK1" Semaphore="TIM15SOURCEPclk"/>
    </RefParameter>
    <RefParameter Visible="false"  Comment="TIM15 Clock Selection" DefaultValue="RCC_TIM15CLKSOURCE_PCLK1" Name="TIM15CLockSelectionVirtual" Type="list" IP="TIMER15">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim15 Clksource Pclk" Value="RCC_TIM15CLKSOURCE_PCLK1" Semaphore="TIM15SOURCEPclk"/>
        <PossibleValue Comment="tim15 Clksource Lsi"  Value="RCC_TIM15CLKSOURCE_PLL"   Semaphore="TIM15SOURCEPll"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="+TIM15CLockSelectionVirtual" Name="TIM15CLockSelectionVirtualString" Type="string"/>
    <RefParameter Visible="false"  Comment="TIM15 Clock Selection" DefaultValue="+TIM15CLockSelectionVirtualString" Name="TIM15CLockSelection" Type="list" IP="TIMER15">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
        <PossibleValue Comment="tim1 Clksource Pclk" Value="RCC_TIM15CLKSOURCE_PCLK1" Semaphore="TIM15SOURCEPclk"/>
        <PossibleValue Comment="tim1 Clksource Lsi"  Value="RCC_TIM15CLKSOURCE_PLL"   Semaphore="TIM15SOURCEPll"/>
    </RefParameter>
    <!--ADCCLockSelection-->
    <RefParameter Visible="false"  Comment="ADC CLock Selection" DefaultValue="RCC_ADCCLKSOURCE_SYSCLK"    Name="ADCCLockSelection" Type="list" IP="ADC1">
        <PossibleValue Comment="SysCLKOutput" Value="RCC_ADCCLKSOURCE_SYSCLK"  Semaphore="ADCSourceSys"/>        
        <PossibleValue Comment="HSIOutput"    Value="RCC_ADCCLKSOURCE_HSI"     Semaphore="ADCSourceHsi"/>
        <PossibleValue Comment="PLLPOutput"   Value="RCC_ADCCLKSOURCE_PLLADC"  Semaphore="ADCSourcePllp"/>
    </RefParameter>


    <!--RNGCLockSelection-->
    <RefParameter Visible="false"  Comment="CK48 CLock Selection" DefaultValue="RCC_RNGCLKSOURCE_HSI_DIV8"    Name="RNGCLockSelection" Type="list" IP="RNG">
        
        <PossibleValue Comment="CK48 Clksource Sysclk" Value="RCC_RNGCLKSOURCE_SYSCLK" Semaphore="RNGClockisSysclk"/>
        <PossibleValue Comment="CK48 Clksource Pll"    Value="RCC_RNGCLKSOURCE_PLL" Semaphore="RNGClockisPll"/>
        <PossibleValue Comment="CK48 Clksource Hsi"    Value="RCC_RNGCLKSOURCE_HSI_DIV8" Semaphore="RNGClockisHSI"/>
    </RefParameter>
		
    <!-- Clock Security System on HSE-->
    <RefParameter Visible="false" Name="EnbaleCSS" Comment="Clock Security System: available only when HSE is used directly or undirectly as System Clock" Type="list" DefaultValue="false">
        <Condition Diagnostic="" Expression="((PLLSourceHSE &amp; SysSourcePLL )|(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)) &amp; (HSEOscillator | HSEByPass)"/>
        <PossibleValue Value="true" Comment="Enabled" Semaphore="CSSEnabled"/>
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnbaleCSS" Comment="Clock Security System: available only when HSE is used directly or undirectly as System Clock" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>
	
    <!-- Clock Security System on LSE for RTC-->
    <RefParameter Visible="false" Name="EnableCSSLSE" Comment="LSE Clock Security System: available only when LSE is used as Clock Source for RTC/LCD" Type="list" DefaultValue="false">
        <Condition Diagnostic="" Expression="(((RTCClockSelection=RCC_RTCCLKSOURCE_LSE)) &amp; (RTCUsed_ForRCC|LCDUsed_ForRCC))"/>
        <PossibleValue Value="true" Comment="Enabled" Semaphore="RCC_LSECSS_ENABLED"/>
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnableCSSLSE" Comment="LSE Clock Security System: available only when LSE is used as Clock Source for RTC/LCD" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>
	
	
	
    <!--frequence Values --> 
    <!--Source frequency Values -->   
    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="8000000" Max="26000000" Min="0"       Type="double" Display="value/1000000" Unit="MHz"><!--HSE bypass and !PLL and !CSS-->
        <Condition Diagnostic="HSE in bypass Mode" Expression="HSEByPass &amp; (scale2 &amp; SysSourceHSE)  "/>
    </RefParameter>   
	
    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="8000000" Max="48000000" Min="0"       Type="double" Display="value/1000000" Unit="MHz"><!--HSE bypass and !PLL and !CSS-->
        <Condition Diagnostic="HSE in bypass Mode" Expression="HSEByPass  "/>
    </RefParameter>  
	
    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="8000000" Max="26000000" Min="4000000" Type="double" Display="value/1000000" Unit="MHz"><!--HSE in OSI mode-->
     <Condition Diagnostic="HSE in bypass Mode" Expression="HSEOscillator &amp; (scale2 &amp; SysSourceHSE)  "/>
    </RefParameter>   
	<RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="8000000" Max="48000000" Min="4000000" Type="double" Display="value/1000000" Unit="MHz"/><!--HSE in OSI mode-->
	
    <RefParameter Visible="false" Comment="LSE OSC"    Name="LSE_VALUE" DefaultValue="32768" Max="32768" Min="32768" Type="double" Display="value/1000" Unit="KHz"><!--LSE on OSi mode-->
        <Condition Diagnostic="LSE In crystal Mode" Expression="LSEOscillator"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSE OSC"    Name="LSE_VALUE" DefaultValue="32768" Max="1000000" Min="1000"  Type="double" Display="value/1000" Unit="KHz"/>
   
    <RefParameter Visible="false" Comment="LSI Source" Name="LSI_VALUE" DefaultValue="32000" Max="32000"   Min="32000" Type="double" Display="value/1000" Unit="KHz"/>
    <RefParameter Visible="false" Comment="HSI Source" Name="HSI_VALUE" DefaultValue="16000000"                        Type="double" Display="value/1000000" Unit="MHz"/>
	
	<!--output Freq value-->
	<RefParameter Visible="false" Comment="FCLK Cortex"           Name="FCLKCortexFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="PWR clock"             Name="PWRFreq_Value"        DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="AHB clock"             Name="AHBFreq_Value"        DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="IWDG clock"            Name="WatchDogFreq_Value"   DefaultValue="32000"    Type="double" Display="value/1000"    Unit="KHz" IP="IWATCHDOG" />
    <RefParameter Visible="false" Comment="Cortex System Timer"   Name="CortexFreq_Value"     DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
	
	<!--main sysclock Freq value-->
        <RefParameter Visible="false" Comment="System Clock"   Name="SYSCLKFreq_VALUE1" DefaultValue="=SYSCLKFreq_VALUE/1000000" Type="double"/>
        <RefParameter Visible="false" Comment="System Clock"   Name="SYSCLKFreq_VALUE2" DefaultValue="=SYSCLKFreq_VALUE/1000000" Type="integer"/>

	<RefParameter Visible="false" Comment="System Clock"   Name="SYSCLKFreq_VALUE" DefaultValue="4000000" Max="64000000" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="overDrive activated" Expression="(VDD_VALUE&lt; 1.8)|(VDD_VALUE&gt; 2.1)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="System clock"   Name="SYSCLKFreq_VALUE"  DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz"/>
	<RefParameter Visible="false" Comment="MCO Output"     Name="MCO1PinFreq_Value" DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz"/>
	<RefParameter Visible="false" Comment="LSCO Output"     Name="LSCOPinFreq_Value" DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz"/>

	<RefParameter Visible="false" Comment="HCLK clock"     Name="HCLKFreq_Value"    DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz" Max="64000000" />
	
   <!--ADC frequency  --> 
	<!--IP Freq value-->

    <RefParameter Visible="false" Comment="I2C1 clock Source" Name="I2C1Freq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="I2C1"/>
	
    <RefParameter Visible="false" Comment="USART2 clock Source"  Name="USART2Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="USART2"/>
    <RefParameter Visible="false" Comment="USART1 clock Source"  Name="USART1Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="USART1"/>
    <RefParameter Visible="false" Comment="LPUART1 clock Source" Name="LPUART1Freq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="LPUART1"/>
    <RefParameter Visible="false" Comment="I2S1 clock Source"    Name="I2S1Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="I2S1"/>

   
    <RefParameter Visible="false" Comment="LPTIM1 clock Source"  Name="LPTIM1Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="LPTIM1"/>
    <RefParameter Visible="false" Comment="LPTIM2 clock Source"  Name="LPTIM2Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="LPTIM2"/>

    <RefParameter Visible="false" Comment="TIM1 clock Source"   Name="TIM1Freq_Value"  DefaultValue="4000000" Max="128000000" Type="double" Display="value/1000000" Unit="MHz" IP="TIMER1">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="TIM1 clock Source"   Name="TIM1Freq_Value"  DefaultValue="=APBTimFreq_Value"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER1"/>
    
    <RefParameter Visible="false" Comment="TIM15 clock Source"  Name="TIM15Freq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER15">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="TIM15 clock Source"  Name="TIM15Freq_Value"  DefaultValue="=APBTimFreq_Value"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER15"/>
    
    <RefParameter Visible="false" Comment="CEC clock Source"   Name="CECFreq_Value"  DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="HDMI_CEC"/>

    <RefParameter Visible="false" Comment="CK48 clock Source"   Name="USBFreq_Value"   DefaultValue="16000000" Min="47880000" Max="48120000"  Type="double" Display="value/1000000" Unit="MHz" IP="USB_OTG_FS">
    <Condition Diagnostic="HSE in bypass Mode" Expression="USB_OTG_FSUsed_ForRCC"/>
    </RefParameter> 
	<RefParameter Visible="false" Comment="CK48 clock Source"   Name="USBFreq_Value"   DefaultValue="16000000" Min="47880000" Max="48120000"  Type="double" Display="value/1000000" Unit="MHz" IP="USB_OTG_FS"/>
    
	<RefParameter Visible="false" Comment="CK48 clock Source"   Name="SDMMCFreq_Value" DefaultValue="16000000" Max="50000000"  Type="double" Display="value/1000000" Unit="MHz" IP="SDMMC1"/>
    <RefParameter Visible="false" Comment="CK48 clock Source"   Name="RNGFreq_Value"   DefaultValue="16000000" Max="48000000" Type="double" Display="value/1000000" Unit="MHz" IP="RNG"/>
    <RefParameter Visible="false" Comment="ADC clock Source"    Name="ADCFreq_Value" Min="1400000"   Max="26000000"  DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz" >
     <Condition Diagnostic="HSE in bypass Mode" Expression="scale2"/>
    </RefParameter>  
    <RefParameter Visible="false" Comment="ADC clock Source"    Name="ADCFreq_Value"  Min="1400000"   Max="80000000" DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz" />
     
    

    <RefParameter Visible="false" Comment="RTC Clock Source" Name="RTCFreq_Value" Type="double" DefaultValue="32000"  Max="1000000" Min="0" Display="value/1000" Unit="KHz" IP="RTC" >
        <Condition Diagnostic="RTC Has HSE as source" Expression="(!(RTCClockSelection=RCC_RTCCLKSOURCE_LSE)&amp;!(RTCClockSelection=RCC_RTCCLKSOURCE_LSI)&amp; (RTCEnable=true))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RTC Clock Source" Name="RTCFreq_Value" Type="double" DefaultValue="32000"                              Display="value/1000" Unit="KHz" IP="RTC"/>
        <RefParameter Visible="false" Comment="LCD clock" Name="LCDFreq_Value" Type="double" DefaultValue="32000" IP="LCD" Max="1000000" Min="0" Display="value/1000" Unit="KHz" >
        <Condition Diagnostic="RTC Has HSE as source" Expression="(!(RTCClockSelection=RCC_RTCCLKSOURCE_LSE)&amp;!(RTCClockSelection=RCC_RTCCLKSOURCE_LSI)&amp; (LCDEnable=true))"/>
    </RefParameter>   
    <RefParameter Visible="false" Comment="LCD clock" Name="LCDFreq_Value" Type="double" IP="LCD" DefaultValue="32000" Display="value/1000" Unit="KHz" />

    <RefParameter Visible="false" Comment="APB Timer 2/3/6/7 clocks" Name="APBTimFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER2,TIMER3,TIMER6,TIMER7,TIMER14,TIMER16,TIMER17">
        <Condition Diagnostic="" Expression="!STM32G0x0_Value_line"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB Timer 2/3/6/7 clocks" Name="APBTimFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER2,TIMER3,TIMER6,TIMER7,TIMER14,TIMER16,TIMER17,TIMER1"/>
    <RefParameter Visible="false" Comment="APB Peripheral Clock"    Name="APBFreq_Value"    DefaultValue="4000000" Max="64000000" Type="double" Display="value/1000000" Unit="MHz" IP="USART1,USART2,USART3,USART4,SPI1,SPI2,I2C1,I2C2,WWDG,LPUART1,LPTIM1,LPTIM2,DAC1"/>
		
   
	<!--PLLs Freq value-->

	<!--PLLQ output-->
    <RefParameter Visible="false" Comment="PLLQ"     Name="PLLQoutputFreq_Value" Min="8000000" Max="128000000"     DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((RNGClockisPll &amp; RNGUsed_ForRCC ) | (TIM1SOURCEPll &amp; TIM1Used_ForRCC) | (TIM15SOURCEPll &amp; TIM15) | (TIM1SOURCEPll &amp; TIM1))" Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLQ"     Name="PLLQoutputFreq_Value"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz"/>
	<!--PLLP output-->
    <RefParameter Visible="false" Comment="PLLP"     Name="PLLPoutputFreq_Value" Min="2064000" Max="122000000"    DefaultValue="4571429"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression=" (ADC1_USED &amp; ADCSourcePllp) | (I2S1SourcePll &amp; I2S1Used_ForRCC) " Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLP"     Name="PLLPoutputFreq_Value"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz"/>
		
   <!--Divisor constraint-->
	<!--VCOInput output ==> PLLM frequency range -->
    <RefParameter Visible="false" Comment="VCOInput"     Name="VCOInputFreq_Value" Min="4000000" Max="16000000"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz">
		<Condition Expression="(PLLUsed=1) " Diagnostic=" PLLUsed=1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOInput"     Name="VCOInputFreq_Value"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz"/>
	
	<!--VCOOutput output ==> multiplicateur *N frequency range-->

    <RefParameter Visible="false" Comment="VCOOutput"     Name="VCOOutputFreq_Value"  Min="64000000" Max="344000000"    DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz">
		<Condition Expression="PLLUsed=1" Diagnostic="PLLUsed=1 "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOOutput"     Name="VCOOutputFreq_Value"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz"/>
		 
	 <RefParameter Visible="false" Comment="" Name="VCOOutputFreq_ValueConstraintsText" DefaultValue="&quot;PLL VCO&quot; Frequency must be >= 64MHz or >= 96MHz when temperature is below 0°C and =&lt;344MHz " Type="string" Display="value/1000000" Unit="MHz" >
		<Condition Diagnostic="" Expression="PLLUsed=1 &amp; scale1"/>
      </RefParameter>  
	   <RefParameter Visible="false" Comment="" Name="VCOOutputFreq_ValueConstraintsText" DefaultValue="&quot;PLL VCO&quot; Frequency must be >= 64MHz or >= 96MHz when temperature is below 0°C and =&lt;128MHz " Type="string" Display="value/1000000" Unit="MHz" >
	<Condition Expression="PLLUsed=1 &amp; scale2" Diagnostic="PLLUsed=1 "/>
      </RefParameter>  
      <RefParameter Visible="false" Comment="" Name="VCOOutputFreq_ValueConstraintsText" DefaultValue="" Type="string" Display="value/1000000" Unit="MHz"/>
	<!--PLLRCLK output ==> PLLCLK -->
    <RefParameter Visible="false" Comment="PLLCLK"     Name="PLLRCLKFreq_Value"   Min="8000000" Max="64000000"     DefaultValue="16000000"   Type="double" Display="value/1000000" Unit="MHz">
		<Condition Expression="(PLLUsed=1 &amp; SysSourcePLL) | (MCOSourcePLL &amp; MCOConfig) " Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLCLK"     Name="PLLRCLKFreq_Value"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz"/>
    

	
	<!--VCOSAI1Output output ==> multiplicateur *N frequency range-->
 	

	
	

	
    <!--Enable Param-->
    <!--HSE Enable -->
    <RefParameter Visible="false" Name="EnableHSE" Comment="HSE OSC" Type="list" DefaultValue="true" >
        <Condition Expression="(HSEOscillator|HSEByPass)" Diagnostic="Disabled if RTC is used and HSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSE" Comment="HSE OSC" Type="list" DefaultValue="false" >
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    <!--RTC Enable -->
   
	 <RefParameter Visible="false" Name="RTCEnable" Comment="RTC" Type="list" DefaultValue="true" IP="RTC">
        <Condition Expression="RTCUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RTCEnable" Comment="RTC" Type="list" DefaultValue="false" IP="RTC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnableLSERTC" Comment="EnableLSERTC" Type="list" DefaultValue="true" IP="RTC,LCD">
        <Condition Expression="RTCUsed_ForRCC &amp; (LSEOscillator | LSEByPass)" Diagnostic="Disabled if RTC is used and LSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableLSERTC" Comment="EnableLSERTC" Type="list" DefaultValue="false" IP="RTC,LCD">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
  <RefParameter Visible="false" Name="EnableHSERTCDevisor" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="true" IP="RTC">
        <Condition Expression="(RTCUsed_ForRCC &amp; (HSEOscillator|HSEByPass))" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSERTCDevisor" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="false" IP="RTC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="EnableCEC" Comment="HDMI_CEC" Type="list" DefaultValue="true" IP="HDMI_CEC">
        <Condition Expression="CECUsed_ForRCC  &amp; CodegenConfigPeriph=true" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableCEC" Comment="HDMI_CEC" Type="list" DefaultValue="false" IP="HDMI_CEC">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	<!--HSE DIV for LCD Enable -->
    <RefParameter Visible="false" Name="EnableHSELCDDevisor" Comment="LCD and HSE Oscillator" Type="list" DefaultValue="true" IP="LCD">
        <Condition Expression="LCDUsed_ForRCC &amp; (HSEOscillator|HSEByPass)" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSELCDDevisor" Comment="LCD and HSE Oscillator" Type="list" DefaultValue="false" IP="LCD">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!-- LCD Enable -->
    <RefParameter Visible="false" Name="LCDEnable" Comment="LCD" Type="list" DefaultValue="true" IP="LCD">
        <Condition Expression="LCDUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LCD is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="LCDEnable" Comment="LCD" Type="list" DefaultValue="false" IP="LCD">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	    <RefParameter Visible="false" Name="EnableLSELCD" Comment="EnableLSELCD" Type="list" DefaultValue="true" IP="LCD">
        <Condition Expression="LCDUsed_ForRCC &amp; (LSEOscillator | LSEByPass)" Diagnostic="Disabled if RTC is used and LSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableLSELCD" Comment="EnableLSELCD" Type="list" DefaultValue="false" IP="LCD">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
   
   
	
    <!-- ADC Output Enable -->
    <RefParameter Visible="false" Name="ADCEnable" Comment="ADC1" Type="list" DefaultValue="true" IP="ADC1">
        <Condition Expression="ADC1_USED &amp; CodegenConfigPeriph=true" Diagnostic="ADC is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="ADCEnable" Comment="ADC1" Type="list" DefaultValue="false" >
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="ADCPLLEnable" Comment="ADC1" Type="list" DefaultValue="true" IP="ADC1">
        <Condition Expression="ADC1_USED &amp; CodegenConfigPeriph=true | CodegenConfigPeriph=false" Diagnostic="ADC is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="ADCPLLEnable" Comment="ADC1" Type="list" DefaultValue="false" >
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
  
  
	
    <!-- LSE Enable -->
    <RefParameter Visible="false" Name="EnableLSE" Comment="EnableLSE" Type="list" DefaultValue="true">
        <Condition Expression="(LSEOscillator|LSEByPass)" Diagnostic="Disabled if RTC is used and LSE ON"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
   
    <RefParameter Visible="false" Name="EnableLSE" Comment="EnableLSE" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
	
    <!-- IWDG Enable -->
    <RefParameter Visible="false" Name="IWDGEnable" Comment="IWDG" Type="list" DefaultValue="true" IP="IWDG">
        <Condition Expression="IWDGUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="IWDG is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="IWDGEnable" Comment="IWDG" Type="list" DefaultValue="false" IP="IWDG">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
	
	
    <!-- LSCO Enable -->
    <RefParameter Visible="false" Name="LSCOEnable" Comment="LSCO clock output" Type="list" DefaultValue="true" IP="Clock-out-LSCO">
        <Condition Expression="LSCOConfig &amp; CodegenConfigPeriph=true" Diagnostic="MCO mode is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LSCOEnable" Comment="LSCO clock output" Type="list" DefaultValue="false" IP="Clock-out-LSCO">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!-- MCO Enable -->
    <RefParameter Visible="false" Name="MCOEnable" Comment="Master clock output" Type="list" DefaultValue="true" IP="Clock-out">
        <!--Condition Expression="(Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig" Diagnostic="MCO mode is activated"/-->
        <Condition Expression="MCOConfig &amp; CodegenConfigPeriph=true" Diagnostic="MCO mode is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="MCOEnable" Comment="Master clock output" Type="list" DefaultValue="false" IP="Clock-out">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
   
    <!--RNG Enable-->
    <RefParameter Visible="false" Name="RNGEnable" Comment="RNG" Type="list" DefaultValue="true">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="RNG is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="RNGEnable" Comment="RNG" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="RNGPLLEnable" Comment="RNG" Type="list" DefaultValue="true">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true | CodegenConfigPeriph=false" Diagnostic="RNG is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="RNGPLLEnable" Comment="RNG" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--USART1 Enable-->
    <RefParameter Visible="false" Name="USART1Enable" Comment="USART1" Type="list" DefaultValue="true">
        <Condition Expression="USART1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="USART1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="USART1Enable" Comment="USART1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--USART2 Enable-->
    <RefParameter Visible="false" Name="USART2Enable" Comment="USART2" Type="list" DefaultValue="true">
        <Condition Expression="USART2Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="USART2 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="USART2Enable" Comment="USART2" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	

    <!--I2S1 Enable-->
    <RefParameter Visible="false" Name="I2S1Enable" Comment="I2S1" Type="list" DefaultValue="true">
        <Condition Expression="I2S1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2S1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="I2S1Enable" Comment="I2S1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="I2S1PLLEnable" Comment="I2S1" Type="list" DefaultValue="true">
        <Condition Expression="I2S1Used_ForRCC &amp; CodegenConfigPeriph=true | CodegenConfigPeriph=false" Diagnostic="I2S1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="I2S1PLLEnable" Comment="I2S1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    	
    <!--LPUART1 Enable-->
    <RefParameter Visible="false" Name="LPUART1Enable" Comment="LPUART1" Type="list" DefaultValue="true">
        <Condition Expression="LPUARTUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPUART1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="LPUART1Enable" Comment="LPUART1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--LPTIM1 Enable-->
    <RefParameter Visible="false" Name="LPTIM1Enable" Comment="LPTIM1" Type="list" DefaultValue="true">
        <Condition Expression="LPTIM1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="LPTIM1Enable" Comment="LPTIM1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

    <!-- Ext Clock  Enable-->
    <RefParameter Visible="false" Name="ExtClockEnable" Comment="Audio Clock Input(I2S_CKIN)" Type="list" DefaultValue="true" IP="Audio_ClockIn">
        <Condition Expression="AudioClockConfig &amp; CodegenConfigPeriph=true" Diagnostic="Ext clock is activated"/>
	<PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="ExtClockEnable" Comment="Audio Clock Input(I2S_CKIN)" Type="list" DefaultValue="false" IP="Audio_ClockIn">
	<PossibleValue Value="false" Comment="false"/>
    </RefParameter>
        
    <RefParameter Visible="false" Name="EnableExtClockForI2S" Comment="EnableExtClockForI2S" Type="list" DefaultValue="true" IP="Audio_ClockIn">
	<Condition Expression="I2S1Used_ForRCC&amp;AudioClockConfig &amp; CodegenConfigPeriph=true" Diagnostic="Disabled if RTC is used"/>
	<PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableExtClockForI2S" Comment="EnableExtClockForI2S" Type="list" DefaultValue="false" IP="Audio_ClockIn">
           <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    <!--TIM1 Enable-->
    <RefParameter Visible="false" Name="TIM1Enable" Comment="TIM1" Type="list" DefaultValue="true">
        <Condition Expression="TIM1 &amp; !STM32G0x0_Value_line &amp; CodegenConfigPeriph=true" Diagnostic="TIM1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="TIM1Enable" Comment="TIM1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="TIM1PLLEnable" Comment="TIM1" Type="list" DefaultValue="true">
        <Condition Expression="TIM1 &amp; !STM32G0x0_Value_line &amp; CodegenConfigPeriph=true | CodegenConfigPeriph=false" Diagnostic="TIM1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="TIM1PLLEnable" Comment="TIM1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>	
    <!--TIM15 Enable-->
    <RefParameter Visible="false" Name="TIM15Enable" Comment="TIM15" Type="list" DefaultValue="true">
        <Condition Expression="TIM15 &amp; !STM32G0x0_Value_line &amp; CodegenConfigPeriph=true" Diagnostic="TIM15 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="TIM15Enable" Comment="TIM15" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
        <RefParameter Visible="false" Name="TIM15PLLEnable" Comment="TIM15" Type="list" DefaultValue="true">
        <Condition Expression="TIM15 &amp; !STM32G0x0_Value_line &amp; CodegenConfigPeriph=true |CodegenConfigPeriph=false" Diagnostic="TIM15 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>	
    <RefParameter Visible="false" Name="TIM15PLLEnable" Comment="TIM15" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>	
    <!--LPTIM2 Enable-->
    <RefParameter Visible="false" Name="LPTIM2Enable" Comment="LPTIM2" Type="list" DefaultValue="true">
        <Condition Expression="LPTIM2Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM2 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="LPTIM2Enable" Comment="LPTIM2" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <!--I2C1 Enable-->
    <RefParameter Visible="false" Name="I2C1Enable" Comment="I2C1" Type="list" DefaultValue="true">
        <Condition Expression="I2C1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2C1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="I2C1Enable" Comment="I2C1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>


    	
	
	<!-- HSE state control -->
    <!-- HSE osillator type -->
    <RefParameter Visible="false" Comment="Clock Type HSE" DefaultValue="" Name="OscillatorTypeHSE" Type="list">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; (HSEUsedForSys=0))" Diagnostic=""/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>

    <RefParameter Visible="false" Comment="Clock Type HSE" DefaultValue="" Name="OscillatorTypeHSE" Type="list">
        <Condition Expression="HSEUsed=0" Diagnostic="if HSE source not used"/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Clock Type HSE" DefaultValue="RCC_OSCILLATORTYPE_HSE" Name="OscillatorTypeHSE" Type="list">
        <PossibleValue Comment="HSE" Value="RCC_OSCILLATORTYPE_HSE"/>
    </RefParameter>
	
    <!-- HSE used -->
    <RefParameter Visible="false" Comment="HSE Is Used" DefaultValue="1" Name="HSEUsedForSys" Min="1" Type="integer">
       <Condition Expression="((PLLSourceHSE)&amp; (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)" Diagnostic="HSE is used if "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="HSE is Used" DefaultValue="0" Name="HSEUsedForSys" Min="0" Type="integer"/>	
    <RefParameter Visible="false" Comment="HSE used flag" DefaultValue="1" Name="HSEUsed" Type="integer" Min="1" Max="1">
        <Condition Expression="(SEM2RCC_HSE_REQUIRED_TIM17 &amp; TIM17 &amp;Semaphore_input_Channel1TIM17)|((RTCUsed_ForRCC|LCDUsed_ForRCC)&amp;!((RTCClockSelection=RCC_RTCCLKSOURCE_LSE)|(RTCClockSelection=RCC_RTCCLKSOURCE_LSI)))|((PLLSourceHSE) &amp; (PLLUsed=1))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSE)&amp;(((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig)))" Diagnostic="SYSCLK source OR PLL source OR RTC source OR MCO1 source OR MCO2 source"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="HSE Is Used" DefaultValue="0" Name="HSEUsed" Min="0" Type="integer"/>
	
    <!-- HSE state for codGen -->	
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_BYPASS" Name="HSEState" Type="list">
        <Condition Diagnostic="HSE BYPass" Expression="HSEByPass"/>
        <PossibleValue Comment="Hse Bypass" Value="RCC_HSE_BYPASS" Semaphore="HSEEnabled"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_ON" Name="HSEState" Type="list">
        <Condition Diagnostic="HSE ON" Expression="HSEOscillator"/>
        <PossibleValue Comment="Hse ON" Value="RCC_HSE_ON" Semaphore="HSEEnabled"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Hse State" DefaultValue="RCC_HSE_OFF" Name="HSEState" Type="list">
        <PossibleValue Comment="Hse Off" Value="RCC_HSE_OFF"/>
    </RefParameter>
	
	
	
	
    <!-- LSE state control -->
    <!-- LSE osillator type -->
<RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeLSE" Type="list">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; !(SYSCLKSource=RCC_SYSCLKSOURCE_LSE))" Diagnostic=""/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type LSE" DefaultValue="" Name="OscillatorTypeLSE" Type="list">
        <Condition Diagnostic="LSE Is OFF" Expression="LSEUsed=0"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Clock Type LSE" DefaultValue="RCC_OSCILLATORTYPE_LSE" Name="OscillatorTypeLSE" Type="list">
        <PossibleValue Comment="LSE" Value="RCC_OSCILLATORTYPE_LSE"/>
    </RefParameter>
	
    <!-- LSE used -->
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="1" Name="LSEUsed" Min="1" Type="integer">
        <Condition Expression="(CECSOURCELSE &amp; CECUsed_ForRCC) | (SYSCLKSource=RCC_SYSCLKSOURCE_LSE)|(LSCOSSourceLSE &amp; LSCOConfig)|(Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_LSE_REQUIRED1_TIM16)|(SEM2RCC_LSE_REQUIRED_TIM2 &amp; Semaphore_TIM2_L4_ETR_REMAPTIM2 &amp; TIM2)|(Semaphore_input_Channel1_directTIM15 &amp; TIM15 &amp; SEM2RCC_LSE_REQUIRED1_TIM15)|(USART1SourceLSE &amp; USART1Used_ForRCC)|(USART2SourceLSE &amp; USART2Used_ForRCC)|(LPUART1SourceLSE &amp; LPUARTUsed_ForRCC)|(LPTIM1SOURCELSE &amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCELSE &amp; LPTIM2Used_ForRCC)|((RCC_MCO1Source=RCC_MCO1SOURCE_LSE)&amp; ((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig))|((RTCClockSelection=RCC_RTCCLKSOURCE_LSE) &amp;(RTCUsed_ForRCC|LCDUsed_ForRCC) )" Diagnostic="LSE is used if "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="0" Name="LSEUsed" Min="0" Type="integer"/>
    <!-- LSE used -->
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="1" Name="LSEUsedLL" Min="1" Type="integer">
        <Condition Expression="(LSCOSSourceLSE &amp; LSCOConfig)|(Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_LSE_REQUIRED1_TIM16)|(SEM2RCC_LSE_REQUIRED_TIM2 &amp; Semaphore_TIM2_L4_ETR_REMAPTIM2 &amp; TIM2)|(Semaphore_input_Channel1_directTIM15 &amp; TIM15 &amp; SEM2RCC_LSE_REQUIRED1_TIM15)|(USART1SourceLSE &amp; USART1Used_ForRCC)|(USART2SourceLSE &amp; USART2Used_ForRCC)|(LPUART1SourceLSE &amp; LPUARTUsed_ForRCC)|(LPTIM1SOURCELSE &amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCELSE &amp; LPTIM2Used_ForRCC)|((RCC_MCO1Source=RCC_MCO1SOURCE_LSE)&amp; ((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig))|((RTCClockSelection=RCC_RTCCLKSOURCE_LSE) &amp;(RTCUsed_ForRCC|LCDUsed_ForRCC) )" Diagnostic="LSE is used if "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="LSE Is Used" DefaultValue="0" Name="LSEUsedLL" Min="0" Type="integer"/>
	
    <!-- LSE state used to codgen -->
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_BYPASS" Name="LSEState" Type="list">
        <Condition Diagnostic="LSE BYPass" Expression="LSEByPass"/>
        <PossibleValue Comment="Lse Bypass" Value="RCC_LSE_BYPASS"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_ON" Name="LSEState" Type="list">
        <Condition Diagnostic="LSE ON" Expression="LSEOscillator"/>
        <PossibleValue Comment="Lse ON" Value="RCC_LSE_ON"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Lse State" DefaultValue="RCC_LSE_OFF" Name="LSEState" Type="list">
        <PossibleValue Comment="Lse Off" Value="RCC_LSE_OFF"/>
        <PossibleValue Comment="Lse On" Value="RCC_LSE_ON"/>
        <PossibleValue Comment="Lse Bypass" Value="RCC_LSE_BYPASS"/>
    </RefParameter>
	
	
    
    <!-- LSI state control -->
    <!-- LSI osillator type -->
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeLSI" Type="list">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; !(SYSCLKSource=RCC_SYSCLKSOURCE_LSI))" Diagnostic=""/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type LSI" DefaultValue="" Name="OscillatorTypeLSI" Type="list">
        <Condition Diagnostic="WDOG is activated Or RTC source = LSI " Expression="LSIUsed=0"/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Clock Type LSI" DefaultValue="RCC_OSCILLATORTYPE_LSI" Name="OscillatorTypeLSI" Type="list">
        <PossibleValue Comment="LSI" Value="RCC_OSCILLATORTYPE_LSI"/>
    </RefParameter>
	
    <!-- LSI used -->
    <RefParameter Visible="false" Comment="LSI used flag" DefaultValue="1" Name="LSIUsed" Type="integer" Min="1" Max="1">
        <Condition Expression="(SYSCLKSource=RCC_SYSCLKSOURCE_LSI)|(LSCOSSourceLSI &amp; LSCOConfig)|RCC_DAC_SAMPLEANDHOLD|(SEM2RCC_LSI_REQUIRED_TIM16 &amp; TIM16 &amp;  Semaphore_input_Channel1TIM16)|(LPTIM1SOURCELSI &amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCELSI &amp; LPTIM2Used_ForRCC)|IWDGUsed_ForRCC|((RTCClockSelection=RCC_RTCCLKSOURCE_LSI)&amp;(RTCUsed_ForRCC|LCDUsed_ForRCC))|((RCC_MCO1Source=RCC_MCO1SOURCE_LSI)&amp;(((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig)))" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSI used flag" DefaultValue="0" Name="LSIUsed" Type="integer" Min="0" Max="0"/>
   
    <!-- LSI state to codGen -->
    <RefParameter Visible="false" Comment="Lsi State" DefaultValue="RCC_LSI_OFF" Name="LSIState" Type="list">
        <Condition Expression="LSIUsed=0" Diagnostic=""/>
        <PossibleValue Comment="Lsi Off" Value="RCC_LSI_OFF"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Lsi State" DefaultValue="RCC_LSI_ON" Name="LSIState" Type="list">
        <PossibleValue Comment="Lsi ON" Value="RCC_LSI_ON"/>
    </RefParameter>
	
	
	
	
    <!-- HSI state control -->
    <!-- HSI osillator type -->	
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeHSI" Type="list">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; (HSIUsedForSys=0))" Diagnostic=""/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeHSI" Type="list">
        <Condition Diagnostic="HSI Is OFF" Expression="HSIUsed=0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="RCC_OSCILLATORTYPE_HSI" Name="OscillatorTypeHSI" Type="list">
        <PossibleValue Comment="HSI" Value="RCC_OSCILLATORTYPE_HSI"/>
    </RefParameter>
	
    <!-- HSI used -->
    <RefParameter Visible="false" Comment="HSI Is Used" DefaultValue="1" Name="HSIUsedForSys" Min="1" Type="integer">
        <Condition Expression="((PLLSourceHSI)&amp; (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSI)" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI is Used" DefaultValue="0" Name="HSIUsedForSys" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="HSI Is Used" DefaultValue="1" Name="HSIUsed" Min="1" Type="integer">
        <Condition Expression="(CECSOURCEHSI &amp; CECUsed_ForRCC) | (I2S1SourceHsi &amp; I2S1Used_ForRCC) | (ADCSourceHsi &amp; ADC1_USED) | (RNGClockisHSI &amp; RNGUsed_ForRCC)|(USART1SourceHSI&amp; USART1Used_ForRCC)|(USART2SourceHSI&amp; USART2Used_ForRCC)|(LPUART1SourceHSI&amp; LPUARTUsed_ForRCC)|(LPTIM1SOURCEHSI&amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCEHSI &amp; LPTIM2Used_ForRCC)|(I2C1SourceHSI&amp; I2C1Used_ForRCC)|((PLLSourceHSI)&amp; (PLLUsed=1))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSI)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSI)&amp;((((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig))))" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI is Used" DefaultValue="0" Name="HSIUsed" Min="0" Type="integer"/>
	
    <!-- HSI state used codGen-->
    <RefParameter Visible="false" Comment="Hsi State" DefaultValue="RCC_HSI_OFF" Name="HSIState" Type="list">
        <Condition Expression="HSIUsed=0" Diagnostic=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Hsi State" DefaultValue="RCC_HSI_ON" Name="HSIState" Type="list">
        <PossibleValue Comment="Hsi On" Value="RCC_HSI_ON"/>
    </RefParameter>
	
	
	
    <!-- Main PLL state control-->
    <!-- PLLUsedForSys used -->
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForSys" Min="1" Max="1" Type="integer">
        <Condition Expression="((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; ((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig)) | (SysSourcePLL)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForSys" Min="0" Max="0" Type="integer"/>
	

    <!-- PLLUsedForRNG used -->
    <RefParameter Visible="false" Comment="PLL is RNG" DefaultValue="1" Name="PLLUsedForRNG" Min="1" Max="1" Type="integer">
        <Condition Expression="(RNGClockisPll &amp; RNGUsed_ForRCC)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL is RNG" DefaultValue="0" Name="PLLUsedForRNG" Min="0" Max="0" Type="integer"/>
    
    <!-- PLLUsedForTIM1 used -->
    <RefParameter Visible="false" Comment="PLL is TIM1" DefaultValue="1" Name="PLLUsedForTIM1" Min="1" Max="1" Type="integer">
        <Condition Expression="(TIM1SOURCEPll &amp; TIM1)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL is TIM1" DefaultValue="0" Name="PLLUsedForTIM1" Min="0" Max="0" Type="integer"/>
    
    <!-- PLLUsedForTIM15 used -->
    <RefParameter Visible="false" Comment="PLL is TIM15" DefaultValue="1" Name="PLLUsedForTIM15" Min="1" Max="1" Type="integer">
        <Condition Expression="(TIM15SOURCEPll &amp; TIM15)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL is TIM15" DefaultValue="0" Name="PLLUsedForTIM15" Min="0" Max="0" Type="integer"/>
    
    <!-- PLLUsedForADC used -->
    <RefParameter Visible="false" Comment="PLL is ADC" DefaultValue="1" Name="PLLUsedForADC" Min="1" Max="1" Type="integer">
        <Condition Expression="(ADCSourcePllp &amp; ADC1_USED)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL is ADC" DefaultValue="0" Name="PLLUsedForADC" Min="0" Max="0" Type="integer"/>
    
    <!-- PLLUsedForI2S1 used -->
    <RefParameter Visible="false" Comment="PLL is I2S" DefaultValue="1" Name="PLLUsedForI2S1" Min="1" Max="1" Type="integer">
        <Condition Expression="(I2S1SourcePll &amp; I2S1Used_ForRCC)" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL is I2S" DefaultValue="0" Name="PLLUsedForI2S1" Min="0" Max="0" Type="integer"/>
        <!-- PLL used -->
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsed" Min="1" Max="1" Type="integer">
        <Condition Expression="(I2S1SourcePll &amp; I2S1Used_ForRCC) | (ADC1_USED &amp; ADCSourcePllp) | (TIM15 &amp; TIM15SOURCEPll) | (TIM1 &amp; TIM1SOURCEPll) |(SysSourcePLL)|((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; ((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig))|( RNGClockisPll &amp; (RNGUsed_ForRCC))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsed" Min="0" Max="0" Type="integer"/>
	
    <!-- PLL state -->
    <RefParameter Visible="false" Comment="Pll State" DefaultValue="RCC_PLL_OFF" Name="PLLState" Type="list">
        <Condition Expression="PLLUsed=0" Diagnostic=""/>
        <PossibleValue Comment="Pll Off" Value="RCC_PLL_OFF"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Pll State" DefaultValue="RCC_PLL_ON" Name="PLLState" Type="list">
        <PossibleValue Comment="Pll ON" Value="RCC_PLL_ON"/>
    </RefParameter>
    
    
    <!--Clock Type-->
    <RefParameter Visible="false" Comment="Clock Type" DefaultValue="+ClockTypeHCLK+|ClockTypeSysClk+|ClockTypePCLK1" Name="ClockType" Type="list"/>
   
  
    <RefParameter Visible="false" Comment="Clock Type SysClk" DefaultValue="RCC_CLOCKTYPE_SYSCLK" Name="ClockTypeSysClk" Type="list">
        <PossibleValue Comment="Sysclk" Value="RCC_CLOCKTYPE_SYSCLK" Semaphore="SysClkToConfigure"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="Clock Type AHB" DefaultValue="RCC_CLOCKTYPE_HCLK" Name="ClockTypeHCLK" Type="list">
        <PossibleValue Comment="RCC_CLOCKTYPE_HCLK" Value="RCC_CLOCKTYPE_HCLK" Semaphore="HCLKtoConfigure"/>
    </RefParameter>
 
    <RefParameter Visible="false" Comment="Clock Type HCLK1" DefaultValue="RCC_CLOCKTYPE_PCLK1" Name="ClockTypePCLK1" Type="list">
        <PossibleValue Comment="PCLK1" Value="RCC_CLOCKTYPE_PCLK1" Semaphore="PCLK1toConfigure"/>
    </RefParameter>

	<!--params for code generation-->
    <!--params for IP codgen-->
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="+PeriphClockSelection" Type="list">
        <Condition Expression="((ADC1_USED)|TIM15|TIM1|CECUsed_ForRCC|RTCUsed_ForRCC|LCDUsed_ForRCC|USART1Used_ForRCC|USART2Used_ForRCC|LPUARTUsed_ForRCC|LPTIM1Used_ForRCC|LPTIM2Used_ForRCC|SAI2Used_ForRCC|I2C1Used_ForRCC|USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC|RNGUsed_ForRCC|SDMMC1Used_ForRCC|I2S1Used_ForRCC) &amp; CodegenConfigPeriph=true" Diagnostic="clock used by RCC"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="null" Type="list"/>
     
    
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelection" DefaultValue="+RCC_PERIPHCLK_CECVar+|RCC_PERIPHCLK_RTCVar+|RCC_PERIPHCLK_USART1Var+|RCC_PERIPHCLK_USART2Var+|RCC_PERIPHCLK_LPUART1Var+|RCC_PERIPHCLK_LPTIM1Var+|RCC_PERIPHCLK_LPTIM2Var+|RCC_PERIPHCLK_SAI2Var+|RCC_PERIPHCLK_I2C1Var+|RCC_PERIPHCLK_I2S1Var+|RCC_PERIPHCLK_USBVar+|RCC_PERIPHCLK_SDMMCVar+|RCC_PERIPHCLK_RNGVar+|RCC_PERIPHCLK_ADCVar+|RCC_PERIPHCLK_TIM15Var+|RCC_PERIPHCLK_TIM1Var" Type="list"/>
   

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_USBVar" Comment="RCC_PERIPHCLK_USBVar" Type="list" DefaultValue="RCC_PERIPHCLK_USB">
        <Condition Expression="USB_OTG_FSUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_USB"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_USBVar" Comment="RCC_PERIPHCLK_USBVar" Type="list" DefaultValue=""/> 
	

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SDMMCVar" Comment="RCC_PERIPHCLK_SDMMCVar" Type="list" DefaultValue="RCC_PERIPHCLK_SDMMC1">
        <Condition Expression="SDMMC1Used_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk SDMMC1" Value="RCC_PERIPHCLK_SDMMC1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SDMMCVar" Comment="RCC_PERIPHCLK_SDMMCVar" Type="list" DefaultValue=""/> 
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_CECVar" Comment="RCC_PERIPHCLK_CECVar" Type="list" DefaultValue="RCC_PERIPHCLK_CEC">
        <Condition Expression="CECUsed_ForRCC" Diagnostic="CEC Activated"/>
        <PossibleValue Comment="Periphclk CEC" Value="RCC_PERIPHCLK_CEC"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_CECVar" Comment="RCC_PERIPHCLK_CECVar" Type="list" DefaultValue=""/> 
    
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RNGVar" Comment="RCC_PERIPHCLK_RNGVar" Type="list" DefaultValue="RCC_PERIPHCLK_RNG">
        <Condition Expression="RNGUsed_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_RNG"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RNGVar" Comment="RCC_PERIPHCLK_RNGVar" Type="list" DefaultValue=""/> 
	

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RTCVar" Comment="RCC_PERIPHCLK_RTCVar" Type="list" DefaultValue="RCC_PERIPHCLK_RTC">
        <Condition Expression="RTCUsed_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_RTC"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RTCVar" Comment="RCC_PERIPHCLK_RTCVar" Type="list" DefaultValue=""/> 
    
    

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIM1Var" Comment="RCC_PERIPHCLK_TIM1Var" Type="list" DefaultValue="RCC_PERIPHCLK_TIM1">
        <Condition Expression="TIM1 &amp; !STM32G0x0_Value_line" Diagnostic="TIM1 Activated"/>
        <PossibleValue Comment="Periphclk TIM1" Value="RCC_PERIPHCLK_TIM1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIM1Var" Comment="RCC_PERIPHCLK_TIM1Var" Type="list" DefaultValue=""/>
    
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIM15Var" Comment="RCC_PERIPHCLK_TIM15Var" Type="list" DefaultValue="RCC_PERIPHCLK_TIM15">
        <Condition Expression="TIM15 &amp; !STM32G0x0_Value_line" Diagnostic="TIM15 Activated"/>
        <PossibleValue Comment="Periphclk TIM15" Value="RCC_PERIPHCLK_TIM15"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_TIM15Var" Comment="RCC_PERIPHCLK_TIM15Var" Type="list" DefaultValue=""/> 
    
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_USART1Var" Comment="RCC_PERIPHCLK_USART1Var" Type="list" DefaultValue="RCC_PERIPHCLK_USART1">
        <Condition Expression="USART1Used_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_USART1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_USART1Var" Comment="RCC_PERIPHCLK_USART1Var" Type="list" DefaultValue=""/> 
	
	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_USART2Var" Comment="RCC_PERIPHCLK_USART2Var" Type="list" DefaultValue="RCC_PERIPHCLK_USART2">
        <Condition Expression="USART2Used_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="Periphclk USART2" Value="RCC_PERIPHCLK_USART2"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_USART2Var" Comment="RCC_PERIPHCLK_USART2Var" Type="list" DefaultValue=""/> 
	
	

	

	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPUART1Var" Comment="RCC_PERIPHCLK_LPUART1Var" Type="list" DefaultValue="RCC_PERIPHCLK_LPUART1">
        <Condition Expression="LPUARTUsed_ForRCC" Diagnostic="LPUART1 Activated"/>
        <PossibleValue Comment="Periphclk LPUART1" Value="RCC_PERIPHCLK_LPUART1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPUART1Var" Comment="RCC_PERIPHCLK_LPUART1Var" Type="list" DefaultValue=""/> 
	
	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM1Var" Comment="RCC_PERIPHCLK_LPTIM1Var" Type="list" DefaultValue="RCC_PERIPHCLK_LPTIM1">
        <Condition Expression="LPTIM1Used_ForRCC" Diagnostic="LPTIM1 Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_LPTIM1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM1Var" Comment="RCC_PERIPHCLK_LPTIM1Var" Type="list" DefaultValue=""/> 
	
	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM2Var" Comment="RCC_PERIPHCLK_LPTIM2Var" Type="list" DefaultValue="RCC_PERIPHCLK_LPTIM2">
        <Condition Expression="LPTIM2Used_ForRCC" Diagnostic="LPTIM2 Activated"/>
        <PossibleValue Comment="Periphclk RTC" Value="RCC_PERIPHCLK_LPTIM2"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LPTIM2Var" Comment="RCC_PERIPHCLK_LPTIM2Var" Type="list" DefaultValue=""/> 
	
	
		
	
	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_SAI2Var" Comment="RCC_PERIPHCLK_SAI2Var" Type="list" DefaultValue="RCC_PERIPHCLK_SAI2">
        <Condition Expression="SAI2Used_ForRCC" Diagnostic="SAI2 Activated"/>
        <PossibleValue Comment="Periphclk SAI2" Value="RCC_PERIPHCLK_SAI2"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SAI2Var" Comment="RCC_PERIPHCLK_SAI2Var" Type="list" DefaultValue=""/> 
	
	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2C1Var" Comment="RCC_PERIPHCLK_I2C1Var" Type="list" DefaultValue="RCC_PERIPHCLK_I2C1">
        <Condition Expression="I2C1Used_ForRCC" Diagnostic="I2C1 Activated"/>
        <PossibleValue Comment="Periphclk I2C1" Value="RCC_PERIPHCLK_I2C1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2C1Var" Comment="RCC_PERIPHCLK_I2C1Var" Type="list" DefaultValue=""/> 
	
	
	
<RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S1Var" Comment="RCC_PERIPHCLK_I2S1Var" Type="list" DefaultValue="RCC_PERIPHCLK_I2S1">
        <Condition Expression="I2S1Used_ForRCC" Diagnostic="I2S1 Activated"/>
        <PossibleValue Comment="Periphclk I2S1" Value="RCC_PERIPHCLK_I2S1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2S1Var" Comment="RCC_PERIPHCLK_I2S1Var" Type="list" DefaultValue=""/> 
	
	

	
	 <RefParameter Visible="false" Name="RCC_PERIPHCLK_ADCVar" Comment="RCC_PERIPHCLK_ADCVar" Type="list" DefaultValue="RCC_PERIPHCLK_ADC">
        <Condition Expression="(ADC1_USED)" Diagnostic="ADC Activated"/>
        <PossibleValue Comment="Periphclk ADC" Value="RCC_PERIPHCLK_ADC"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_ADCVar" Comment="RCC_PERIPHCLK_ADCVar" Type="list" DefaultValue=""/> 
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LCDVar" Comment="RCC_PERIPHCLK_LCDVar" Type="list" DefaultValue="RCC_PERIPHCLK_LCD">
        <Condition Expression="LCDUsed_ForRCC" Diagnostic="LCD Activated"/>
        <PossibleValue Comment="Periphclk LCD" Value="RCC_PERIPHCLK_LCD"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_LCDVar" Comment="RCC_PERIPHCLK_LCDVar" Type="list" DefaultValue=""/>
	
	
    <RefParameter Visible="false" Name="RTCClockSelectionARG" Comment="RTCClockSelectionARG" Type="list" DefaultValue="+RTCClockSelection">
        <Condition Expression="(RTCUsed_ForRCC|LCDUsed_ForRCC)&amp; CodegenConfigPeriph=true" Diagnostic="RTC Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RTCClockSelectionARG" Comment="RTCClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
    <RefParameter Visible="false" Name="Usart1ClockSelectionARG" Comment="Usart1ClockSelectionARG" Type="list" DefaultValue="+USART1CLockSelection">
        <Condition Expression="USART1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="USART1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Usart1ClockSelectionARG" Comment="Usart1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="Usart2ClockSelectionARG" Comment="Usart2ClockSelectionARG" Type="list" DefaultValue="+USART2CLockSelection">
        <Condition Expression="USART2Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="USART2 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Usart2ClockSelectionARG" Comment="Usart2ClockSelectionARG" Type="list" DefaultValue="null"/>
	

	
	
	
    <RefParameter Visible="false" Name="Lpuart1ClockSelectionARG" Comment="Lpuart1ClockSelectionARG" Type="list" DefaultValue="+LPUART1CLockSelection">
        <Condition Expression="LPUARTUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPUART1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Lpuart1ClockSelectionARG" Comment="Lpuart1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
    <RefParameter Visible="false" Name="Lptim1ClockSelectionARG" Comment="Lptim1ClockSelectionARG" Type="list" DefaultValue="+LPTIM1CLockSelection">
        <Condition Expression="LPTIM1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Lptim1ClockSelectionARG" Comment="Lptim1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="Lptim2ClockSelectionARG" Comment="Lptim2ClockSelectionARG" Type="list" DefaultValue="+LPTIM2CLockSelection">
        <Condition Expression="LPTIM2Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM2 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Lptim2ClockSelectionARG" Comment="Lptim2ClockSelectionARG" Type="list" DefaultValue="null"/>
	

    
    <RefParameter Visible="false" Name="Tim1ClockSelectionARG" Comment="Tim1ClockSelectionARG" Type="list" DefaultValue="+TIM1CLockSelection">
        <Condition Expression="(TIM1 &amp; !STM32G0x0_Value_line) &amp; CodegenConfigPeriph=true" Diagnostic="TIM1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Tim1ClockSelectionARG" Comment="Tim1ClockSelectionARG" Type="list" DefaultValue="null"/>
    
    <RefParameter Visible="false" Name="Tim15ClockSelectionARG" Comment="Tim15ClockSelectionARG" Type="list" DefaultValue="+TIM15CLockSelection">
        <Condition Expression="(TIM15 &amp; !STM32G0x0_Value_line) &amp; CodegenConfigPeriph=true" Diagnostic="TIM15 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="Tim15ClockSelectionARG" Comment="Tim15ClockSelectionARG" Type="list" DefaultValue="null"/>
    

    <RefParameter Visible="false" Name="CecClockSelectionARG" Comment="CecClockSelectionARG" Type="list" DefaultValue="+CECCLockSelection">
        <Condition Expression="CECUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="CEC Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="CecClockSelectionARG" Comment="CecClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="I2c1ClockSelectionARG" Comment="I2c1ClockSelectionARG" Type="list" DefaultValue="+I2C1CLockSelection">
        <Condition Expression="I2C1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2c1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2c1ClockSelectionARG" Comment="I2c1ClockSelectionARG" Type="list" DefaultValue="null"/>
	
	


	<RefParameter Visible="false" Name="I2S1CLockSelectionARG" Comment="I2S1CLockSelectionARG" Type="list" DefaultValue="+I2S1CLockSelection">
        <Condition Expression="I2S1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2c1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2S1CLockSelectionARG" Comment="I2S1CLockSelectionARG" Type="list" DefaultValue="null"/>
	
	

    <RefParameter Visible="false" Name="RNGClockSelectionARG" Comment="RNGClockSelectionARG" Type="list" DefaultValue="+RNGCLockSelection">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LCD Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RNGClockSelectionARG" Comment="RNGClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="AdcClockSelectionARG" Comment="AdcClockSelectionARG" Type="list" DefaultValue="+ADCCLockSelection">
        <Condition Expression="(ADC1_USED)&amp; CodegenConfigPeriph=true" Diagnostic="ADC Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="AdcClockSelectionARG" Comment="AdcClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <!--params for clock source-->
    <!--params for HSE-->
    <RefParameter Visible="false" Comment="HSEStateARG" DefaultValue="null" Name="HSEStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; HSEUsedForSys=0)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lse StateARG" DefaultValue="+HSEState" Name="HSEStateARG" Type="list">
        <Condition Diagnostic="HSE used" Expression="HSEUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Hse StateARG" DefaultValue="null" Name="HSEStateARG" Type="list"/>
	
	
    <!--params for LSE-->
    <RefParameter Visible="false" Comment="LSEStateARG" DefaultValue="null" Name="LSEStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SYSCLKSource=RCC_SYSCLKSOURCE_LSE))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Lse StateARG" DefaultValue="+LSEState" Name="LSEStateARG" Type="list">
        <Condition Diagnostic="LSE used" Expression="LSEUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Lse StateARG" DefaultValue="null" Name="LSEStateARG" Type="list"/>
	
	
    <!--params for HSI-->
    <RefParameter Visible="false" Comment="HSIStateARG" DefaultValue="null" Name="HSIStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; HSIUsedForSys=0)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI StateARG" DefaultValue="+HSIState" Name="HSIStateARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="HSI StateARG" DefaultValue="null" Name="HSIStateARG" Type="list"/>
	
	
	
	
    <!--params for LSI-->
    <RefParameter Visible="false" Comment="LSIStateARG" DefaultValue="null" Name="LSIStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SYSCLKSource=RCC_SYSCLKSOURCE_LSI))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="+LSIState" Name="LSIStateARG" Type="list">
        <Condition Diagnostic="LSI used" Expression="LSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="null" Name="LSIStateARG" Type="list"/>
	
        
    <!--params for PLL-->
    <RefParameter Visible="false" Comment="PLLStateARG" DefaultValue="null" Name="PLLStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLStateARG" DefaultValue="+PLLState" Name="PLLStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLStateARG" DefaultValue="RCC_PLL_NONE" Name="PLLStateARG" Type="list"/>
	
	
    <RefParameter Visible="false" Comment="PLLSourceARG" DefaultValue="null" Name="PLLSourceARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLSourceARG" DefaultValue="+PLLSource" Name="PLLSourceARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLSourceARG" DefaultValue="null" Name="PLLSourceARG" Type="list"/>
	
	
	
 	
	
	

    <RefParameter Visible="false" Comment="PLLMARG" DefaultValue="null" Name="PLLMARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="PLLMARG" DefaultValue="+PLLM" Name="PLLMARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLMARG" DefaultValue="null" Name="PLLMARG" Type="list"/>
	


    <RefParameter Visible="false" Comment="PLLNARG" DefaultValue="null" Name="PLLNARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLNARG" DefaultValue="+PLLN" Name="PLLNARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLNARG" DefaultValue="null" Name="PLLNARG" Type="list"/>
	
	
<RefParameter Visible="false" Comment="PLLPARG" DefaultValue="null" Name="PLLPARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="PLLPARG" DefaultValue="+PLLP" Name="PLLPARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLPARG" DefaultValue="null" Name="PLLPARG" Type="list"/>
	
	
    <RefParameter Visible="false" Comment="PLLQARG" DefaultValue="null" Name="PLLQARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLQARG" DefaultValue="+PLLQ" Name="PLLQARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1 &amp; !STM32G0x0_Value_line"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLQARG" DefaultValue="null" Name="PLLQARG" Type="list"/>
    
    <RefParameter Visible="false" Comment="PLLRARG" DefaultValue="null" Name="PLLRARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; !(SysSourcePLL))"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLRARG" DefaultValue="+PLLR" Name="PLLRARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLRARG" DefaultValue="null" Name="PLLRARG" Type="list"/>

	
 
	
  
    <RefParameter Comment="HSI Calibration Value" DefaultValue="64" Max="127" Min="0" Name="HSICalibrationValue" Group="RCC Parameters" Type="integer">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
    <RefParameter Comment="HSI Calibration Value" DefaultValue="64" Max="127" Min="0" Name="HSICalibrationValue" Group="RCC Parameters" Type="integer"/>
    
   
    <RefParameter Visible="false" Comment="Clock TypeARG" DefaultValue="+ClockType" Name="ClockTypeARG" Type="list">
        <Condition Expression="SysClkToConfigure|HCLKtoConfigure|PCLK1toConfigure|PCLK2toConfigure|FLASH_LATENCY1" Diagnostic="at least one clock to configure"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock TypeARG" DefaultValue="null" Name="ClockTypeARG" Type="list"/>
    <RefParameter Visible="false" Comment="SysClock SourceARG" DefaultValue="+SYSCLKSource" Name="SYSCLKSourceARG" Type="list">
        <Condition Expression="SysClkToConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SysClock SourceARG" DefaultValue="null" Name="SYSCLKSourceARG" Type="list"/>
    <RefParameter Visible="false" Comment="AHBCLKDividerARG" DefaultValue="+AHBCLKDivider" Name="AHBCLKDividerARG" Type="list">
        <Condition Expression="HCLKtoConfigure" Diagnostic=""/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="AHBCLKDividerARG" DefaultValue="null" Name="AHBCLKDividerARG" Type="list"/>
    <RefParameter Visible="false" Comment="APB1CLKDividerARG" DefaultValue="+APB1CLKDivider" Name="APB1CLKDividerARG" Type="list">
        <Condition Expression="PCLK1toConfigure" Diagnostic=""/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="APB1CLKDividerARG" DefaultValue="+APB1CLKDivider" Name="APB1CLKDividerARG" Type="list">
        <Condition Expression="PCLK2toConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1CLKDividerARG" DefaultValue="null" Name="APB1CLKDividerARG" Type="list"/>
	
    <RefParameter Visible="false" Comment="HSISYSCLKDividerARG" DefaultValue="null" Name="HSISYSCLKDividerARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="((CodegenConfigPeriph=false) &amp; (HSIUsedForSys=0))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSISYSCLKDividerARG" DefaultValue="+HSISYSCLKDivider" Name="HSISYSCLKDividerARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="(HSIUsed=1)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSISYSCLKDividerARG" DefaultValue="null" Name="HSISYSCLKDividerARG" Type="list"/>
   
    
    <RefParameter Visible="false" Comment="RNGCLKDividerARG" DefaultValue="+RNGCLKDivider" Name="RNGCLKDividerARG" Type="list">
        <Condition Diagnostic="RNG used" Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="RNGCLKDividerARG" DefaultValue="null" Name="RNGCLKDividerARG" Type="list"/>	
    <!--MCO param used to codGen -->
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO" DefaultValue="RCC_MCO1" Type="list">
        <Condition Diagnostic="" Expression="((Semaphore_input_Channel1TIM17 &amp; TIM17 &amp; SEM2RCC_MCO_REQUIRED_TIM17)|MCOConfig)"/>
        <PossibleValue Comment="Clock Output" Value="RCC_MCO1"/>
    </RefParameter>
 
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO" DefaultValue="null" Type="list"/>
	
	
    <!--params for MSI and HSI calibration-->
    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="null" Name="HSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="((CodegenConfigPeriph=false) &amp; (HSIUsedForSys=0))"/>
    </RefParameter>

    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="RCC_HSICALIBRATION_DEFAULT" Name="HSICalibrationValueARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="HSIUsed=1 &amp; HSICalibrationValue=64"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="+HSICalibrationValue" Name="HSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="HSICalibrationValueARG" DefaultValue="null" Name="HSICalibrationValueARG" Type="list"/>
	
	
	
     <!--VDD range--> 
 
    <RefParameter Name="VDD_VALUE" Comment="VDD voltage (V)" DefaultValue="3.3" Max="3.6" Min="1.71" Type="double" Unit="V" Group="System Parameters"/>
	

    <RefParameter Name="PWR_Regulator_Voltage_Scale" Comment="Power Regulator Voltage Scale" Type="list" DefaultValue="PWR_REGULATOR_VOLTAGE_SCALE1" Group="Power Parameters">
        <Condition Diagnostic="" Expression="((HCLKFreq_Value &lt; 26000000) | (HCLKFreq_Value=26000000))"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE2" Comment="Power Regulator Voltage Scale 2" Semaphore="scale2"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE1" Comment="Power Regulator Voltage Scale 1" Semaphore="scale1"/>
    </RefParameter>
    <RefParameter Name="PWR_Regulator_Voltage_Scale" Comment="Power Regulator Voltage Scale" Type="list" DefaultValue="PWR_REGULATOR_VOLTAGE_SCALE1" Group="Power Parameters">
        <Condition Diagnostic="" Expression="((HCLKFreq_Value &gt; 26000000))"/>
        <PossibleValue Value="PWR_REGULATOR_VOLTAGE_SCALE1" Comment="Power Regulator Voltage Scale 1" Semaphore="scale1"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="PWR_Regulator_Voltage_ScaleARG" DefaultValue="+PWR_Regulator_Voltage_Scale" Name="PWR_Regulator_Voltage_ScaleARG" Type="list">
        <Condition Expression="(CodegenConfigPeriph=true)" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PWR_Regulator_Voltage_ScaleARG" DefaultValue="null" Name="PWR_Regulator_Voltage_ScaleARG" Type="list"/>

  
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_0" Group="System Parameters">
        <Condition Diagnostic="" Expression="((HCLKFreq_Value &lt; 24000000)|(HCLKFreq_Value= 24000000 ))" />
        <PossibleValue Value="FLASH_LATENCY_0" Comment="0 WS (1 CPU cycle)"/>
    </RefParameter>
	
	<RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_1" Group="System Parameters">
        <Condition Diagnostic="" Expression="((HCLKFreq_Value &lt; 48000000)|(HCLKFreq_Value= 48000000))" />
        <PossibleValue Value="FLASH_LATENCY_1" Comment="1 WS (2 CPU cycle)"/>
    </RefParameter>
	<RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_2" Group="System Parameters">
        <Condition Diagnostic="" Expression="((HCLKFreq_Value &lt; 64000000)|(HCLKFreq_Value= 64000000 ))" />
        <PossibleValue Value="FLASH_LATENCY_2" Comment="2 WS (3 CPU cycle)"/>
    </RefParameter>


    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_0" Group="System Parameters">
        <PossibleValue Value="FLASH_LATENCY_0" Comment="0 WS (1 CPU cycle)"/>
        <PossibleValue Value="FLASH_LATENCY_1" Comment="1 WS (2 CPU cycle)" Semaphore="FLASH_LATENCY1"/>
        <PossibleValue Value="FLASH_LATENCY_2" Comment="2 WS (3 CPU cycle)" Semaphore="FLASH_LATENCY2"/>
    </RefParameter>

    <RefParameter Name="INSTRUCTION_CACHE_ENABLE" Comment="Instruction Cache" Type="list" DefaultValue="1" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
    <RefParameter Name="PREFETCH_ENABLE" Comment="Prefetch Buffer" Type="list" DefaultValue="0" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
    <RefParameter Name="DATA_CACHE_ENABLE" Comment="Data Cache" Type="list" DefaultValue="1" Group="System Parameters">
        <PossibleValue Value="1" Comment="Enabled"/>
        <PossibleValue Value="0" Comment="Disabled"/>
    </RefParameter>
	 
	
  
 	
	      
    <RefParameter Visible="false" Name="PLLMARGForMacro" Comment="PLLMARGForMacro" Type="list" DefaultValue="+PLLM">
        <Condition Diagnostic="" Expression=" ((PLLUsed=1) &amp; CodegenConfigPeriph=true  &amp; PLLState=RCC_PLL_OFF)"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLMARGForMacro" Comment="PLLMARGForMacro" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="PLLSourceMARGForMacro" Comment="PLLSourceMARGForMacro" Type="list" DefaultValue="+PLLSource">
        <Condition Diagnostic="" Expression=" ((PLLUsed=1) &amp; CodegenConfigPeriph=true  &amp; PLLState=RCC_PLL_OFF)"/>
    </RefParameter>
    <RefParameter Visible="false" Name="PLLSourceMARGForMacro" Comment="PLLSourceMARGForMacro" Type="list" DefaultValue="null"/>

    <RefParameter  Name="LSE_Drive_Capability" Comment="LSE Drive Capability" Type="list" DefaultValue="false" Group="RCC Parameters">
        <Condition Diagnostic="" Expression="LSEOscillator &amp; (LSEUsed=1)"/>
        <PossibleValue Value="RCC_LSEDRIVE_LOW"        Comment="LSE oscillator low drive capability"  />
        <PossibleValue Value="RCC_LSEDRIVE_MEDIUMLOW"  Comment="LSE oscillator medium low drive capability"/>
        <PossibleValue Value="RCC_LSEDRIVE_MEDIUMHIGH" Comment="LSE oscillator medium high drive capability"/>
        <PossibleValue Value="RCC_LSEDRIVE_HIGH"       Comment="LSE oscillator high drive capability"/>
    </RefParameter>
	<RefParameter Visible="false" Name="LSE_Drive_Capability" Comment="LSE Drive Capability" Type="list" DefaultValue="null" Group="RCC Parameters">
    
    </RefParameter>
    
    <RefParameter Name="CodegenConfigPeriph" Comment="Generate the peripherals clock configuration" Type="list" DefaultValue="true" Group="Peripherals Clock Configuration">
        <PossibleValue Value="false" Comment="FALSE"/>
        <PossibleValue Value="true" Comment="TRUE"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="RCC_MCO1SourceARG" DefaultValue="+RCC_MCO1Source" Name="RCC_MCO1SourceARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="(MCOConfig) &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="RCC_MCO1SourceARG" DefaultValue="null" Name="RCC_MCO1SourceARG" Type="list"/>
    
    <RefMode Name="ClockTree">

        <ConfigForMode>RCC_ConfigVoltageScaling</ConfigForMode> 
        <ConfigForMode>RCC_LSEDRIVE_CONFIG</ConfigForMode>
        <ConfigForMode>RCC_OSCConfig</ConfigForMode>            
        <ConfigForMode>RCC_ClockConfig</ConfigForMode>
        <ConfigForMode>RCC_PClockConfig</ConfigForMode>              
        <ConfigForMode>RCC_MCOConfig</ConfigForMode>        
        <ConfigForMode>RCC_LSCOConfig</ConfigForMode>        
        <ConfigForMode>RCC_CSS_Enable</ConfigForMode>
        <ConfigForMode>RCC_CSS_EnableLSE</ConfigForMode>    
	        
	<!--ConfigForMode>RCC_interrupt_Time_SYSTICK_Config</ConfigForMode-->
	<!--ConfigForMode>RCC_SYSTICK_CONFIG</ConfigForMode-->
        <ConfigForMode>RCC_RNGDIV_CONFIG</ConfigForMode>

        <Parameter Name="OscillatorType"/>
        <Parameter Name="APB1TimCLKDivider"/>
        <Parameter Name="PLLN"/>
        <Parameter Name="Cortex_Div"/>
        <Parameter Name="RCC_RTC_Clock_Source_FROM_HSE"/>
        <Parameter Name="RCC_CEC_Clock_Source_FROM_HSI16"/>
        <Parameter Name="PLLM"/>
        <Parameter Name="PLLR"/>
        <Parameter Name="PLLP"/>
        <Parameter Name="PLLQ"/>

        <Parameter Name="AHBCLKDivider"/>
        <Parameter Name="RCC_MCODiv"/>
        <Parameter Name="APB1CLKDivider"/>
        <Parameter Name="HSISYSCLKDivider"/>
        <Parameter Name="RTCClockSelection"/>
        <Parameter Name="SYSCLKSource"/>
        <Parameter Name="RCC_MCO1Source"/>
    
        <Parameter Name="USART1CLockSelection"/>
        <Parameter Name="USART2CLockSelection"/>
        <Parameter Name="I2S1CLockSelection"/>
        <Parameter Name="LPUART1CLockSelection"/>
        <Parameter Name="I2C1CLockSelection"/>

        <Parameter Name="LPTIM1CLockSelection"/>
        <Parameter Name="LPTIM2CLockSelection"/>
        <Parameter Name="CECCLockSelection"/>
        <Parameter Name="ADCCLockSelection"/>
        <Parameter Name="EnbaleCSS"/>
        <Parameter Name="EnableCSSLSE"/>
        <Parameter Name="HSE_VALUE"/>
        <Parameter Name="HSI_VALUE"/>
        <Parameter Name="LSE_VALUE"/>
        <Parameter Name="LSI_VALUE"/>
        <Parameter Name="SYSCLKFreq_VALUE"/>
        <Parameter Name="SYSCLKFreq_VALUE1"/>
        <Parameter Name="SYSCLKFreq_VALUE2"/>
        <Parameter Name="MCO1PinFreq_Value"/>
        <Parameter Name="HCLKFreq_Value"/>
        <Parameter Name="USBFreq_Value"/>
        <Parameter Name="ADCFreq_Value"/>
        <Parameter Name="I2C1Freq_Value"/>
        <Parameter Name="USART2Freq_Value"/>
        <Parameter Name="I2S1Freq_Value"/>
        <Parameter Name="USART1Freq_Value"/>
        <Parameter Name="LPUART1Freq_Value"/>
        <Parameter Name="LPTIM1Freq_Value"/>
        <Parameter Name="LPTIM2Freq_Value"/>
        <Parameter Name="TIM1Freq_Value"/>
        <Parameter Name="CECFreq_Value"/>
        <Parameter Name="TIM15Freq_Value"/>
        <Parameter Name="RTCFreq_Value"/>
        <Parameter Name="APBTimFreq_Value"/>

        <Parameter Name="FCLKCortexFreq_Value"/>
        <Parameter Name="PWRFreq_Value"/>
        <Parameter Name="AHBFreq_Value"/>
        <Parameter Name="WatchDogFreq_Value"/>
        <Parameter Name="CortexFreq_Value"/>
        <Parameter Name="APBFreq_Value"/>
		<Parameter Name="ClockTypeARG"/>
        <Parameter Name="SYSCLKSourceARG"/>
        <Parameter Name="AHBCLKDividerARG"/>
        <Parameter Name="APB1CLKDividerARG"/>
        <Parameter Name="HSISYSCLKDividerARG"/>
        <Parameter Name="ClockType"/>
        <Parameter Name="ClockTypeSysClk"/>
        <Parameter Name="ClockTypeHCLK"/>
        <Parameter Name="ClockTypePCLK1"/>
        <Parameter Name="EnableExtClockForI2S"/>
        <Parameter Name="ExtClockEnable"/>
        <Parameter Name="EXTERNAL_CLOCK_VALUE"/>
	
    </RefMode>
	
	<RefMode Name="AdvancedSettings">
        <Parameter Name="VDD_VALUE"/>
        <Parameter Name="INSTRUCTION_CACHE_ENABLE"/>
        <Parameter Name="PREFETCH_ENABLE"/>
        <Parameter Name="DATA_CACHE_ENABLE"/>
        <Parameter Name="FLatency"/>
        <Parameter Name="HSICalibrationValue"/>
        <Parameter Name="PWR_Regulator_Voltage_Scale"/>
	<Parameter Name="HSE_Timout"/>
        <Parameter Name="LSE_Timout"/>
	<Parameter Name="LSE_Drive_Capability"/>
        <Parameter Name="CodegenConfigPeriph"/>
      
    </RefMode>


   
    <ModeLogicOperator Name="OR">
        <!-- Modes for Oscillators & Clocks -->
        <Mode Name="OSC" UserName="High Speed Clock (HSE)">
            <ModeLogicOperator Name="XOR">
                <Mode Name="HSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEByPass</Semaphore>
                </Mode>
                <Mode Name="HSE-External-Oscillator" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <Signal Name="OSC_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC enable">
            <ModeLogicOperator Name="XOR">
                <Mode Name="OSC enable">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_EN"/>
                    </SignalLogicalOp>
		</Mode>
            </ModeLogicOperator>
            <Condition Diagnostic="Active only with HSEByPass Mode" Expression="HSEByPass"/>
	</Mode>
        <Mode Name="OSC32" UserName="Low Speed Clock (LSE) ">
            <ModeLogicOperator Name="XOR">
                <Mode Name="LSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC32_IN"/>
                    </SignalLogicalOp>
                    <Semaphore>LSEByPass</Semaphore>
                </Mode>
                <Mode Name="LSE-External-Oscillator" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC32_IN"/>
                        <Signal Name="OSC32_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>LSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC32 enable">
            <ModeLogicOperator Name="XOR">
		<Mode Name="OSC32 enable">
                    <SignalLogicalOp Name="AND">
			<Signal Name="OSC32_EN"/>
                    </SignalLogicalOp>
		</Mode>
            </ModeLogicOperator>
            <Condition Diagnostic="Active only with LSEByPass Mode" Expression="LSEByPass"/>
	</Mode>
        <Mode Name="Clock-out" UserName="Master Clock Output">
            <ModeLogicOperator Name="OR">
                <Mode Name="Clock-out">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="MCO"/>
                    </SignalLogicalOp>
                    <Semaphore>MCOConfig</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode> 
	<Mode Name="Clock-out-LSCO" UserName="LSCO Clock Output">
            <ModeLogicOperator Name="OR">
                <Mode Name="Clock-out-LSCO">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="LSCO"/>
                    </SignalLogicalOp>
                    <Semaphore>LSCOConfig</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="Audio_ClockIn" UserName="Audio Clock Input (I2S_CKIN)">
            <ModeLogicOperator Name="OR">
                <Mode Name="Audio_ClockIn">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="$SingleInstanceI2S_CKIN"/>
                    </SignalLogicalOp>
                    <Semaphore>AudioClockConfig</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>

    </ModeLogicOperator>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="MCO"/>
    <RefSignal IOMode="Analog" Name="LSCO"/>
    <RefSignal IOMode="System" Name="OSC32_IN"/>
    <RefSignal IOMode="System" Name="OSC32_OUT"/>
    <RefSignal IOMode="System" Name="OSC_IN"/>
    <RefSignal IOMode="System" Name="OSC_OUT"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="OSC_EN"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="OSC32_EN"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="$SingleInstanceI2S_CKIN"/>
	 

   
</IP>	
	
	
	
	
	
	
	
	

	
	
	
	
	
	
	
