<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP DBVersion="V4.0" IPType="peripheral" Name="RCC" Version="STM32W_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+|OscillatorTypeHSE+|OscillatorTypeMSI" Name="OscillatorType" Type="list">
        <Condition Expression="CodegenConfigPeriph=false" Diagnostic=""/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="Oscillator Type" DefaultValue="+OscillatorTypeHSI48+|OscillatorTypeHSI+|OscillatorTypeLSI+|OscillatorTypeHSE+|OscillatorTypeLSE+|OscillatorTypeMSI" 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-->
    <!--APB1 MUL for TIM-->
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider"  DefaultValue="1" Name="APB1TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="APB1 timer clock" Expression="APB1CLKDivider=RCC_HCLK_DIV1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB1 Timer Clock Divider"  DefaultValue="2" Name="APB1TimCLKDivider" Type="integer" Max="2" Min="2"/>
   
    <!--APB2 MUL for TIM-->
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider" DefaultValue="1" Name="APB2TimCLKDivider" Type="integer" Max="1" Min="1">
        <Condition Diagnostic="APB1 timer clock" Expression="APB2CLKDivider=RCC_HCLK_DIV1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2 Timer Clock Divider"  DefaultValue="2" Name="APB2TimCLKDivider" Type="integer" Max="2" Min="2"/>
	  
	  
    <!--PLLN-->
    <RefParameter Visible="false" Comment="PLLN" DefaultValue="8" Max="127" Min="6" Name="PLLN" Type="integer">
        <Condition Diagnostic="" Expression="STM32WBx0_Value_Line"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLN" DefaultValue="8" Max="86" Min="8" Name="PLLN" Type="integer"/>	
    <!--PLLSAI1N-->
    <RefParameter Visible="false" Comment="PLLSAI1N" DefaultValue="8" Max="86" Min="4" Name="PLLSAI1N" Type="integer"/>
   
    <!--divisor-->
    <!--HSI DIV-->
    <RefParameter Visible="false" Comment="HSI Div" DefaultValue="HSIDiv1" Name="HSIDiv" Type="list">
        <PossibleValue Comment="1" Value="HSIDiv1" />
        <PossibleValue Comment="4" Value="HSIDiv2"/>
    </RefParameter>	  
	
    <!--Cortex2_Div-->
    <RefParameter Visible="false" Comment="Cortex2 Div" DefaultValue="SYSTICK_CLKSOURCE_HCLK" Name="Cortex2_Div" Type="list">
        <PossibleValue Comment="1" Value="SYSTICK_CLKSOURCE_HCLK" />
        <PossibleValue Comment="8" Value="SYSTICK_CLKSOURCE_HCLK_DIV8"/>
    </RefParameter>	 
	
    <!--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_RFWKP_Clock_Source_FROM_HSE-->
    <RefParameter Visible="false" Comment="HSE DIv 1024" Name="RCC_RFWKP_Clock_Source_FROM_HSE" Type="integer" DefaultValue="1024" Max="1024" Min="1024"/>
    <!--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="RNG Div" Name="RNGDiv" Type="integer" DefaultValue="3" Max="3" Min="3"/>
    <RefParameter Visible="false" Comment="HSE PRESCALER" Name="HSEPRES" Type="integer" DefaultValue="1" Max="2" Min="1"/>
   
    <!--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>
    
    <RefParameter Visible="false" Comment="SMPSDivider" DefaultValue="3" Name="SMPSDivider" Type="list">
        <Condition Expression="SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI &amp; (MSIRANGE_9 | MSIRANGE_11)" Diagnostic=""/>
        <PossibleValue Comment="1" Value="1"/>
        <PossibleValue Comment="2" Value="2"/>
        <PossibleValue Comment="3" Value="3"/>
        <PossibleValue Comment="4" Value="4"/>
        <PossibleValue Comment="6" Value="6"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDivider" DefaultValue="2" Name="SMPSDivider" Type="list">
        <PossibleValue Comment="1" Value="1"/>
        <PossibleValue Comment="2" Value="2"/>
        <PossibleValue Comment="3" Value="3"/>
        <PossibleValue Comment="4" Value="4"/>
        <PossibleValue Comment="6" Value="6"/>
    </RefParameter>
    
    
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE0" Name="SMPSDiv" Type="list">
        <Condition Expression="SMPSCLockSelection=RCC_SMPSCLKSOURCE_HSI &amp; SMPSDivider=1" Diagnostic=""/>
        <PossibleValue Comment="1" Value="RCC_SMPSCLKDIV_RANGE0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="SMPSCLockSelection=RCC_SMPSCLKSOURCE_HSI &amp; SMPSDivider=2" Diagnostic=""/>
        <PossibleValue Comment="2" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE0" Name="SMPSDiv" Type="list">
        <Condition Expression="SMPSCLockSelection=RCC_SMPSCLKSOURCE_HSE &amp; SMPSDivider=2" Diagnostic=""/>
        <PossibleValue Comment="2" Value="RCC_SMPSCLKDIV_RANGE0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="SMPSCLockSelection=RCC_SMPSCLKSOURCE_HSE &amp; SMPSDivider=4" Diagnostic=""/>
        <PossibleValue Comment="4" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE0" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_8) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=1" Diagnostic=""/>
        <PossibleValue Comment="1" Value="RCC_SMPSCLKDIV_RANGE0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_8) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI)  &amp; SMPSDivider=2" Diagnostic=""/>
        <PossibleValue Comment="2" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_9) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=3" Diagnostic=""/>
        <PossibleValue Comment="3" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE0" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_10) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=2" Diagnostic=""/>
        <PossibleValue Comment="2" Value="RCC_SMPSCLKDIV_RANGE0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_10) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=4" Diagnostic=""/>
        <PossibleValue Comment="4" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE0" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_11) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=3" Diagnostic=""/>
        <PossibleValue Comment="3" Value="RCC_SMPSCLKDIV_RANGE0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="RCC_SMPSCLKDIV_RANGE1" Name="SMPSDiv" Type="list">
        <Condition Expression="(MSIRANGE_11) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI) &amp; SMPSDivider=6" Diagnostic=""/>
        <PossibleValue Comment="6" Value="RCC_SMPSCLKDIV_RANGE1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPSDiv" DefaultValue="null" Name="SMPSDiv" Type="list" />
    
     
	
	    <RefParameter Visible="false" Comment="SMPSDiv2" DefaultValue="2" Max="2" Min="2" Name="SMPSDiv2" Type="integer"/>
	
    <!--PLLR-->
    <RefParameter Visible="false" Comment="PLLR" DefaultValue="RCC_PLLR_DIV2" Name="PLLR" Type="list">
        <PossibleValue Comment="2"  Value="RCC_PLLR_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_PLLR_DIV3"/>
        <PossibleValue Comment="4"  Value="RCC_PLLR_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_PLLR_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_PLLR_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_PLLR_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_PLLR_DIV8"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="HCLKRFDiv" DefaultValue="2" Max="2" Min="2" Name="HCLKRFDiv" Type="integer"/>


   
    <!--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"/>
       
    </RefParameter>
   
    <!--PLLQ-->
    <RefParameter Visible="false" Comment="PLLQ" DefaultValue="RCC_PLLQ_DIV2"  Name="PLLQ" Type="list">
        <PossibleValue Comment="2"  Value="RCC_PLLQ_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_PLLQ_DIV3"/>
        <PossibleValue Comment="4"  Value="RCC_PLLQ_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_PLLQ_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_PLLQ_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_PLLQ_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_PLLQ_DIV8"/>
    </RefParameter>


	
    <!--PLLSAI1R-->
    <RefParameter Visible="false" Comment="PLLSAI1R" DefaultValue="RCC_PLLR_DIV2" Name="PLLSAI1R" Type="list">
        <PossibleValue Comment="2"  Value="RCC_PLLR_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_PLLR_DIV3"/>
        <PossibleValue Comment="4"  Value="RCC_PLLR_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_PLLR_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_PLLR_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_PLLR_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_PLLR_DIV8"/>
    </RefParameter>


   
    <!--PLLSAI1Q-->
    <RefParameter Visible="false" Comment="PLLSAI1Q" DefaultValue="RCC_PLLQ_DIV2"  Name="PLLSAI1Q" Type="list">
        <PossibleValue Comment="2"  Value="RCC_PLLQ_DIV2"/>
        <PossibleValue Comment="3"  Value="RCC_PLLQ_DIV3"/>
        <PossibleValue Comment="4"  Value="RCC_PLLQ_DIV4"/>
        <PossibleValue Comment="5"  Value="RCC_PLLQ_DIV5"/>
        <PossibleValue Comment="6"  Value="RCC_PLLQ_DIV6"/>
        <PossibleValue Comment="7"  Value="RCC_PLLQ_DIV7"/>
        <PossibleValue Comment="8"  Value="RCC_PLLQ_DIV8"/>
    </RefParameter>

  
    <!--PLLSAI1P-->
    <RefParameter Visible="false" Comment="PLLSAI1P" DefaultValue="RCC_PLLP_DIV2" Name="PLLSAI1P" 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"/>
    </RefParameter>
   
    <!--AHB2CLKDivider-->
    <RefParameter Comment="AHBCLK Divider" Visible="false" DefaultValue="RCC_SYSCLK_DIV1" Name="AHB3CLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_SYSCLK_DIV1" />
        <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> 
    <!--AHB2CLKDivider-->
    <RefParameter Comment="AHBCLK2 Divider" Visible="false" DefaultValue="RCC_SYSCLK_DIV1" Name="AHB2CLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_SYSCLK_DIV1" />
        <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>
    <!--AHBCLKDivider-->
    <RefParameter Comment="AHBCLK Divider" Visible="false" DefaultValue="RCC_SYSCLK_DIV1" Name="AHBCLKDivider" Type="list">
        <PossibleValue Comment="1"   Value="RCC_SYSCLK_DIV1" />
        <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"/>
    </RefParameter>
    
    <!--diviseur APB1 1..16-->
    <RefParameter Visible="false"  Comment="APB1 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 APB2 1..16-->
    <RefParameter Visible="false"  Comment="APB2 Clock Divider" DefaultValue="RCC_HCLK_DIV1" Name="APB2CLKDivider" 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>

	

    <!--Les multiplexeur-->
    <!--PLLSourceVirtual-->
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_PLLSOURCE_MSI" Name="PLLSourceVirtual" Type="list">
        <Condition Diagnostic="PLL Mux should have HSE or MSI as input" Expression="(USBUsed_ForRCC &amp; (CK48SourcePLLCLK| CK48SourcePLLSAI1)) "/>
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE"/>
        <PossibleValue Comment="Pllsource MSI" Value="RCC_PLLSOURCE_MSI" />
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLL Source" DefaultValue="RCC_PLLSOURCE_MSI" Name="PLLSourceVirtual" Type="list">
        <PossibleValue Comment="Pllsource MSI" Value="RCC_PLLSOURCE_MSI" />
        <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 MSI" Value="RCC_PLLSOURCE_MSI" Semaphore="PLLSourceMSI"/>
        <PossibleValue Comment="Pllsource Hsi" Value="RCC_PLLSOURCE_HSI" Semaphore="PLLSourceHSI" />
        <PossibleValue Comment="Pllsource Hse" Value="RCC_PLLSOURCE_HSE" Semaphore="PLLSourceHSE"/>
    </RefParameter>
    
    <!--LSCOSource-->
    <RefParameter Visible="false" Comment="LSCOS Clock Source" DefaultValue="RCC_LSCOSOURCE_LSI1" Name="LSISource1" Type="list">
        <PossibleValue Comment="LSI"    Value="RCC_LSCOSOURCE_LSI1"       Semaphore="LSISourceLSI1"/>
        <PossibleValue Comment="LSI2"    Value="RCC_LSCOSOURCE_LSI2"       Semaphore="LSISourceLSI2"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="HCLKRF Clock Source" DefaultValue="RCC_HCLKRFCLKSOURCE_HSE" Name="HCLKRFclockSelectionVirtual" Type="list">
        <Condition Expression="(HSEByPass|HSEOscillator)" Diagnostic=""/>
        <PossibleValue Comment="HSE"    Value="RCC_HCLKRFCLKSOURCE_HSE"       Semaphore="HCLKRFSourceHSE"/>
    </RefParameter>	
    <RefParameter Visible="false" Comment="HCLKRF Clock Source" DefaultValue="RCC_HCLKRFCLKSOURCE_HSI" Name="HCLKRFclockSelectionVirtual" Type="list">
        <PossibleValue Comment="HSI"    Value="RCC_HCLKRFCLKSOURCE_HSI"       Semaphore="HCLKRFSourceHSI"/>
    </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>
		
    <!--SYSCLKSource-->
    <RefParameter Comment="SYSCLK Source" Visible="false" DefaultValue="RCC_SYSCLKSOURCE_MSI" Name="SYSCLKSource" Type="list">
        <PossibleValue Comment="Sysclksource Msi"    Value="RCC_SYSCLKSOURCE_MSI"    Semaphore="SysSourceMSI"/>
        <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"/>
    </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 MSI"    Value="RCC_MCO1SOURCE_MSI"    Semaphore="MCOSourceMSI"/>
        <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_LSI1"    Semaphore="MCOSourceLSI"/>
        <PossibleValue Comment="MCO1SRC LSI"    Value="RCC_MCO1SOURCE_HSI48"  Semaphore="MCOSourceHSI48"/>
    </RefParameter>  
	 
    <!--RCC_RFWKP_Clock_SourceVirtual-->
    <RefParameter Visible="false"  Comment="RTC Clock Selection" DefaultValue="RCC_RFWKPCLKSOURCE_HSE_DIV1024" Name="RFWKPClockSelection" Type="list" IP="RFWKP">
        <PossibleValue Comment="RFWKPclksource Lse"           Value="RCC_RFWKPCLKSOURCE_LSE"         Semaphore="RFWKPSourceLSE"/>
        <PossibleValue Comment="RFWKP clksource Hse div1024"  Value="RCC_RFWKPCLKSOURCE_HSE_DIV1024" Semaphore="RFWKPSourceHSE"/>         
    </RefParameter>
    <!--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_PCLK2"  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>
 
	
    <!--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>   
    <!--SMPSCLockSelection-->
    <!--RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSE" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="SMPS should use HSE with 32 Mhz as clock source (RF is enabled)" Expression="RFUsed_ForRCC"/>
        <PossibleValue Comment="SMPS Clksource Sysclk" Value="RCC_SMPSCLKSOURCE_HSE"  Semaphore="SMPSSourceHSE"/>
    </RefParameter-->
    <!--RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="SMPS should use HSE with 32 Mhz as clock source (RF is enabled)" Expression="RFUsed_ForRCC"/>
    </RefParameter-->
    
    <RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSI" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="SMPS CLock could have any clock source" Expression="HSE_VALUE=32000000 &amp; (MSIRANGE_8 | MSIRANGE_9 | MSIRANGE_10 | MSIRANGE_11)"/>
        <PossibleValue Comment="SMPS Clksource MSI"  Value="RCC_SMPSCLKSOURCE_MSI"  Semaphore="SMPSSourceMSI"/>
        <PossibleValue Comment="SMPS Clksource HSE" Value="RCC_SMPSCLKSOURCE_HSE"  Semaphore="SMPSSourceHSE"/>
        <PossibleValue Comment="SMPS Clksource HSI"    Value="RCC_SMPSCLKSOURCE_HSI"    Semaphore="SMPSSourceHSI"/>
    </RefParameter>
    
    <RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSI" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="SMPS CLock could not use MSI as clock source" Expression="HSE_VALUE=32000000"/>
        <PossibleValue Comment="SMPS Clksource HSE" Value="RCC_SMPSCLKSOURCE_HSE"  Semaphore="SMPSSourceHSE"/>
        <PossibleValue Comment="SMPS Clksource HSI"    Value="RCC_SMPSCLKSOURCE_HSI"    Semaphore="SMPSSourceHSI"/>
    </RefParameter>
    
    <RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSI" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="SMPS could not use  HSE as a clock source" Expression="(MSIRANGE_8 | MSIRANGE_9 | MSIRANGE_10 | MSIRANGE_11)"/>
        <PossibleValue Comment="SMPS Clksource MSI"  Value="RCC_SMPSCLKSOURCE_MSI"  Semaphore="SMPSSourceMSI"/>
        <PossibleValue Comment="SMPS Clksource HSI"    Value="RCC_SMPSCLKSOURCE_HSI"    Semaphore="SMPSSourceHSI"/>
    </RefParameter>
        
    <RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSI" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <Condition Diagnostic="MSI should be greather than 16 Mhz OR HSE with 32 Mhz" Expression="!(HSE_VALUE=32000000) &amp; !(MSIRANGE_8 | MSIRANGE_9 | MSIRANGE_10 | MSIRANGE_11)"/>
        <PossibleValue Comment="SMPS Clksource Hsi"    Value="RCC_SMPSCLKSOURCE_HSI"    Semaphore="SMPSSourceHSI"/>
    </RefParameter>    
    <!--RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="RCC_SMPSCLKSOURCE_HSI" Name="SMPSCLockSelectionVirtual" Type="list" IP="SMPS">
        <PossibleValue Comment="SMPS Clksource MSI"  Value="RCC_SMPSCLKSOURCE_MSI"  Semaphore="SMPSSourceMSI"/>
    </RefParameter-->
    <RefParameter Comment="PLL Source" DefaultValue="+SMPSCLockSelectionVirtual" Name="SMPSCLockSelectionVirtualString" Type="string" Visible="false"/>
    
    <RefParameter Visible="false"  Comment="SMPS Clock Selection" DefaultValue="+SMPSCLockSelectionVirtualString" Name="SMPSCLockSelection" Type="list" IP="SMPS">
        <PossibleValue Comment="SMPS Clksource Pclk2"  Value="RCC_SMPSCLKSOURCE_MSI"  Semaphore="SMPSSourceMSI"/>
        <PossibleValue Comment="SMPS Clksource Sysclk" Value="RCC_SMPSCLKSOURCE_HSE"  Semaphore="SMPSSourceHSE"/>
        <PossibleValue Comment="SMPS Clksource Hsi"    Value="RCC_SMPSCLKSOURCE_HSI"    Semaphore="SMPSSourceHSI"/>
    </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>
   

  
    <!--I2C3CLockSelection-->
    <RefParameter Visible="false"  Comment="I2C3 Clock Selection" DefaultValue="RCC_I2C3CLKSOURCE_PCLK1"    Name="I2C3CLockSelection" Type="list" IP="I2C3">
        <PossibleValue Comment="I2C3 Clksource PCLK3"  Value="RCC_I2C3CLKSOURCE_PCLK1"  Semaphore="I2C3SourcePCLK1"/>
        <PossibleValue Comment="I2C3 Clksource Sysclk" Value="RCC_I2C3CLKSOURCE_SYSCLK" Semaphore="I2C3SourceSys"/>
        <PossibleValue Comment="I2C3 Clksource Hsi"    Value="RCC_I2C3CLKSOURCE_HSI"    Semaphore="I2C3SourceHSI"/>
    </RefParameter>

   
   
    <!--LPTIM1CLockSelection-->
    <RefParameter Visible="false"  Comment="LPTIM1 Clock Selection" DefaultValue="RCC_LPTIM1CLKSOURCE_PCLK1" 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_PCLK"/>
        <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>
    
    <!--SAI1CLockSelection-->
    <RefParameter Visible="false" Comment="SAI1 CLock Selection" DefaultValue="RCC_SAI1CLKSOURCE_PLLSAI" Name="SAI1CLockSelection" Type="list" IP="SAI1">
        <PossibleValue Comment="PLLSAI1P" Value="RCC_SAI1CLKSOURCE_PLLSAI1" Semaphore="SAI1SourcePLLSAI1P"/>
        <PossibleValue Comment="PLLP" 	  Value="RCC_SAI1CLKSOURCE_PLL"     Semaphore="SAI1SourcePLLP"/>
        <PossibleValue Comment="HSI" 	  Value="RCC_SAI1CLKSOURCE_HSI"     Semaphore="SAI1SourceHSI"/>
        <PossibleValue Comment="SAI1_EXT" Value="RCC_SAI1CLKSOURCE_PIN"     Semaphore="SAI1SourceEXT"/>
    </RefParameter>

    <!--ADCCLockSelection-->
    <RefParameter Visible="false"  Comment="ADC CLock Selection" DefaultValue="RCC_ADCCLKSOURCE_SYSCLK"    Name="ADCCLockSelection" Type="list" IP="ADC1,ADC2,ADC3">
        <Condition Diagnostic="" Expression="STM32WBx0_Value_Line"/>
        <PossibleValue Comment="PLL"          Value="RCC_ADCCLKSOURCE_PLL"     Semaphore="ADCSourcePLL"/>
        <PossibleValue Comment="SysCLKOutput" Value="RCC_ADCCLKSOURCE_SYSCLK"  Semaphore="ADCSourceSys"/>
    </RefParameter>
    <RefParameter Visible="false"  Comment="ADC CLock Selection" DefaultValue="RCC_ADCCLKSOURCE_PLLSAI1"    Name="ADCCLockSelection" Type="list" IP="ADC1,ADC2,ADC3">
        <Condition Diagnostic="" Expression="!STM32WBx0_Value_Line"/>
        <PossibleValue Comment="PLLSAI1R"     Value="RCC_ADCCLKSOURCE_PLLSAI1" Semaphore="ADCSourcePLLSAI1R"/>
        <PossibleValue Comment="PLL"          Value="RCC_ADCCLKSOURCE_PLL"     Semaphore="ADCSourcePLL"/>
        <PossibleValue Comment="SysCLKOutput" Value="RCC_ADCCLKSOURCE_SYSCLK"  Semaphore="ADCSourceSys"/>
    </RefParameter>

    <!--CK48CLockSelection-->
    <RefParameter Visible="false"  Comment="CK48 CLock Selection" DefaultValue="RCC_USBCLKSOURCE_HSI48"    Name="CK48CLockSelection" Type="list" IP="USB,RNG,SDMMC1">
        <Condition Diagnostic="" Expression="STM32WBx0_Value_Line"/>
        <PossibleValue Comment="PLLCLK"   Value="RCC_USBCLKSOURCE_PLL"     Semaphore="CK48SourcePLLCLK"/>
        <PossibleValue Comment="MSI"      Value="RCC_USBCLKSOURCE_MSI"     Semaphore="CK48SourceMSI"/>
        <PossibleValue Comment="MSI"      Value="RCC_USBCLKSOURCE_HSI48"   Semaphore="CK48SourceHSI48"/>
    </RefParameter>
    <RefParameter Visible="false"  Comment="CK48 CLock Selection" DefaultValue="RCC_USBCLKSOURCE_PLLSAI1"    Name="CK48CLockSelection" Type="list" IP="USB,RNG,SDMMC1">
        <Condition Diagnostic="" Expression="!STM32WBx0_Value_Line"/>
        <PossibleValue Comment="PLLSAI1P" Value="RCC_USBCLKSOURCE_PLLSAI1" Semaphore="CK48SourcePLLSAI1"/>
        <PossibleValue Comment="PLLCLK"   Value="RCC_USBCLKSOURCE_PLL"     Semaphore="CK48SourcePLLCLK"/>
        <PossibleValue Comment="MSI"      Value="RCC_USBCLKSOURCE_MSI"     Semaphore="CK48SourceMSI"/>
        <PossibleValue Comment="MSI"      Value="RCC_USBCLKSOURCE_HSI48"   Semaphore="CK48SourceHSI48"/>
    </RefParameter>
    
    <RefParameter Visible="false"  Comment="CK48 CLock Selection" DefaultValue="RCC_RNGCLKSOURCE_LSI"    Name="RNGCLockSelection" Type="list" IP="RNG">
        <PossibleValue Comment="CLK48"    Value="RCC_RNGCLKSOURCE_CLK48"   Semaphore="RNGCLKSOURCE_CLK48"/>
        <PossibleValue Comment="LSI"      Value="RCC_RNGCLKSOURCE_LSI"     Semaphore="RNGCLKSOURCE_LSI"/>
        <PossibleValue Comment="LSE"      Value="RCC_RNGCLKSOURCE_LSE"     Semaphore="RNGCLKSOURCE_LSE"/>
    </RefParameter>

		
    <!-- MSI clock range-->	

    <RefParameter Visible="false" Comment="MSI Clock Range" DefaultValue="RCC_MSIRANGE_6" Name="MSIClockRange" Display="value/1000" Unit="KHz" Type="list">
        <PossibleValue Comment="100"    Value="RCC_MSIRANGE_0" Semaphore="MSIRANGE_0"/>
        <PossibleValue Comment="200"    Value="RCC_MSIRANGE_1" Semaphore="MSIRANGE_1"/>
        <PossibleValue Comment="400"    Value="RCC_MSIRANGE_2" Semaphore="MSIRANGE_2"/>
        <PossibleValue Comment="800"    Value="RCC_MSIRANGE_3" Semaphore="MSIRANGE_3"/>
        <PossibleValue Comment="1000"   Value="RCC_MSIRANGE_4" Semaphore="MSIRANGE_4"/>
        <PossibleValue Comment="2000"   Value="RCC_MSIRANGE_5" Semaphore="MSIRANGE_5"/>
        <PossibleValue Comment="4000"   Value="RCC_MSIRANGE_6" Semaphore="MSIRANGE_6"/>
        <PossibleValue Comment="8000"   Value="RCC_MSIRANGE_7" Semaphore="MSIRANGE_7"/>
        <PossibleValue Comment="16000"  Value="RCC_MSIRANGE_8" Semaphore="MSIRANGE_8"/>
        <PossibleValue Comment="24000"  Value="RCC_MSIRANGE_9" Semaphore="MSIRANGE_9"/>
        <PossibleValue Comment="32000"  Value="RCC_MSIRANGE_10" Semaphore="MSIRANGE_10"/>
        <PossibleValue Comment="48000"  Value="RCC_MSIRANGE_11" Semaphore="MSIRANGE_11"/>
    </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="32000000" Max="32000000" Min="32000000"       Type="double" Display="value/1000000" Unit="MHz"><!--HSE bypass and !PLL and !CSS-->
        <Condition Diagnostic="HSE for RF" Expression="STM32WB5MMGHx"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="32000000" Max="32000000" Min="32000000"       Type="double" Display="value/1000000" Unit="MHz"><!--HSE bypass and !PLL and !CSS-->
        <Condition Diagnostic="HSE for RF" Expression="(HSEByPass | HSEOscillator)  &amp; RFUsed_ForRCC"/>
    </RefParameter>

    <RefParameter Visible="false" Comment="HSE OSC"    Name="HSE_VALUE" DefaultValue="8000000" Max="32000000" Min="0" Type="double" Display="value/1000000" Unit="MHz">
        <Condition Diagnostic="" Expression="STM32WB30CEUx | STM32WB35CCUx | STM32WB35CEUx"/>
    </RefParameter>

    <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|STM32WB5MMGHx"/>
    </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="LSI2 Source" Name="LSI2_VALUE"   DefaultValue="32000" Max="32000"   Min="32000" Type="double" Display="value/1000" Unit="KHz"/>
    <RefParameter Visible="false" Comment="LSI2 Source" Name="LSI1_VALUE"   DefaultValue="32000" Max="32000"   Min="32000" Type="double" Display="value/1000" Unit="KHz"/>
	
    <!--RefParameter Visible="false" Comment="MSI Source" Name="MSI_VALUE"   DefaultValue="4000000"                         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"/>
    <RefParameter Visible="false" Comment="HSI Source" Name="HSI48_VALUE" DefaultValue="48000000"                        Type="double" Display="value/1000000" Unit="MHz"/>

    <!--output Freq value-->
    <RefParameter Visible="false" Comment="APB3 clock "           Name="APB3Freq_Value"       DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="HCLKRF clock "         Name="HCLKRFFreq_Value"     DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="FCLK Cortex"           Name="FCLKCortexFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="FCLK2 Cortex"          Name="FCLK2Freq_Value"      DefaultValue="32000000" Max="32000000" Min="32000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="RFUsed_ForRCC|S_BLE_HOST|S_THREAD" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="FCLK2 Cortex"          Name="FCLK2Freq_Value"      DefaultValue="4000000"  Max="32000000" Type="double" Display="value/1000000" Unit="MHz"/>
    <RefParameter Visible="false" Comment="PWR clock"             Name="PWRFreq_Value"        DefaultValue="4000000"  Max="64000000" 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="AHB2 clock"            Name="AHB2Freq_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"/>
    <RefParameter Visible="false" Comment="Cortex2 System Timer"  Name="Cortex2Freq_Value"    DefaultValue="4000000"  Type="list" Display="value/1000000" Unit="MHz">
        <Condition Expression="RFUsed_ForRCC|S_BLE_HOST|S_THREAD" Diagnostic=""/>
        <PossibleValue Value="32000000" Comment="32000000"/>
        <PossibleValue Value="4000000" Comment="4000000"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Cortex2 System Timer"  Name="Cortex2Freq_Value"    DefaultValue="4000000"  Max="32000000" Type="double" Display="value/1000000" Unit="MHz"/>

    <!--main sysclock Freq value-->
 
    <RefParameter Visible="false" Comment="System clock"   Name="SYSCLKFreq_VALUE"  DefaultValue="4000000"  Max="64000000" 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="HCLK Clock"    Name="HCLKFreq_Value" DefaultValue="4000000" Max="64000000" Min="14200000" Type="double"  Display="value/1000000" Unit="MHz" IP="TSC,CRC,ADC1,QSPI">
        <Condition Diagnostic="USB activated" Expression="USBUsed_ForRCC "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HCLK clock"      Name="HCLKFreq_Value"    DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz" Max="64000000" IP="TSC,CRC,ADC1,QUADfSPI"/>
    <RefParameter Visible="false" Comment="HCLK2 clock"     Name="HCLK2Freq_Value"    DefaultValue="32000000" Max="32000000" Min="32000000" Type="double"  Display="value/1000000" Unit="MHz"  IP="RF">
        <Condition Expression="RFUsed_ForRCC|S_BLE_HOST|S_THREAD" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HCLK2 clock"     Name="HCLK2Freq_Value"    DefaultValue="4000000" Max="32000000"  Type="double"  Display="value/1000000" Unit="MHz"  IP="RF"/>
    <RefParameter Visible="false" Comment="HCLK3 clock"     Name="HCLK3Freq_Value"    DefaultValue="4000000"   Type="double"  Display="value/1000000" Unit="MHz" Max="64000000" IP="RNG,PWR,MBOX"/>
	
    <!--ADC frequency  --> 
    <RefParameter Visible="false" Comment="ADC synchr"  Name="synchADCFreq_Value"  DefaultValue="=HCLKFreq_Value" Type="double" Display="value/1000000" Unit="MHz" IP="ADC1,ADC2,ADC3"/>
    <RefParameter Visible="false" Comment="ADC asynchr" Name="asynchADCFreq_Value" DefaultValue="=ADCFreq_Value"  Type="double" Display="value/1000000"  Unit="MHz" IP="ADC1,ADC2,ADC3"/>
    <!--IP Freq value-->
    <RefParameter Visible="false" Comment="SAI1 clock Source" Name="SAI1Freq_Value" DefaultValue="2285714"  Type="double" Display="value/1000000" Unit="MHz" IP="SAI1"/>
	
    <RefParameter Visible="false" Comment="I2C3 clock Source" Name="I2C3Freq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="I2C3"/>
    <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="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="SMPS clock Source" Name="SMPSFreq_Value" DefaultValue="4000000"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS">
        <Condition Diagnostic="" Expression="(MSIRANGE_9) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI)"/>
        <PossibleValue Value="4000000" Comment="4000000"   />
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPS clock Source" Name="SMPSFreq_Value" DefaultValue="8000000"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS">
        <PossibleValue Value="4000000" Comment="4000000"   />
        <PossibleValue Value="8000000" Comment="8000000"   />
    </RefParameter>

    <RefParameter Visible="false" Comment="SMPS output clock Source" Name="SMPS1Freq_Value" DefaultValue="8000000"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS">
        <Condition Diagnostic="" Expression="(MSIRANGE_9) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI)"/>
        <PossibleValue Value="8000000" Comment="8000000"   />
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPS output clock Source" Name="SMPS1Freq_Value" DefaultValue="16000000"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS">
        <PossibleValue Value="8000000" Comment="8000000"   />
        <PossibleValue Value="16000000" Comment="16000000"   />
    </RefParameter> 
    <RefParameter Visible="false" Comment="SMPS output clock Source" Name="SMPS1Freq_ValueConstraintsText" DefaultValue="Only 8 MHz could be used"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS">
        <Condition Diagnostic="" Expression="(MSIRANGE_9) &amp; (SMPSCLockSelection=RCC_SMPSCLKSOURCE_MSI)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="SMPS output clock Source" Name="SMPS1Freq_ValueConstraintsText" DefaultValue="Only 8 MHz and 16 MHz could be used"  Type="list" Display="value/1000000" Unit="MHz" IP="SMPS"/>
   
    <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="CK48 clock Source"   Name="USBFreq_Value"   DefaultValue="16000000" Min="47880000" Max="48120000"  Type="double" Display="value/1000000" Unit="MHz" IP="USB">
        <Condition Diagnostic="HSE in bypass Mode" Expression="USBUsed_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"/>
    
    <RefParameter Visible="false" Comment="RNG 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="64000000" 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="RFWKP Clock Source" Name="RFWKPFreq_Value" Type="double" DefaultValue="32000"  Display="value/1000" Unit="KHz" IP="RFWKP"/>
	
    <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="APB2 Timer clock" Name="APB2TimFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER16,TIMER17,TIMER1"/>
    <RefParameter Visible="false" Comment="APB1 Timer clock" Name="APB1TimFreq_Value" DefaultValue="4000000"  Type="double" Display="value/1000000" Unit="MHz" IP="TIMER3,TIMER2"/>

    <RefParameter Visible="false" Comment="APB2 Peripheral Clock"    Name="APB2Freq_Value"    DefaultValue="4000000" Max="64000000" Type="double" Display="value/1000000" Unit="MHz" IP="SAI1,SAI2,SPI1,USART1,SYSCFG"/>
    <RefParameter Visible="false" Comment="APB1 Peripheral Clock"    Name="APB1Freq_Value"    DefaultValue="4000000" Max="64000000" Type="double" Display="value/1000000" Unit="MHz" IP="SPI2,I2C3,LPUART2,I2C1,LPTIM1,LPTIM2,WWDG,RTC2,CRS,USB,IWDG"/>
		
    <RefParameter Visible="false" Comment="SAI1 Extern CLock" Name="EXTERNALSAI1_CLOCK_VALUE" DefaultValue="2097000"  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"/>

    <!--PLLs Freq value-->
	
	
    <!--PLLSAI1R output-->
    <RefParameter Visible="false" Comment="PLLSAI1R" Name="PLLSAI1RoutputFreq_Value" DefaultValue="16000000" Min="8000000" Max="64000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(ADCSourcePLLSAI1R &amp; (USE_ADC1|USE_ADC2|USE_ADC3))&amp; scale1 " Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLSAI1R" Name="PLLSAI1RoutputFreq_Value" DefaultValue="16000000"  Min="8000000" Max="26000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(ADCSourcePLLSAI1R &amp; (USE_ADC1|USE_ADC2|USE_ADC3)) &amp; scale2" Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLSAI1R" Name="PLLSAI1RoutputFreq_Value" DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz"/>
	
    <!--PLLSAI1Q output-->
    <RefParameter Visible="false" Comment="PLLSAI1Q" Name="PLLSAI1QoutputFreq_Value"  Min="8000000" Max="64000000"  DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48))&amp; CK48SourcePLLSAI1)&amp; scale1 " Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLSAI1Q" Name="PLLSAI1QoutputFreq_Value"  Min="8000000" Max="26000000"  DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48))&amp; CK48SourcePLLSAI1)&amp; scale2 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLSAI1Q" Name="PLLSAI1QoutputFreq_Value" DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz"/>
	
    <!--PLLSAI1P output-->
    <RefParameter Visible="false" Comment="PLLSAI1P" Name="PLLSAI1PoutputFreq_Value"  Min="2000000" Max="64000000" DefaultValue="4571429"    Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC)))&amp; scale1 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLSAI1P" Name="PLLSAI1PoutputFreq_Value"  Min="2000000" Max="26000000" DefaultValue="4571429"    Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC)))&amp; scale2 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLSAI1P" Name="PLLSAI1PoutputFreq_Value" DefaultValue="4571429"   Type="double" Display="value/1000000" Unit="MHz"/>
    <!--VCOSAI1Output output ==> multiplicateur *N frequency range-->
    <RefParameter Visible="false" Comment="VCOSAI1Output"     Name="VCOSAI1OutputFreq_Value"  Min="96000000" Max="344000000"    DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="PLLSAI1Used=1 &amp; scale1"  Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="VCOSAI1Output"     Name="VCOSAI1OutputFreq_Value"  Min="64000000" Max="128000000"    DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="PLLSAI1Used=1 &amp; scale2"  Diagnostic=""/>
    </RefParameter>

    <RefParameter Visible="false" Comment="VCOSAI1Output"     Name="VCOSAI1OutputFreq_Value"     DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz"/>
	

	
    <!--PLLQ output-->
    <RefParameter Visible="false" Comment="PLLQ"     Name="PLLQoutputFreq_Value"  Min="8000000" Max="64000000"     DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((USBUsed_ForRCC|SDMMC1Used_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48))&amp; CK48SourcePLLCLK)&amp; scale1 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLQ"     Name="PLLQoutputFreq_Value"  Min="8000000" Max="26000000"     DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="((USBUsed_ForRCC|SDMMC1Used_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48))&amp; CK48SourcePLLCLK)&amp; scale2 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLQ"     Name="PLLQoutputFreq_Value"     DefaultValue="16000000"  Type="double" Display="value/1000000" Unit="MHz"/>
	
    <!--PLLP output-->
    <RefParameter Visible="false" Comment="PLLP"     Name="PLLPoutputFreq_Value"  Min="2000000" Max="64000000"    DefaultValue="4571429"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(((SAI1SourcePLLP&amp;(SAI1Used_ForRCC))) |(ADCSourcePLL &amp; (USE_ADC1|USE_ADC2|USE_ADC3)))&amp; scale1 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLP"     Name="PLLPoutputFreq_Value"  Min="2000000" Max="26000000"    DefaultValue="4571429"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(((SAI1SourcePLLP&amp;(SAI1Used_ForRCC))) |(ADCSourcePLL &amp; (USE_ADC1|USE_ADC2|USE_ADC3)))&amp; scale2 " Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLP"     Name="PLLPoutputFreq_Value"     DefaultValue="4571429"   Type="double" Display="value/1000000" Unit="MHz"/>
   
    <!--Divisor constraint-->
    <!--VCOInput output ==> PLLM frequency range -->
    <RefParameter Visible="false" Comment="VCOInput"     Name="VCOInputFreq_Value" Min="2660000" Max="16000000"     DefaultValue="4000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(PLLUsed=1|PLLSAI1Used=1) &amp; (STM32WBx0_Value_Line | STM32WB30CEUx | STM32WB35CCUx | STM32WB35CEUx)" Diagnostic=""/>
    </RefParameter>
    <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|PLLSAI1Used=1) " Diagnostic=" PLLUsed=1|PLLSAI1Used=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="96000000" Max="344000000"    DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="PLLUsed=1 &amp; scale1" Diagnostic="PLLUsed=1 "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="VCOOutput"     Name="VCOOutputFreq_Value"  Min="64000000" Max="128000000"    DefaultValue="32000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="PLLUsed=1 &amp; scale2" Diagnostic="PLLUsed=1 "/>
    </RefParameter>

    <RefParameter Visible="false" Comment="VCOOutput"     Name="VCOOutputFreq_Value"     DefaultValue="32000000"   Type="double" 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="(MCOSourcePLL | (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK))&amp; scale1" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLCLK"     Name="PLLRCLKFreq_Value"   Min="8000000" Max="26000000"    DefaultValue="16000000"   Type="double" Display="value/1000000" Unit="MHz">
        <Condition Expression="(MCOSourcePLL | (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK))&amp; scale2" Diagnostic=""/>
    </RefParameter>

    <RefParameter Visible="false" Comment="PLLCLK"     Name="PLLRCLKFreq_Value"     DefaultValue="16000000"   Type="double" Display="value/1000000" Unit="MHz"/>
	

	
	
    <!-- PLLSAI1UsedForCK48 used -->
    <RefParameter Visible="false" Comment="Main PLLSAI1 Is Used" DefaultValue="1" Name="PLLSAI1UsedForCK48" Min="1" Max="1" Type="integer">
        <Condition Expression="(CK48SourcePLLSAI1 &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLSAI1UsedForCK48" Min="0" Max="0" Type="integer"/>
	
    <!-- PLLSAI1UsedForSAI used -->
    <RefParameter Visible="false" Comment="Main PLLSAI1 Is Used" DefaultValue="1" Name="PLLSAI1UsedForSAI" Min="1" Max="1" Type="integer">
        <Condition Expression="((SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC)))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLSAI1UsedForSAI" Min="0" Max="0" Type="integer"/>
	
    <!-- PLLSAI1UsedFOrADC used -->
    <RefParameter Visible="false" Comment="Main PLLSAI1 Is Used" DefaultValue="1" Name="PLLSAI1UsedFOrADC" Min="1" Max="1" Type="integer">
        <Condition Expression="(ADCSourcePLLSAI1R &amp;(USE_ADC1|USE_ADC2|USE_ADC3))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLLSAI1 is Used" DefaultValue="0" Name="PLLSAI1UsedFOrADC" Min="0" Max="0" Type="integer"/>
    
    
    <!-- PLLSAI1UsedFOrADC used -->
    <RefParameter Visible="false" Comment="Main PLLIs Used" DefaultValue="1" Name="PLLUsedFOrADC" Min="1" Max="1" Type="integer">
        <Condition Expression="(ADCSourcePLL &amp;(USE_ADC1|USE_ADC2|USE_ADC3))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedFOrADC" Min="0" Max="0" Type="integer"/>

	
    <!-- PLLSAI1 used -->
    <RefParameter Visible="false" Comment="Main PLLSAI1 Is Used" DefaultValue="1" Name="PLLSAI1Used" Min="1" Max="1" Type="integer">
        <Condition Expression="((SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC)))|(ADCSourcePLLSAI1R &amp;(USE_ADC1|USE_ADC2|USE_ADC3))|(CK48SourcePLLSAI1 &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)|SDMMC1Used_ForRCC))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLSAI1Used" Min="0" Max="0" Type="integer"/>
	

	
    <!--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>
		
    <!-- 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>
    
    <RefParameter Visible="false" Name="LSIEnable" Comment="LSCO clock output" Type="list" DefaultValue="true">
        <Condition Expression="CodegenConfigPeriph=true" Diagnostic=""/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LSIEnable" Comment="LSCO clock output" 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">
        <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">
        <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>
    <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="EnableHSERFDevisor" Comment="RF and HSE Oscillator" Type="list" DefaultValue="true" IP="RF">
        <Condition Expression="( (HSEOscillator|HSEByPass))" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableHSERFDevisor" Comment="RF and HSE Oscillator" Type="list" DefaultValue="false" IP="RF">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="HSEHCLKRFEnable" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="true" IP="RF">
        <Condition Expression="(RFUsed_ForRCC &amp; (HSEOscillator|HSEByPass)) " Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="HSEHCLKRFEnable" Comment="RTC and HSE Oscillator" Type="list" DefaultValue="false" IP="RTC">
        <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>
   
   
	
    <!-- ADC Output Enable -->
    <RefParameter Visible="false" Name="ADCEnable" Comment="ADC in Asynchronous mode" Type="list" DefaultValue="true" IP="ADC1,ADC2,ADC3">
        <Condition Expression="((USE_ADC1&amp;ADC1UsedAsynchronousCLK_ForRCC)|(USE_ADC2&amp;ADC2UsedAsynchronousCLK_ForRCC)|(USE_ADC3&amp;ADC3UsedAsynchronousCLK_ForRCC))&amp; CodegenConfigPeriph=true" Diagnostic="ADC is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="ADCEnable" Comment="ADC in Asynchronous mode" 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>
	
	
	

	
    <!-- MCO Enable -->
    <RefParameter Visible="false" Name="MCOEnable" Comment="Master clock output" Type="list" DefaultValue="true" IP="Clock-out">
        <Condition Expression="((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|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>
	
   
    <!-- USB Enable -->
    <RefParameter Visible="false" Name="USBEnable" Comment="USB" Type="list" DefaultValue="true" IP="USB">
        <Condition Expression="(USBUsed_ForRCC|USB_OTG_HSEmbeddedPHYUsed_ForRCC) &amp; CodegenConfigPeriph=true" Diagnostic="USB is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="USBEnable" Comment="USB" Type="list" DefaultValue="false" IP="USB">
        <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>
	
    <!--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>
	

	
    <!--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>
    

    <RefParameter Visible="false" Name="SMPSEnable" Comment="SMPS" Type="list" DefaultValue="false">
        <Condition Expression="CodegenConfigPeriph=false" Diagnostic="SMPS is activated"/>
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>        
    <RefParameter Visible="false" Name="SMPSEnable" Comment="SMPS" Type="list" DefaultValue="true">
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="SMPSDivEnable" Comment="SMPS" Type="list" DefaultValue="false">
        <Condition Expression="CodegenConfigPeriph=false" Diagnostic="SMPS is activated"/>
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>        
    <RefParameter Visible="false" Name="SMPSDivEnable" Comment="SMPS" Type="list" DefaultValue="true">
        <PossibleValue Value="true" Comment="true"/>
    </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>
	
    <!--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>

    <!--I2C3 Enable-->
    <RefParameter Visible="false" Name="I2C3Enable" Comment="I2C3" Type="list" DefaultValue="true">
        <Condition Expression="I2C3Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2C3 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="I2C3Enable" Comment="I2C3" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>

    <!--SAI1 Enable-->
    <RefParameter Visible="false" Name="SAI1Enable" Comment="SAI1" Type="list" DefaultValue="true">
        <Condition Expression="(SAI1Used_ForRCC) &amp; CodegenConfigPeriph=true" Diagnostic="SAI1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="SAI1Enable" Comment="SAI1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    <!--SAI1 Enable-->
    <RefParameter Visible="false" Name="RFEnable" Comment="SAI1" Type="list" DefaultValue="true">
        <Condition Expression="RFUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="SAI1 is activated"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RFEnable" Comment="SAI1" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="false"/>
    </RefParameter>
    
    <RefParameter Visible="false" Name="EnableHCLKR" Comment="HCLKR" Type="list" DefaultValue="auto">
        <PossibleValue Value="auto" Comment="auto"/>
    </RefParameter>


    <!--SAI1_EXTCLK Enable-->
    <RefParameter Visible="false" Name="EnableExtClockForSAI1" Comment="EnableExtClockForSAI1" Type="list" DefaultValue="true" IP="Audio_ClockInSAI1">
        <Condition Expression="SAI1EXTCLK" Diagnostic="Disabled if RTC is used"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>
    <RefParameter Visible="false" Name="EnableExtClockForSAI1" Comment="EnableExtClockForSAI1" Type="list" DefaultValue="false" IP="Audio_ClockInSAI1">
        <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="((CodegenConfigPeriph=true) &amp; SMPSSourceHSE)|(RFWKPSourceHSE&amp;RFUsed_ForRCC)|HCLKRFSourceHSE|((RTCUsed_ForRCC|LCDUsed_ForRCC)&amp;!((RTCClockSelection=RCC_RTCCLKSOURCE_LSE)|(RTCClockSelection=RCC_RTCCLKSOURCE_LSI)))|((PLLSourceHSE) &amp; (PLLUsed=1|PLLSAI1Used=1))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSE)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSE)&amp;(((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|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_ON" Name="HSEState" Type="list">
        <Condition Diagnostic="HSE ON" Expression="HSEByPass|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>
    
    <RefParameter Visible="false" Comment="Hse is Internal osc" DefaultValue="true" Name="HSEOSCisInternal" Type="list">
        <Condition Diagnostic="Hse is Internal osc" Expression="STM32WB5MMGHx"/>
        <PossibleValue Comment="Hse is Internal osc" Value="true"/>
    </RefParameter>
    
    <RefParameter Visible="false" Comment="LSE is Internal osc" DefaultValue="true" Name="LSEOSCisInternal" Type="list">
        <Condition Diagnostic="LSE is Internal osc" Expression="STM32WB5MMGHx"/>
        <PossibleValue Comment="LSE is Internal osc" Value="true"/>
    </RefParameter>
	
    <!-- LSE state control -->
    <!-- LSE osillator type -->
    <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="(RNGUsed_ForRCC &amp; RNGCLKSOURCE_LSE)|MSIAutoCalibrationON|(RFUsed_ForRCC &amp; RFWKPSourceLSE)|CRSActivatedSourceLSE|(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)|(LPUART1SourceLSE &amp; LPUARTUsed_ForRCC)|(LPTIM1SOURCELSE &amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCELSE &amp; LPTIM2Used_ForRCC)|((RCC_MCO1Source=RCC_MCO1SOURCE_LSE)&amp; ((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|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 -->

	
    <!-- 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 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_LSI1" Name="OscillatorTypeLSI" Type="list">
	<Condition Diagnostic="WDOG is activated Or RTC source = LSI " Expression="LSIUsed=1 &amp; LSISourceLSI1"/>
        <PossibleValue Comment="LSI" Value="RCC_OSCILLATORTYPE_LSI1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type LSI" DefaultValue="RCC_OSCILLATORTYPE_LSI2" Name="OscillatorTypeLSI" Type="list">
	
        <PossibleValue Comment="LSI" Value="RCC_OSCILLATORTYPE_LSI2"/>
    </RefParameter>
	
    <!-- LSI used -->
    <RefParameter Visible="false" Comment="LSI used flag" DefaultValue="1" Name="LSIUsed" Type="integer" Min="1" Max="1">
        <Condition Expression="(RNGUsed_ForRCC &amp; RNGCLKSOURCE_LSI) | (MCOConfig &amp; (MCOSourceLSI))|(RFUsed_ForRCC &amp; RFWKPSourceLSI)|(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_LSI1)&amp;(((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|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="HSI 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="(HCLKRFSourceHSI )|(SAI1Used_ForRCC &amp; SAI1SourceHSI)|((CodegenConfigPeriph=true) &amp; SMPSSourceHSI)|(USART1SourceHSI&amp; USART1Used_ForRCC)|(LPUART1SourceHSI&amp; LPUARTUsed_ForRCC)|(LPTIM1SOURCEHSI&amp; LPTIM1Used_ForRCC)|(LPTIM2SOURCEHSI &amp; LPTIM2Used_ForRCC)|(I2C1SourceHSI&amp; I2C1Used_ForRCC)|(I2C3SourceHSI&amp; I2C3Used_ForRCC)|((PLLSourceHSI)&amp; (PLLUsed=1|PLLSAI1Used=1))|(SYSCLKSource=RCC_SYSCLKSOURCE_HSI)|((RCC_MCO1Source=RCC_MCO1SOURCE_HSI)&amp;((((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|MCOConfig))))" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI is Used" DefaultValue="0" Name="HSIUsed" Min="0" Type="integer"/>
    
    
    
    <RefParameter Visible="false" Comment="HSE Prediv" DefaultValue="1" Name="HSEPrediv2" Min="1" Type="integer">
        <Condition Expression="(((PLLSourceHSE)&amp; (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK)) | (SYSCLKSource=RCC_SYSCLKSOURCE_HSE)) &amp; (HSEPRES=2)" Diagnostic="HSE prescaler is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSE Prediv" DefaultValue="0" Name="HSEPrediv2" 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>
	
	
	
    <!-- HSI48 state control -->
    <!-- HSI48 osillator type -->	
    <RefParameter Visible="false" Comment="Clock Type HSI48" DefaultValue="" Name="OscillatorTypeHSI48" Type="list">
        <Condition Diagnostic="HSI48 Is OFF" Expression="HSI48Used=0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type HSI48" DefaultValue="RCC_OSCILLATORTYPE_HSI48" Name="OscillatorTypeHSI48" Type="list">
        <PossibleValue Comment="HSI48" Value="RCC_OSCILLATORTYPE_HSI48"/>
    </RefParameter>
	
    <!-- HSI48 used -->
    <RefParameter Visible="false" Comment="HSI48 Is Used" DefaultValue="1" Name="HSI48Used" Min="1" Type="integer">
        <Condition Expression="(CK48SourceHSI48 &amp; (USBUsed_ForRCC | (RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)))|((RCC_MCO1Source=RCC_MCO1SOURCE_HSI48)&amp;((((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|MCOConfig))))" Diagnostic="LSE is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="HSI48 is Used" DefaultValue="0" Name="HSI48Used" Min="0" Type="integer"/>
	
    <!-- HSI48 state used codGen-->
    <RefParameter Visible="false" Comment="Hsi48 State" DefaultValue="RCC_HSI48_OFF" Name="HSI48State" Type="list">
        <Condition Expression="HSI48Used=0" Diagnostic=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Hsi48 State" DefaultValue="RCC_HSI48_ON" Name="HSI48State" Type="list">
        <PossibleValue Comment="Hsi48 On" Value="RCC_HSI48_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="(SysSourcePLL)|((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; ((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|MCOConfig))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForSys" Min="0" Max="0" Type="integer"/>
	
    <!-- PLLUsedForSAI used -->
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForSAI" Min="1" Max="1" Type="integer">
        <Condition Expression="((SAI1SourcePLLP&amp;(SAI1Used_ForRCC)))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForSAI" Min="0" Max="0" Type="integer"/>
	
    <!-- PLLUsedForCK48 used -->
    <RefParameter Visible="false" Comment="MainPLL Is Used" DefaultValue="1" Name="PLLUsedForCK48" Min="1" Max="1" Type="integer">
        <Condition Expression="(CK48SourcePLLCLK &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)|SDMMC1Used_ForRCC))" Diagnostic=" "/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="Main PLL is Used" DefaultValue="0" Name="PLLUsedForCK48" 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="(ADCSourcePLL &amp; (USE_ADC1|USE_ADC2|USE_ADC3))|((SAI1SourcePLLP&amp;(SAI1Used_ForRCC)))|(SysSourcePLL)|((RCC_MCO1Source=RCC_MCO1SOURCE_PLLCLK)&amp; ((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|MCOConfig))|(CK48SourcePLLCLK &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)|SDMMC1Used_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>
    
    
    <!-- MSI state control -->
    <!-- MSI osillator type-->
    <RefParameter Visible="false" Comment="MSI Is Used" DefaultValue="1" Name="MSIUsedForSys" Min="1" Type="integer">
        <Condition Expression="((PLLSourceMSI)&amp; (SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK))|(SYSCLKSource=RCC_SYSCLKSOURCE_MSI)" Diagnostic="MSI is used if "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSI is Used" DefaultValue="0" Name="MSIUsedForSys" Min="0" Type="integer"/>
    <RefParameter Visible="false" Comment="Clock Type HSI" DefaultValue="" Name="OscillatorTypeMSI" Type="list">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; (MSIUsedForSys=0))" Diagnostic=""/>
        <PossibleValue Comment="" Value=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type MSI" DefaultValue="" Name="OscillatorTypeMSI" Type="list">
        <Condition Diagnostic="MSI Is OFF" Expression="MSIUsed=0"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Type MSI" DefaultValue="RCC_OSCILLATORTYPE_MSI" Name="OscillatorTypeMSI" Type="list">
        <PossibleValue Comment="MSI" Value="RCC_OSCILLATORTYPE_MSI"/>
    </RefParameter>
	
    <!-- MSI used -->
    <RefParameter Visible="false" Comment="MSI Is Used" DefaultValue="1" Name="MSIUsed" Min="1" Type="integer">
        <Condition Expression="((CodegenConfigPeriph=true) &amp; SMPSSourceMSI)|(SEM2RCC_MSI_REQUIRED_TIM16 &amp; TIM16 &amp; Semaphore_input_Channel1TIM16)|(CK48SourceMSI &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)))|(SYSCLKSource=RCC_SYSCLKSOURCE_MSI)|((RCC_MCO1Source=RCC_MCO1SOURCE_MSI)&amp; ((Semaphore_input_Channel1TIM16 &amp; TIM16 &amp; SEM2RCC_MCO_REQUIRED_TIM16)|MCOConfig))|(PLLSourceMSI &amp; (PLLUsed=1|PLLSAI1Used=1) )" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSI is Used" DefaultValue="0" Name="MSIUsed" Min="0" Type="integer"/>
	
    <!-- MSI state used to codgen -->
    <RefParameter Visible="false" Comment="Msi State" DefaultValue="RCC_MSI_ON" Name="MSIState" Type="list">
        <Condition Expression="MSIUsed=1" Diagnostic=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="MSI State" DefaultValue="RCC_MSI_OFF" Name="MSIState" Type="list">
    </RefParameter>
	
	
	
    <!--Clock Type-->
    <RefParameter Visible="false" Comment="Clock Type" DefaultValue="+ClockTypeHCLKs+|ClockTypeHCLK2+|ClockTypeHCLK+|ClockTypeSysClk+|ClockTypePCLK1+|ClockTypePCLK2" 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 AHB" DefaultValue="RCC_CLOCKTYPE_HCLK2" Name="ClockTypeHCLK2" Type="list">
        <PossibleValue Comment="RCC_CLOCKTYPE_HCLK2" Value="RCC_CLOCKTYPE_HCLK2" Semaphore="HCLK2toConfigure"/>
    </RefParameter>
 
    <RefParameter Visible="false" Comment="Clock Type AHB" DefaultValue="RCC_CLOCKTYPE_HCLK4" Name="ClockTypeHCLKs" Type="list">
        <PossibleValue Comment="RCC_CLOCKTYPE_HCLK4" Value="RCC_CLOCKTYPE_HCLK4" Semaphore="HCLKStoConfigure"/>
    </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>
  
    <RefParameter Visible="false" Comment="Clock Type HCLK2" DefaultValue="RCC_CLOCKTYPE_PCLK2" Name="ClockTypePCLK2" Type="list">
        <PossibleValue Comment="PCLK2" Value="RCC_CLOCKTYPE_PCLK2" Semaphore="PCLK2toConfigure"/>
    </RefParameter>
    <!--params for code generation-->
    <!--params for IP codgen-->
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="+PeriphClockSelection" Type="list">
        <Condition Expression="CodegenConfigPeriph=true" Diagnostic="clock used by RCC"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PeriphClockSelectionARG" DefaultValue="null" Type="list">
    </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_SMPSVar+|RCC_PERIPHCLK_RFWKPVar+|RCC_PERIPHCLK_RTCVar+|RCC_PERIPHCLK_USART1Var+|RCC_PERIPHCLK_LPUART1Var+|RCC_PERIPHCLK_LPTIM1Var+|RCC_PERIPHCLK_LPTIM2Var+|RCC_PERIPHCLK_SAI1Var+|RCC_PERIPHCLK_I2C1Var+|RCC_PERIPHCLK_I2C3Var+|RCC_PERIPHCLK_CLK48SELVar+|RCC_PERIPHCLK_USBVar+|RCC_PERIPHCLK_RNGVar+|RCC_PERIPHCLK_ADCVar" Type="list"/>
   

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SMPSVar" Comment="RCC_PERIPHCLK_SMPSVar" Type="list" DefaultValue="RCC_PERIPHCLK_SMPS">
        <Condition Diagnostic="" Expression="!STM32WBx0_Value_Line"/> 
        <PossibleValue Comment="RCC_PERIPHCLK_SMPS" Value="RCC_PERIPHCLK_SMPS"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SMPSVar" Comment="RCC_PERIPHCLK_SMPSVar" Type="list" DefaultValue=""/>
	
  

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RFWKPVar" Comment="RCC_PERIPHCLK_RFWKPVar" Type="list" DefaultValue="RCC_PERIPHCLK_RFWAKEUP">
        <Condition Expression="RFUsed_ForRCC" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="RCC_PERIPHCLK_RFWAKEUP" Value="RCC_PERIPHCLK_RFWAKEUP"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_RFWKPVar" Comment="RCC_PERIPHCLK_RFWKPVar" Type="list" DefaultValue=""/> 

    <RefParameter Visible="false" Name="RCC_PERIPHCLK_USBVar" Comment="RCC_PERIPHCLK_USBVar" Type="list" DefaultValue="RCC_PERIPHCLK_USB">
        <Condition Expression="(USBUsed_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_CLK48SELVar" Comment="RCC_PERIPHCLK_CLK48SELVar" Type="list" DefaultValue="RCC_PERIPHCLK_CLK48SEL">
        <Condition Expression="(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)" Diagnostic="RTC Activated"/>
        <PossibleValue Comment="" Value="RCC_PERIPHCLK_CLK48SEL"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_CLK48SELVar" Comment="RCC_PERIPHCLK_CLK48SELVar" 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|LCDUsed_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_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_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_SAI1Var" Comment="RCC_PERIPHCLK_SAI1Var" Type="list" DefaultValue="RCC_PERIPHCLK_SAI1">
        <Condition Expression="(SAI1Used_ForRCC)" Diagnostic="SAI1 Activated"/>
        <PossibleValue Comment="Periphclk SAI1" Value="RCC_PERIPHCLK_SAI1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_SAI1Var" Comment="RCC_PERIPHCLK_SAI1Var" 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_I2C3Var" Comment="RCC_PERIPHCLK_I2C3Var" Type="list" DefaultValue="RCC_PERIPHCLK_I2C3">
        <Condition Expression="I2C3Used_ForRCC" Diagnostic="I2C3 Activated"/>
        <PossibleValue Comment="Periphclk I2C3" Value="RCC_PERIPHCLK_I2C3"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_I2C3Var" Comment="RCC_PERIPHCLK_I2C3Var" Type="list" DefaultValue=""/> 
	
	
	
    <RefParameter Visible="false" Name="RCC_PERIPHCLK_ADCVar" Comment="RCC_PERIPHCLK_ADCVar" Type="list" DefaultValue="RCC_PERIPHCLK_ADC">
        <Condition Expression="USE_ADC1|USE_ADC2|USE_ADC3" 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="RFWKPClockSelectionARG" Comment="RFWKPClockSelectionARG" Type="list" DefaultValue="+RFWKPClockSelection">
        <Condition Expression="RFUsed_ForRCC  &amp; CodegenConfigPeriph=true" Diagnostic="RTC Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RFWKPClockSelectionARG" Comment="RFWKPClockSelectionARG" Type="list" DefaultValue="null"/>
    
    <RefParameter Visible="false" Name="SMPSDivARG" Comment="SMPSDivARG" Type="list" DefaultValue="null">
        <Condition Expression="CodegenConfigPeriph=false | SMPSDiv=null | STM32WBx0_Value_Line" Diagnostic=""/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="SMPSDivARG" Comment="SMPSDivARG" Type="list" DefaultValue="+SMPSDiv">
        <Condition Expression="CodegenConfigPeriph=true" Diagnostic=""/>
    </RefParameter>
    

    <RefParameter Visible="false" Name="SMPSClockSelectionARG" Comment="SMPSClockSelectionARG" Type="list" DefaultValue="null">
        <Condition Expression="CodegenConfigPeriph=false | STM32WBx0_Value_Line" Diagnostic=" "/>
    </RefParameter>

    <RefParameter Visible="false" Name="SMPSClockSelectionARG" Comment="SMPSClockSelectionARG" Type="list" DefaultValue="+SMPSCLockSelection"/>
	
	
    <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="USART1lockSelectionARG" Comment="USART1lockSelectionARG" Type="list" DefaultValue="+USART1CLockSelection">
        <Condition Expression="USART1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="USART1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="USART1lockSelectionARG" Comment="USART1lockSelectionARG" Type="list" DefaultValue="null"/>
	
	

	
	
    <RefParameter Visible="false" Name="LPUART1lockSelectionARG" Comment="LPUART1lockSelectionARG" Type="list" DefaultValue="+LPUART1CLockSelection">
        <Condition Expression="LPUARTUsed_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPUART1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LPUART1lockSelectionARG" Comment="LPUART1lockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
	
	
	
    <RefParameter Visible="false" Name="LPTIM1lockSelectionARG" Comment="LPTIM1lockSelectionARG" Type="list" DefaultValue="+LPTIM1CLockSelection">
        <Condition Expression="LPTIM1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LPTIM1lockSelectionARG" Comment="LPTIM1lockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="LPTIM2lockSelectionARG" Comment="LPTIM2lockSelectionARG" Type="list" DefaultValue="+LPTIM2CLockSelection">
        <Condition Expression="LPTIM2Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="LPTIM2 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="LPTIM2lockSelectionARG" Comment="LPTIM2lockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Name="SAI1lockSelectionARG" Comment="SAI1lockSelectionARG" Type="list" DefaultValue="+SAI1CLockSelection">
        <Condition Expression="(SAI1Used_ForRCC) &amp; CodegenConfigPeriph=true" Diagnostic="SAI1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="SAI1lockSelectionARG" Comment="SAI1lockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
	
	
    <RefParameter Visible="false" Name="I2C1lockSelectionARG" Comment="I2C1lockSelectionARG" Type="list" DefaultValue="+I2C1CLockSelection">
        <Condition Expression="I2C1Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2c1 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2C1lockSelectionARG" Comment="I2C1lockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="I2C3lockSelectionARG" Comment="I2C3lockSelectionARG" Type="list" DefaultValue="+I2C3CLockSelection">
        <Condition Expression="I2C3Used_ForRCC &amp; CodegenConfigPeriph=true" Diagnostic="I2c3 Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="I2C3lockSelectionARG" Comment="I2C3lockSelectionARG" Type="list" DefaultValue="null"/>
	
	
	
	
	
    <RefParameter Visible="false" Name="USBClockSelectionARG" Comment="USBClockSelectionARG" Type="list" DefaultValue="+CK48CLockSelection">
        <Condition Expression="(USBUsed_ForRCC) &amp; CodegenConfigPeriph=true" Diagnostic="LCD Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="USBClockSelectionARG" Comment="USBClockSelectionARG" Type="list" DefaultValue="null"/>
	
	
    <RefParameter Visible="false" Name="RNGClockSelectionARG" Comment="RNGClockSelectionARG" Type="list" DefaultValue="RCC_RNGCLKSOURCE_PLL">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true &amp; RNGCLKSOURCE_CLK48 &amp; CK48SourcePLLCLK" Diagnostic="LCD Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RNGClockSelectionARG" Comment="RNGClockSelectionARG" Type="list" DefaultValue="RCC_RNGCLKSOURCE_MSI">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true &amp; RNGCLKSOURCE_CLK48 &amp; CK48SourceMSI" Diagnostic="LCD Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="RNGClockSelectionARG" Comment="RNGClockSelectionARG" Type="list" DefaultValue="RCC_RNGCLKSOURCE_HSI48">
        <Condition Expression="RNGUsed_ForRCC &amp; CodegenConfigPeriph=true &amp; RNGCLKSOURCE_CLK48 &amp; CK48SourceHSI48" Diagnostic="LCD Activated"/>
    </RefParameter>
    <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="(USE_ADC1|USE_ADC2|USE_ADC3) &amp; CodegenConfigPeriph=true" Diagnostic="ADC Activated"/>
    </RefParameter>
    <RefParameter Visible="false" Name="ADCClockSelectionARG" Comment="ADCClockSelectionARG" Type="list" DefaultValue="null"/>
	
    <RefParameter Visible="false" Comment="LSCOSource1ARG" DefaultValue="+LSCOSource1" Name="LSCOSource1ARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="LSCOConfig &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="LSCOSource1ARG" DefaultValue="null" Name="LSCOSource1ARG" Type="list"/>
	
    <!--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="Lse StateARG" DefaultValue="+LSEState" Name="LSEStateARG" Type="list">
        <Condition Diagnostic="LSE used" Expression="LSEUsed=1  &amp; CodegenConfigPeriph=true"/>
    </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 HSI48-->
    <RefParameter Visible="false" Comment="HSI48 StateARG" DefaultValue="+HSI48State" Name="HSI48StateARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="HSI48Used=1 &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="HSI48 StateARG" DefaultValue="null" Name="HSI48StateARG" Type="list"/>
	
	
	
	
    <!--params for LSI-->
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="+LSIState" Name="LSIStateARG" Type="list">
        <Condition Diagnostic="LSI used" Expression="LSIUsed=1 &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="LSI StateARG" DefaultValue="null" Name="LSIStateARG" Type="list"/>
	
        
    <!--params for MSI-->
    <RefParameter Visible="false" Comment="MSIStateARG" DefaultValue="null" Name="MSIStateARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="((CodegenConfigPeriph=false) &amp; MSIUsedForSys=0)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSI StateARG" DefaultValue="+MSIState" Name="MSIStateARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="MSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="MSI StateARG" DefaultValue="null" Name="MSIStateARG" 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"/>
    </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"/>
    <!--PLLSAI1-->
    <RefParameter Visible="false" Comment="PLLSAI1NARG" DefaultValue="+PLLSAI1N" Name="PLLSAI1NARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLSAI1Used=1  &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLSAI1NARG" DefaultValue="null" Name="PLLSAI1NARG" Type="list"/>
	
    <RefParameter Visible="false" Comment="PLLSAI1PARG" DefaultValue="+PLLSAI1P" Name="PLLSAI1PARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLSAI1Used=1  &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLSAI1PARG" DefaultValue="null" Name="PLLSAI1PARG" Type="list"/>
	
    <RefParameter Visible="false" Comment="PLLSAI1QARG" DefaultValue="+PLLSAI1Q" Name="PLLSAI1QARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLSAI1Used=1  &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLSAI1QARG" DefaultValue="null" Name="PLLSAI1QARG" Type="list"/>
	
    <RefParameter Visible="false" Comment="PLLSAI1RARG" DefaultValue="+PLLSAI1R" Name="PLLSAI1RARG" Type="list">
        <Condition Diagnostic="PLL used" Expression="PLLSAI1Used=1  &amp; CodegenConfigPeriph=true"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="PLLSAI1RARG" DefaultValue="null" Name="PLLSAI1RARG" Type="list"/>
	
	

    <RefParameter Comment="HSI Calibration Value" DefaultValue="16" Max="31" Min="0" Name="HSICalibrationValue" Group="RCC Parameters" Type="integer">
        <Condition Diagnostic="HSI used" Expression="HSIUsed=1"/>
    </RefParameter>
    <RefParameter Comment="HSI Calibration Value" DefaultValue="16" Max="31" Min="0" Name="HSICalibrationValue" Group="RCC Parameters" Type="integer"/>
    
   
    <RefParameter Comment="MSI Calibration Value" DefaultValue="0" Max="255" Min="0" Name="MSICalibrationValue" Type="integer" Group="RCC Parameters">
        <Condition Diagnostic="HSI used" Expression="MSIUsed=1"/>
    </RefParameter>
    <RefParameter Comment="MSI Calibration Value" DefaultValue="0" Max="255" Min="0" Name="MSICalibrationValue" Type="integer" Group="RCC Parameters"/>

	
	
            
        
    
	
    <RefParameter Visible="false" Comment="Clock TypeARG" DefaultValue="+ClockType" Name="ClockTypeARG" Type="list">
        <Condition Expression="SysClkToConfigure|HCLKtoConfigure|PCLK1toConfigure|PCLK2toConfigure|FLASH_LATENCY1|HCLKStoConfigure|HCLK2toConfigure" 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="null" Name="APB1CLKDividerARG" Type="list"/>
    <RefParameter Visible="false" Comment="APB2CLKDividerARG" DefaultValue="+APB2CLKDivider" Name="APB2CLKDividerARG" Type="list">
        <Condition Expression="PCLK2toConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="APB2CLKDividerARG" DefaultValue="null" Name="APB2CLKDividerARG" Type="list"/>   

    <RefParameter Visible="false" Comment="AHBCLKSCLKDividerARG" DefaultValue="+AHB3CLKDivider" Name="AHBCLKSCLKDividerARG" Type="list">
        <Condition Expression="HCLKStoConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="AHBCLKSCLKDividerARG" DefaultValue="null" Name="AHBCLKSCLKDividerARG" Type="list"/>
	
    <RefParameter Visible="false" Comment="AHBCLK2CLKDividerARG" DefaultValue="+AHB2CLKDivider" Name="AHBCLK2CLKDividerARG" Type="list">
        <Condition Expression="HCLK2toConfigure" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="AHBCLK2CLKDividerARG" DefaultValue="null" Name="AHBCLK2CLKDividerARG" Type="list"/>
	
	
    <!--MCO param used to codGen -->
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO" DefaultValue="RCC_MCO1" Type="list">
        <Condition Diagnostic="" Expression="(MCOConfig) &amp; PA8_RCC_MCO"/>
        <PossibleValue Comment="Clock Output" Value="RCC_MCO1"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO" DefaultValue="RCC_MCO2" Type="list">
        <Condition Diagnostic="" Expression="(MCOConfig) &amp; PB6_RCC_MCO"/>
        <PossibleValue Comment="Clock Output" Value="RCC_MCO2"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="Clock Output" Name="RCC_MCO" DefaultValue="RCC_MCO3" Type="list">
        <Condition Diagnostic="" Expression="(MCOConfig) &amp; PA15_RCC_MCO"/>
        <PossibleValue Comment="Clock Output" Value="RCC_MCO3"/>
    </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=16"/>
    </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"/>
	

 

    <RefParameter Visible="false" Comment="MSICalibrationValueARG" DefaultValue="null" Name="MSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="((CodegenConfigPeriph=false) &amp; (MSIUsedForSys=0))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSICalibrationValueARG" DefaultValue="RCC_MSICALIBRATION_DEFAULT" Name="MSICalibrationValueARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="(MSICalibrationValue=0) &amp; (MSIUsed=1)"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSICalibrationValueARG" DefaultValue="+MSICalibrationValue" Name="MSICalibrationValueARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="MSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="MSICalibrationValueARG" DefaultValue="null" Name="MSICalibrationValueARG" Type="list"/>
	
	
    <!--params for MSI clock range-->
    <RefParameter Visible="false" Comment="MSIClockRangeARG" DefaultValue="null" Name="MSIClockRangeARG" Type="list">
        <Condition Diagnostic="HSI used" Expression="((CodegenConfigPeriph=false) &amp; (MSIUsedForSys=0))"/>
    </RefParameter>
    <RefParameter Visible="false" Comment="MSIClockRangeARG" DefaultValue="+MSIClockRange" Name="MSIClockRangeARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="MSIUsed=1"/>
    </RefParameter>
	
    <RefParameter Visible="false" Comment="MSIClockRangeARG" DefaultValue="null" Name="MSIClockRangeARG" Type="list"/>
    
    
    
    <RefParameter Visible="false" Comment="RCC_MCO1SourceARG" DefaultValue="RCC_MCO1SOURCE_LSI2" Name="RCC_MCO1SourceARG" Type="list">
        <Condition Diagnostic="MSI used" Expression="LSISourceLSI2 &amp; MCOSourceLSI &amp; (MCOConfig) &amp; CodegenConfigPeriph=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"/>
    
    
	
	
		
    
	
    <!--VDD range--> 
 
    <RefParameter Name="VDD_VALUE" Comment="VDD voltage (V)" DefaultValue="3.3" Max="3.6" Min="1.65" Type="double" Unit="V" Group="System Parameters"/>
	
	
	<!--Power Regulator Voltage Scale-->
    <RefParameter Visible="false" Comment="PWR_Regulator_Voltage_Scale" DefaultValue="" Name="PWR_Regulator_Voltage_Scale" Type="list">
        <Condition Expression="STM32WBx0_Value_Line" Diagnostic=""/>
    </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 &lt; 16000000)|(HCLKFreq_Value = 16000000)) &amp; !STM32WBx0_Value_Line"/>
        <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; 16000000) &amp; !STM32WBx0_Value_Line"/>
        <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) &amp; !STM32WBx0_Value_Line" Diagnostic=""/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PWR_Regulator_Voltage_ScaleARG" DefaultValue="null" Name="PWR_Regulator_Voltage_ScaleARG" Type="list"/>

    <!--         VCORE Range1   VCORE Range 2
    0 WS (1 CPU cycles)   ? 18             ? 6
    1 WS (2 CPU cycles)   ? 36             ? 12
    2 WS (3 CPU cycles)   ? 54             ? 16
    3 WS (4 CPU cycles)   ? 64             ? n

    -->
  
    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_0" Group="System Parameters">
        <Condition Diagnostic="" Expression="((scale1 | STM32WBx0_Value_Line) &amp; ((HCLK3Freq_Value &lt; 18000000)|(HCLK3Freq_Value= 18000000 )))|(scale2 &amp; ((HCLK3Freq_Value &lt; 6000000)|(HCLK3Freq_Value= 6000000 )))" />
        <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="((scale1 | STM32WBx0_Value_Line) &amp; ((HCLK3Freq_Value &lt; 36000000)|(HCLK3Freq_Value= 36000000 )))|(scale2 &amp; ((HCLK3Freq_Value &lt; 12000000)|(HCLK3Freq_Value= 12000000 )))" />
        <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="((scale1 | STM32WBx0_Value_Line) &amp; ((HCLK3Freq_Value &lt; 54000000)|(HCLK3Freq_Value= 54000000 ))) |(scale2 &amp; ((HCLK3Freq_Value &lt; 16000000)|(HCLK3Freq_Value= 16000000 )))" />
        <PossibleValue Value="FLASH_LATENCY_2" Comment="2 WS (3 CPU cycle)"/>
    </RefParameter>

    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_3" Group="System Parameters">
        <Condition Diagnostic="" Expression="((scale1 | STM32WBx0_Value_Line) &amp; ((HCLK3Freq_Value &lt; 64000000)|(HCLK3Freq_Value= 64000000 )))" />
        <PossibleValue Value="FLASH_LATENCY_3" Comment="3 WS (4 CPU cycle)"/>
    </RefParameter>

    <RefParameter Name="FLatency" Comment="Flash Latency(WS)" Type="uniqueElementList" DefaultValue="FLASH_LATENCY_3" Group="System Parameters">
   
        <PossibleValue Value="FLASH_LATENCY_3" Comment="3 WS (4 CPU cycle)"/>
     
    </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 Name="MSIAutoCalibration" Comment="MSI Auto Calibration" Type="list" DefaultValue="DISABLED" Group="RCC Parameters">
        <Condition Expression="LSEState=RCC_LSE_OFF" Diagnostic=""/>
        <PossibleValue Value="DISABLED" Comment="Disabled"/>
        <PossibleValue Value="ENABLED" Comment="Enabled" Semaphore="MSIAutoCalibrationON" Condition="LSEState=RCC_LSE_OFF" Diagnostic="Could be enabled only if LSE mode is activated in pinout Tab" Action="disable"/>
    </RefParameter>
    <RefParameter Name="MSIAutoCalibration" Comment="MSI Auto Calibration" Type="list" DefaultValue="ENABLED" Group="RCC Parameters">
        <Condition Expression="CK48SourceMSI|(USBUsed_ForRCC&amp;CK48SourcePLLCLK&amp;PLLSourceMSI)|(USBUsed_ForRCC&amp;CK48SourcePLLSAI1&amp;PLLSourceMSI)" Diagnostic=""/>
        <PossibleValue Value="ENABLED" Comment="Enabled" Semaphore="MSIAutoCalibrationON"/>
    </RefParameter>
    <RefParameter Name="MSIAutoCalibration" Comment="MSI Auto Calibration" Type="list" DefaultValue="DISABLED" Group="RCC Parameters">
        <PossibleValue Value="DISABLED" Comment="Disabled"/>
        <PossibleValue Value="ENABLED" Comment="Enabled" Semaphore="MSIAutoCalibrationON"/>
    </RefParameter>   
    
    <RefParameter Name="MSIAutoCalibrationArg" Comment="MSI Auto Calibration arg" Type="list" DefaultValue="true" Group="RCC Parameters" Visible="false">
        <Condition Expression="MSIAutoCalibrationON" Diagnostic=""/>
        <PossibleValue Value="true" Comment="Enabled"/>
    </RefParameter>  
    <RefParameter Name="MSIAutoCalibrationArg" Comment="MSI Auto Calibration arg" Type="list" DefaultValue="null" Group="RCC Parameters" Visible="false">
      
    </RefParameter> 
  
	
  

    <RefParameter Name="MSIOscState" Comment="MSI State" Type="list" DefaultValue="ENABLED" Group="RCC Parameters">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; (MSIUsedForSys=0)) | ((CodegenConfigPeriph=true) &amp; (MSIUsed=0))" Diagnostic=""/>
        <PossibleValue Value="DISABLED" Comment="Disabled"/>
        <PossibleValue Value="ENABLED" Comment="Enabled"/>
    </RefParameter>
    <RefParameter Name="MSIOscState" Comment="MSI State" Type="list" DefaultValue="ENABLED" Group="RCC Parameters">
        <PossibleValue Value="ENABLED" Comment="Enabled"/>
    </RefParameter>
    
    <RefParameter Name="HSIOscState" Comment="HSI State" Type="list" DefaultValue="ENABLED" Group="RCC Parameters">
        <Condition Expression="((CodegenConfigPeriph=false) &amp; (HSIUsedForSys=0)) | ((CodegenConfigPeriph=true) &amp; (HSIUsed=0))" Diagnostic=""/>
        <PossibleValue Value="DISABLED" Comment="Disabled"/>
        <PossibleValue Value="ENABLED" Comment="Enabled"/>
    </RefParameter>
    <RefParameter Name="HSIOscState" Comment="HSI State" Type="list" DefaultValue="ENABLED" Group="RCC Parameters">
        <PossibleValue Value="ENABLED" Comment="Enabled"/>
    </RefParameter>

	
    <RefParameter Visible="false" Comment="PLLSAI1 out clock " Name="PLLSAI1outclockARG" DefaultValue="+PLLSAI1outclock" Type="list">
        <Condition Expression="((SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC))| (ADCSourcePLLSAI1R &amp;(USE_ADC1|USE_ADC2|USE_ADC3))|(CK48SourcePLLSAI1 &amp; (USBUsed_ForRCC|(RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)|SDMMC1Used_ForRCC)))&amp; CodegenConfigPeriph=true" Diagnostic=" "/>
    </RefParameter>
    <RefParameter Visible="false" Comment="PLLSAI1 out clock" Name="PLLSAI1outclockARG" DefaultValue="null" Type="list"/>
     
    
    <RefParameter Visible="false" Comment="Periph Clock Selection" Name="PLLSAI1outclock" DefaultValue="+RCC_PLLSAI1_SAI1CLKVar+|RCC_PLLSAI1_48M2CLKVar+|RCC_PLLSAI1_ADC1CLKVar" Type="list"/>
   

    <RefParameter Visible="false" Name="RCC_PLLSAI1_SAI1CLKVar" Comment="RCC_PLLSAI1_SAI1CLKVar" Type="list" DefaultValue="RCC_PLLSAI1_SAI1CLK">
        <Condition Expression="(SAI1SourcePLLSAI1P&amp;(SAI1Used_ForRCC))" Diagnostic="SAI Activated"/>
        <PossibleValue Comment="Periphclk SAI" Value="RCC_PLLSAI1_SAI1CLK"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PLLSAI1_SAI1CLKVar" Comment="RCC_PLLSAI1_SAI1CLKVar" Type="list" DefaultValue=""/> 
	
    <RefParameter Visible="false" Name="RCC_PLLSAI1_48M2CLKVar" Comment="RCC_PLLSAI1_48M2CLKVar" Type="list" DefaultValue="RCC_PLLSAI1_USBCLK">
        <Condition Expression="(CK48SourcePLLSAI1 &amp; (USBUsed_ForRCC)) | (CK48SourcePLLSAI1 &amp; ((RNGUsed_ForRCC &amp; RNGCLKSOURCE_CLK48)))" Diagnostic="USB Activated"/>
        <PossibleValue Comment="Periphclk USB" Value="RCC_PLLSAI1_USBCLK"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PLLSAI1_48M2CLKVar" Comment="RCC_PLLSAI1_48M2CLKVar" Type="list" DefaultValue=""/>
	
	
	
    <RefParameter Visible="false" Name="RCC_PLLSAI1_ADC1CLKVar" Comment="RCC_PLLSAI1_ADC1CLKVar" Type="list" DefaultValue="RCC_PLLSAI1_ADCCLK">
        <Condition Expression="(ADCSourcePLLSAI1R &amp;(USE_ADC1|USE_ADC2|USE_ADC3))" Diagnostic="ADC Activated"/>
        <PossibleValue Comment="Periphclk ADC" Value="RCC_PLLSAI1_ADCCLK"/>
    </RefParameter>
	
    <RefParameter Visible="false" Name="RCC_PLLSAI1_ADC1CLKVar" Comment="RCC_PLLSAI1_ADC1CLKVar" Type="list" DefaultValue=""/> 
	
	
	
   
    
	       <!-- CRS Params -->   
	 <RefParameter Name="PERIPH_CRSAEG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   

    </RefParameter>
	<RefParameter Name="PERIPH_CRSAEG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="LL_APB1_GRP1_PERIPH_CRS" Group="CRS Parameters">
       
    </RefParameter>
    <RefParameter Visible="false" Name="EnableCRS" Comment="" Type="list" DefaultValue="ture">
        <Condition Diagnostic="" Expression="CRSActivatedSourceGPIO|CRSActivatedSourceLSE|CRSActivatedSourceUSB"/>
        <PossibleValue Value="true" Comment="true"/>
    </RefParameter>

    <RefParameter Visible="false" Name="EnableCRS" Comment="" Type="list" DefaultValue="false">
        <PossibleValue Value="false" Comment="Disabled"/>
    </RefParameter>
    
	
    <RefParameter Name="Prescaler"  Visible="false" Comment="CRS Synchro Divider" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>    

    <RefParameter Name="Prescaler" Comment="CRS Synchro Divider" Type="list" DefaultValue="RCC_CRS_SYNC_DIV1" Group="CRS Parameters">
        <PossibleValue Comment="1" Semaphore="RccCrsSyncDiv1" Value="RCC_CRS_SYNC_DIV1"/>
        <PossibleValue Comment="2" Semaphore="RccCrsSyncDiv2" Value="RCC_CRS_SYNC_DIV2"/>
        <PossibleValue Comment="4" Semaphore="RccCrsSyncDiv4" Value="RCC_CRS_SYNC_DIV4"/>
        <PossibleValue Comment="8" Semaphore="RccCrsSyncDiv8" Value="RCC_CRS_SYNC_DIV8"/>
        <PossibleValue Comment="16" Semaphore="RccCrsSyncDiv16" Value="RCC_CRS_SYNC_DIV16"/>
        <PossibleValue Comment="32" Semaphore="RccCrsSyncDiv32" Value="RCC_CRS_SYNC_DIV32"/>
        <PossibleValue Comment="64" Semaphore="RccCrsSyncDiv64" Value="RCC_CRS_SYNC_DIV64"/>
        <PossibleValue Comment="128" Semaphore="RccCrsSyncDiv128" Value="RCC_CRS_SYNC_DIV128"/>
    </RefParameter>

    <RefParameter Name="Source" Visible="false" Comment="Synchro" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>    
    <RefParameter Name="Source" Visible="false" Comment="CRS Synchro Source" Type="list" DefaultValue="CRSActivatedSourceGPIO" Group="CRS Parameters">
        <Condition Expression="CRSActivatedSourceGPIO" Diagnostic=""/>   
        <PossibleValue Value="RCC_CRS_SYNC_SOURCE_GPIO"  Comment="GPIO"/>
    </RefParameter>
    <RefParameter Name="Source" Visible="false" Comment="CRS Synchro Source" Type="list" DefaultValue="RCC_CRS_SYNC_SOURCE_LSE" Group="CRS Parameters">
        <Condition Expression="CRSActivatedSourceLSE" Diagnostic=""/>          
        <PossibleValue Value="RCC_CRS_SYNC_SOURCE_LSE" Comment="LSE"/>
    </RefParameter>
    <RefParameter Name="Source"  Visible="false" Comment="CRS Synchro Source" Type="list" DefaultValue="RCC_CRS_SYNC_SOURCE_USB" Group="CRS Parameters">
        <Condition Expression="CRSActivatedSourceUSB" Diagnostic=""/>   
        <PossibleValue Value="RCC_CRS_SYNC_SOURCE_USB" Comment="USB" />
    </RefParameter>
    <RefParameter Name="Source" Visible="false"  Comment="CRS Synchro Source" Type="list" DefaultValue="RCC_CRS_SYNC_SOURCE_USB" Group="CRS Parameters">
        <PossibleValue Value="RCC_CRS_SYNC_SOURCE_USB" Comment="USB" />
    </RefParameter>
    
    <RefParameter Name="Polarity"  Visible= "false" Comment="CRS Synchro Polarity" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>    
    <RefParameter Name="Polarity" Comment="CRS Synchro Polarity" Type="list" DefaultValue="RCC_CRS_SYNC_POLARITY_RISING" Group="CRS Parameters">
        <PossibleValue Value="RCC_CRS_SYNC_POLARITY_RISING" Comment="Active on rising edge"/>
        <PossibleValue Value="RCC_CRS_SYNC_POLARITY_FALLING" Comment="Active on falling edge"/>
    </RefParameter>
   
    <RefParameter Name="ReloadValueType" Visible="false" Comment="CRS Synchro Reload Value Type" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>  
    <RefParameter Name="ReloadValueType" Comment="CRS Synchro Reload Value Type" Type="list" DefaultValue="automatic" Group="CRS Parameters">
        <PossibleValue Value="UserValue" Comment="User defined" Semaphore="UserDefinedReload"/>
        <PossibleValue Value="automatic" Comment="Automatic" Semaphore="AutomaticRelaod" />
    </RefParameter>
	    
    
	
    <RefParameter Name="ReloadValue" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>
      
    
    <RefParameter Name="ReloadValue" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="__HAL_RCC_CRS_RELOADVALUE_CALCULATE(48000000," Group="CRS Parameters">
        <Condition Expression="AutomaticRelaod" Diagnostic=""/>   
        <PossibleValue Value="__HAL_RCC_CRS_RELOADVALUE_CALCULATE(48000000," Comment="__HAL_RCC_CRS_RELOADVALUE_CALCULATE(48000000,"/>
    </RefParameter>
    <RefParameter Name="ReloadValue"  Comment="CRS Synchro Reload Value" Type="integer" DefaultValue="0" Min="0" Max="65535" Group="CRS Parameters">
        <Condition Expression="UserDefinedReload &amp; CRSActivatedSourceGPIO " Diagnostic=""/>   
    </RefParameter>
    <RefParameter Name="ReloadValue"  Comment="CRS Synchro Reload Value" Type="integer" DefaultValue="1463" Min="0" Max="65535" Group="CRS Parameters">
        <Condition Expression="UserDefinedReload &amp; CRSActivatedSourceLSE " Diagnostic=""/>   
    </RefParameter>
    <RefParameter Name="ReloadValue"  Comment="CRS Synchro Reload Value" Type="integer" DefaultValue="47999" Min="0" Max="65535" Group="CRS Parameters">
        <Condition Expression="UserDefinedReload &amp; CRSActivatedSourceUSB " Diagnostic=""/>   
    </RefParameter>
    <RefParameter Name="ReloadValue"  Comment="CRS Synchro Reload Value" Type="integer" DefaultValue="null" Min="0" Max="65535" Group="CRS Parameters"/>


	<RefParameter Name="ReloadValueARG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   

    </RefParameter>
	
    
    <RefParameter Name="ReloadValueARG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="+ReloadValue+Fsync+)" Group="CRS Parameters">
        <Condition Expression="AutomaticRelaod" Diagnostic=""/>   
    </RefParameter>
    <RefParameter Name="ReloadValueARG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="+ReloadValue" Group="CRS Parameters">
        <Condition Expression="DefaultReload|UserDefinedReload" Diagnostic=""/>   
        
    </RefParameter>  
    <RefParameter Name="ReloadValueARG" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters"/>
    
    <RefParameter Name="ReloadValueLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>
      
        <RefParameter Name="ReloadValueLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="__LL_CRS_CALC_CALCULATE_RELOADVALUE(48000000," Group="CRS Parameters">
        <Condition Expression="AutomaticRelaod" Diagnostic=""/>   
        <PossibleValue Value="__LL_CRS_CALC_CALCULATE_RELOADVALUE(48000000," Comment="__LL_CRS_CALC_CALCULATE_RELOADVALUE(48000000,"/>
    </RefParameter>

    <RefParameter Name="ReloadValueLL"  Comment="CRS Synchro Reload Value" Type="integer" DefaultValue="null" Min="0" Max="65535" Group="CRS Parameters"/>
    
    <RefParameter Name="ReloadValueARGLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   

    </RefParameter>
    
    <RefParameter Name="ReloadValueARGLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="+ReloadValueLL+Fsync+)" Group="CRS Parameters">
        <Condition Expression="AutomaticRelaod &amp; (CRSActivatedSourceGPIO|!CRSActivatedSourceLSE | !CRSActivatedSourceUSB)" Diagnostic=""/>   
    </RefParameter>
	    <RefParameter Name="ReloadValueARGLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="+ReloadValue" Group="CRS Parameters">
        <Condition Expression="DefaultReload|UserDefinedReload" Diagnostic=""/>   
        
    </RefParameter>  
    <RefParameter Name="ReloadValueARGLL" Visible="false" Comment="CRS Synchro Reload Value" Type="list" DefaultValue="null" Group="CRS Parameters"/>

    <RefParameter Name="Fsync" Visible="false" Comment="CRS Synchro frequency (Hz)" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>     
    <RefParameter Name="Fsync" Comment="CRS Synchro frequency (Hz)" Type="integer" DefaultValue="1" Min="1" Max="48000000"  Group="CRS Parameters">
        <Condition Expression="CRSActivatedSourceGPIO" Diagnostic=""/>   
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE" Group="CRS Parameters" Max="=LSE_VALUE" Min="=LSE_VALUE" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv1"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/2" Group="CRS Parameters" Max="=LSE_VALUE/2" Min="=LSE_VALUE/2" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv2"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/4" Group="CRS Parameters" Max="=LSE_VALUE/4" Min="=LSE_VALUE/4" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv4"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/8" Group="CRS Parameters" Max="=LSE_VALUE/8" Min="=LSE_VALUE/8" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv8"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/16" Group="CRS Parameters" Max="=LSE_VALUE/16" Min="=LSE_VALUE/16" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv16"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/32" Group="CRS Parameters" Max="=LSE_VALUE/32" Min="=LSE_VALUE/32" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv32"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/64" Group="CRS Parameters" Max="=LSE_VALUE/64" Min="=LSE_VALUE/64" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv64"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=LSE_VALUE/128" Group="CRS Parameters" Max="=LSE_VALUE/128" Min="=LSE_VALUE/128" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the LSE value In crystal Mode divided by the CRS Synchro Divider" Expression="CRSActivatedSourceLSE &amp; RccCrsSyncDiv128"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="1000" Group="CRS Parameters" Max="1000" Min="1000" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv1"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/2" Group="CRS Parameters" Max="=1000/2" Min="=1000/2" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv2"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/4" Group="CRS Parameters" Max="=1000/4" Min="=1000/4" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv4"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/8" Group="CRS Parameters" Max="=1000/8" Min="=1000/8" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv8"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/16" Group="CRS Parameters" Max="=1000/16" Min="=1000/16" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv16"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/32" Group="CRS Parameters" Max="=1000/32" Min="=1000/32" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv32"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/64" Group="CRS Parameters" Max="=1000/64" Min="=1000/64" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv64"/>
    </RefParameter>
    <RefParameter Comment="CRS Synchro frequency (Hz)" DefaultValue="=1000/128" Group="CRS Parameters" Max="=1000/128" Min="=1000/128" Name="Fsync" Type="uniqueElementList">
        <Condition Diagnostic="This value corresponds to the Default value (1000) divided by the CRS Synchro Divider" Expression="CRSActivatedSourceUSB &amp; RccCrsSyncDiv128"/>
    </RefParameter>
    <RefParameter Name="Fsync"  Comment="CRS Synchro frequency (Hz)" Type="integer" DefaultValue="0" Group="CRS Parameters"/>
    <RefParameter Name="ErrorLimitValue" Visible="false" Comment="Error limit Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>  
    <RefParameter Name="ErrorLimitValue"  Comment="Error limit Value" Type="integer" DefaultValue="34" Min="0" Max="255" Group="CRS Parameters"/>
    <RefParameter Name="HSI48CalibrationValue" Visible="false" Comment="HSI48 Calibration Value" Type="list" DefaultValue="null" Group="CRS Parameters">
        <Condition Expression="!CRSActivatedSourceGPIO &amp; !CRSActivatedSourceLSE &amp; !CRSActivatedSourceUSB" Diagnostic=""/>   
    </RefParameter>  
    <RefParameter Name="HSI48CalibrationValue"   Comment="HSI48 Calibration Value" Type="integer" DefaultValue="32" Min="0" Max="63" Group="CRS Parameters"/>

    <RefParameter Visible="false" Name="PLLMARGForMacro" Comment="PLLMARGForMacro" Type="list" DefaultValue="+PLLM">
        <Condition Diagnostic="PLLSAIP not used" Expression=" ((PLLSAI1Used=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="PLLSAIP not used" Expression=" ((PLLSAI1Used=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>

	
    <RefMode Name="ClockTree">
        <ConfigForMode>RCC_PLL_PLLM_CONFIG</ConfigForMode>
        <ConfigForMode>RCC_PLL_PLLSOURCE_CONFIG</ConfigForMode>
	<ConfigForMode>RCC_LSEDRIVE_CONFIG</ConfigForMode>
        <ConfigForMode>RCC_ConfigVoltageScaling</ConfigForMode> 
        <ConfigForMode>RCC_OSCConfig</ConfigForMode>        
        <ConfigForMode>RCC_ClockConfig</ConfigForMode>
        <ConfigForMode>RCC_HSE_DIV2_ENABLE</ConfigForMode>
        <ConfigForMode>RCC_PClockConfig</ConfigForMode>
        <ConfigForMode>RCC_MCO1Config</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>EnableMSIPLLMode</ConfigForMode>
        <ConfigForMode>CRS_CLK_ENABLE</ConfigForMode> 
        <ConfigForMode>RCC_CRSConfig</ConfigForMode>    

        <Parameter Name="OscillatorType"/>
        <Parameter Name="APB1TimCLKDivider"/>
        <Parameter Name="APB2TimCLKDivider"/>
        <Parameter Name="PLLN"/>
        <Parameter Name="Cortex_Div"/>
        <Parameter Name="RCC_RTC_Clock_Source_FROM_HSE"/>
        <Parameter Name="PLLM"/>
        <Parameter Name="PLLR"/>
        <Parameter Name="PLLP"/>
        <Parameter Name="PLLQ"/>
 
        <Parameter Name="PLLSAI1R"/>
        <Parameter Name="PLLSAI1Q"/>
        <Parameter Name="PLLSAI1P"/>
        <Parameter Name="AHBCLKDivider"/>
        <Parameter Name="RCC_MCODiv"/>
        <Parameter Name="APB1CLKDivider"/>
        <Parameter Name="APB2CLKDivider"/>
        <Parameter Name="RTCClockSelection"/>
        <Parameter Name="SYSCLKSource"/>
        <Parameter Name="RCC_MCO1Source"/>
    
        <Parameter Name="USART1CLockSelection"/>
  

        <Parameter Name="LPUART1CLockSelection"/>
        <Parameter Name="I2C1CLockSelection"/>

        <Parameter Name="I2C3CLockSelection"/>
        <Parameter Name="LPTIM1CLockSelection"/>
        <Parameter Name="LPTIM2CLockSelection"/>
        <Parameter Name="SAI1CLockSelection"/>
        <Parameter Name="ADCCLockSelection"/>
        <Parameter Name="CK48CLockSelection"/>
        <Parameter Name="MSIClockRange"/>
        <Parameter Name="EnbaleCSS"/>
        <Parameter Name="EnableCSSLSE"/>
        <Parameter Name="HSE_VALUE"/>
        <Parameter Name="HSI_VALUE"/>
        <Parameter Name="LSE_VALUE"/>
        <Parameter Name="LSI_VALUE"/>
        <!--Parameter Name="MSI_VALUE"/-->
        <Parameter Name="SYSCLKFreq_VALUE"/>
        <Parameter Name="MCO1PinFreq_Value"/>
        <Parameter Name="SAI1Freq_Value"/>
        <Parameter Name="HCLKFreq_Value"/>
        <Parameter Name="USBFreq_Value"/>
        <Parameter Name="ADCFreq_Value"/>
        <Parameter Name="I2C3Freq_Value"/>
  
        <Parameter Name="I2C1Freq_Value"/>

        <Parameter Name="USART1Freq_Value"/>
        <Parameter Name="LPUART1Freq_Value"/>
        <Parameter Name="LPTIM1Freq_Value"/>
        <Parameter Name="LPTIM2Freq_Value"/>
        <Parameter Name="RTCFreq_Value"/>
        <Parameter Name="APB2TimFreq_Value"/>
        <Parameter Name="APB1TimFreq_Value"/>
        <Parameter Name="FCLKCortexFreq_Value"/>
        <Parameter Name="PWRFreq_Value"/>
        <Parameter Name="AHBFreq_Value"/>
        <Parameter Name="WatchDogFreq_Value"/>
        <Parameter Name="CortexFreq_Value"/>
        <Parameter Name="APB2Freq_Value"/>
        <Parameter Name="APB1Freq_Value"/>
        <Parameter Name="ClockTypeARG"/>
        <Parameter Name="SYSCLKSourceARG"/>
        <Parameter Name="AHBCLKDividerARG"/>
        <Parameter Name="APB1CLKDividerARG"/>
        <Parameter Name="APB2CLKDividerARG"/>
        <Parameter Name="AHBCLKSCLKDividerARG"/>
        <Parameter Name="ClockType"/>
        <Parameter Name="ClockTypeSysClk"/>
        <Parameter Name="ClockTypeHCLK"/>
        <Parameter Name="ClockTypePCLK1"/>
        <Parameter Name="ClockTypePCLK2"/>
        <Parameter Name="SMPSDiv"/>
	
    </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="MSICalibrationValue"/>
        <Parameter Name="PWR_Regulator_Voltage_Scale"/>
        <Parameter Name="MSIAutoCalibration"/>
        <Parameter Name="MSIOscState"/>
        <Parameter Name="HSIOscState"/>
        <Parameter Name="Prescaler"/>
        <Parameter Name="Source"/>
        <Parameter Name="Polarity"/>
        <Parameter Name="ReloadValueType"/>
        <Parameter Name="ReloadValueARG"/>
        <Parameter Name="ReloadValue"/>
        <Parameter Name="Fsync"/>
        <Parameter Name="ErrorLimitValue"/>
        <Parameter Name="HSI48CalibrationValue"/>
        <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)" RemoveCondition="STM32WB5MMGHx|STM32WB30CEUx|STM32WB35CCUx|STM32WB35CEUx">
            <ModeLogicOperator Name="XOR">
                <Mode Name="HSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <!--Signal Name="OSC_OUT"/-->
                    </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" UserName="High Speed Clock (HSE)" RemoveCondition="!(STM32WB30CEUx|STM32WB35CCUx|STM32WB35CEUx)">
            <ModeLogicOperator Name="XOR">
                 <Mode Name="HSE-External-Clock-Source" UserName="External Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <!--Signal Name="OSC_OUT"/-->
                    </SignalLogicalOp>
                    <Semaphore>HSEOscillator</Semaphore>
                </Mode>           
                <Mode Name="HSE-External-Oscillator" UserName="Crystal Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC_IN"/>
                        <Signal Name="OSC_OUT"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC" UserName="High Speed Clock (HSE)" RemoveCondition="!STM32WB5MMGHx">
            <ModeLogicOperator Name="XOR">
                <Mode Name="HSE-External-Clock-Source" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="V_OSC_IN"/>
                    </SignalLogicalOp>
                    <Semaphore>HSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC" UserName="High Speed Clock (HSE)" >
            <ModeLogicOperator Name="XOR">
                <Mode Name="HSE-External-Clock-Source-for-LittleOrca" UserName="BYPASS Clock Source">
			
                    <SignalLogicalOp Name="AND">
                        <Signal Name="CK_IN"/>
                        <!--Signal Name="OSC_OUT"/-->
                    </SignalLogicalOp>
                    <Semaphore>HSEByPass</Semaphore>
                </Mode>
           
            </ModeLogicOperator>
        </Mode>
        <Mode Name="OSC32" UserName="Low Speed Clock (LSE) " RemoveCondition="STM32WB5MMGHx">
            <ModeLogicOperator Name="XOR">
                <Mode Name="LSE-External-Clock-Source" UserName="BYPASS Clock Source">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="OSC32_IN"/>
                        <!--Signal Name="OSC32_OUT"/-->
                    </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" UserName="Low Speed Clock (LSE) " RemoveCondition="!STM32WB5MMGHx">
            <ModeLogicOperator Name="XOR">
                <Mode Name="LSE-External-Clock-Source" UserName="Crystal/Ceramic Resonator">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="V_OSC32_IN"/>
                    </SignalLogicalOp>
                    <Semaphore>LSEOscillator</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </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_ClockInSAI1" UserName="SAI1 Extern CLock" RemoveCondition="STM32WBx0_Value_Line">
            <ModeLogicOperator Name="OR">
                <Mode Name="Audio_ClockInSAI1">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="$SingleInstanceSAI1_EXTCLK"/>
                    </SignalLogicalOp>
                    <Semaphore>SAI1EXTCLK</Semaphore>
                </Mode>
            </ModeLogicOperator>
        </Mode> 
         
        <Mode Name="USB_CRS" UserName="CRS SYNC" RemoveCondition="STM32WBx0_Value_Line">
            <ModeLogicOperator Name="XOR">
                <Mode Name="CRS SYNC Source GPIO">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="$SingleInstanceCRS_SYNC"/>
                    </SignalLogicalOp>
                    <Semaphore>CRSActivatedSourceGPIO</Semaphore>
                </Mode>
                <Mode Name="CRS SYNC Source LSE">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="LSE"/>
                    </SignalLogicalOp>
                    <Semaphore>CRSActivatedSourceLSE</Semaphore>
                    <Condition Expression="LSEByPass|LSEOscillator" Diagnostic="LSE Should be Enabled"/>
                    
                </Mode>
                <Mode Name="CRS SYNC Source USB" RemoveCondition="!USB_Exist">
                    <SignalLogicalOp Name="AND">
                        <Signal Name="USB"/>
                    </SignalLogicalOp>
                    <Semaphore>CRSActivatedSourceUSB</Semaphore>
                    <Condition Expression="USBUsed_ForRCC" Diagnostic="USB Should be Enabled"/>
                </Mode>
            </ModeLogicOperator>
        </Mode>

    </ModeLogicOperator>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="MCO"/>
    <RefSignal IOMode="System" Name="CK_IN"/>
    <RefSignal IOMode="AlternateFunctionPushPull" 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="$SingleInstanceSAI1_EXTCLK"/>
    <RefSignal IOMode="AlternateFunctionPushPull" Name="$SingleInstanceCRS_SYNC"/>
    <RefSignal Name="V_OSC_IN"  Virtual="true"/>
    <RefSignal Name="V_OSC_OUT" Virtual="true"/>
    <RefSignal Name="V_OSC32_IN" Virtual="true"/>

    <RefSignal Virtual="true" Name="USB" />
    <RefSignal Virtual="true" Name="LSE" />
</IP>	
