<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<IP xmlns="http://mcd.rou.st.com/modules.php?name=mcu" DBVersion="V4.0" Name="SPI" Version="STM32Cube_FW_WB_V0.6.0" xmlns:ns0="http://www.w3.org/2001/XMLSchema-instance" ns0:schemaLocation="http://mcd.rou.st.com/modules.php?name=mcu ../../../../../../../doc/V4/Development/Specifications/db/IP_Configs.xsd">
    <RefConfig Name="Spi_Init">
        <CallLibMethod Name="HAL_SPI_Init"/>
        <ImplementCallBack Name="HAL_SPI_MspInit"/>
        <ImplementCallBack Name="HAL_SPI_MspDeInit"/>
    </RefConfig>
    
    <RefConfig Name="SPI_DeInit">
        <CallLibMethod Name="HAL_SPI_DeInit"/>
    </RefConfig>
    <LibMethod Comment="" Name="HAL_SPIEx_FlushRxFifo">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Init">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_DeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_MspInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_MspDeInit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Transmit">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Timeout" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Receive">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Timeout" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TransmitReceive">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pTxData" OptimizationCondition="equal"/>
        <Argument AddressOf="true" GenericType="simple" Name="pRxData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Timeout" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Transmit_IT">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Receive_IT">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TransmitReceive_IT">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pTxData" OptimizationCondition="equal"/>
        <Argument AddressOf="true" GenericType="simple" Name="pRxData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Transmit_DMA">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Receive_DMA">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TransmitReceive_DMA">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
        <Argument AddressOf="true" GenericType="simple" Name="pTxData" OptimizationCondition="equal"/>
        <Argument AddressOf="true" GenericType="simple" Name="pRxData" OptimizationCondition="equal"/>
        <Argument AddressOf="false" GenericType="simple" Name="Size" OptimizationCondition="equal"/>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_DMAPause">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_DMAResume">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_DMAStop">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Abort">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_Abort_IT">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_IRQHandler">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TxCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_RxCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TxRxCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TxHalfCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_RxHalfCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_TxRxHalfCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_ErrorCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_AbortCpltCallback">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_GetState">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <LibMethod Comment="" Name="HAL_SPI_GetError">
        <Argument AddressOf="true" Context="global" GenericType="struct" Name="hspi" TypeName="SPI_HandleTypeDef">
            <Argument AddressOf="false" GenericType="baseaddress" Name="Instance" TypeName="SPI_TypeDef"/>
            <Argument AddressOf="false" GenericType="struct" Name="Init" TypeName="SPI_InitTypeDef">
                <Argument AddressOf="false" GenericType="simple" Name="Mode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="Direction" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="DataSize" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPolarity" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CLKPhase" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSS" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="BaudRatePrescaler" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="FirstBit" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="TIMode" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCCalculation" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCPolynomial" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="CRCLength" OptimizationCondition="equal"/>
                <Argument AddressOf="false" GenericType="simple" Name="NSSPMode" OptimizationCondition="equal"/>
            </Argument>
            <Argument AddressOf="true" GenericType="simple" Name="pTxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="TxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="pRxBuffPtr" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferSize" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="RxXferCount" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="CRCSize" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="RxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="TxISR" OptimizationCondition="equal"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmatx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="true" GenericType="simple" Name="hdmarx" OptimizationCondition="equal" TypeName="DMA_HandleTypeDef"/>
            <Argument AddressOf="false" GenericType="simple" Name="Lock" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="State" OptimizationCondition="equal"/>
            <Argument AddressOf="false" GenericType="simple" Name="ErrorCode" OptimizationCondition="equal"/>
        </Argument>
    </LibMethod>
    <RefComponent Cclass="HAL" Cgroup="SPI" Cversion="0.6.0">
        <File Category="header" Name="Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_hal_spi.h"/>
        <File Category="header" Name="Drivers/STM32WBxx_HAL_Driver/Inc/stm32wbxx_hal_spi_ex.h"/>
        <File Category="source" Name="Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_spi.c"/>
        <File Category="source" Name="Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_spi_ex.c"/>
    </RefComponent>
</IP>
