mbed library sources

Dependents:   frdm_kl05z_gpio_test

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Tue Jun 24 14:45:08 2014 +0100
Revision:
237:f3da66175598
Synchronized with git revision 8ef659bca81f12dfc896b5a7af7c2abbd1a1b8b7

Full URL: https://github.com/mbedmicro/mbed/commit/8ef659bca81f12dfc896b5a7af7c2abbd1a1b8b7/

[NUCLEO_F334R8] Add platform files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 237:f3da66175598 1 /**
mbed_official 237:f3da66175598 2 ******************************************************************************
mbed_official 237:f3da66175598 3 * @file stm32f3xx_hal_pcd.h
mbed_official 237:f3da66175598 4 * @author MCD Application Team
mbed_official 237:f3da66175598 5 * @version V1.0.1
mbed_official 237:f3da66175598 6 * @date 18-June-2014
mbed_official 237:f3da66175598 7 * @brief Header file of PCD HAL module.
mbed_official 237:f3da66175598 8 ******************************************************************************
mbed_official 237:f3da66175598 9 * @attention
mbed_official 237:f3da66175598 10 *
mbed_official 237:f3da66175598 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 237:f3da66175598 12 *
mbed_official 237:f3da66175598 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 237:f3da66175598 14 * are permitted provided that the following conditions are met:
mbed_official 237:f3da66175598 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 237:f3da66175598 16 * this list of conditions and the following disclaimer.
mbed_official 237:f3da66175598 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 237:f3da66175598 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 237:f3da66175598 19 * and/or other materials provided with the distribution.
mbed_official 237:f3da66175598 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 237:f3da66175598 21 * may be used to endorse or promote products derived from this software
mbed_official 237:f3da66175598 22 * without specific prior written permission.
mbed_official 237:f3da66175598 23 *
mbed_official 237:f3da66175598 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 237:f3da66175598 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 237:f3da66175598 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 237:f3da66175598 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 237:f3da66175598 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 237:f3da66175598 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 237:f3da66175598 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 237:f3da66175598 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 237:f3da66175598 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 237:f3da66175598 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 237:f3da66175598 34 *
mbed_official 237:f3da66175598 35 ******************************************************************************
mbed_official 237:f3da66175598 36 */
mbed_official 237:f3da66175598 37
mbed_official 237:f3da66175598 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 237:f3da66175598 39 #ifndef __STM32F3xx_HAL_PCD_EX_H
mbed_official 237:f3da66175598 40 #define __STM32F3xx_HAL_PCD_EX_H
mbed_official 237:f3da66175598 41
mbed_official 237:f3da66175598 42 #ifdef __cplusplus
mbed_official 237:f3da66175598 43 extern "C" {
mbed_official 237:f3da66175598 44 #endif
mbed_official 237:f3da66175598 45
mbed_official 237:f3da66175598 46 #if defined(STM32F302x8) || defined(STM32F302xC) || \
mbed_official 237:f3da66175598 47 defined(STM32F303xC) || defined(STM32F373xC)
mbed_official 237:f3da66175598 48
mbed_official 237:f3da66175598 49 /* Includes ------------------------------------------------------------------*/
mbed_official 237:f3da66175598 50 #include "stm32f3xx_hal_def.h"
mbed_official 237:f3da66175598 51
mbed_official 237:f3da66175598 52 /** @addtogroup STM32F3xx_HAL_Driver
mbed_official 237:f3da66175598 53 * @{
mbed_official 237:f3da66175598 54 */
mbed_official 237:f3da66175598 55
mbed_official 237:f3da66175598 56 /** @addtogroup PCD
mbed_official 237:f3da66175598 57 * @{
mbed_official 237:f3da66175598 58 */
mbed_official 237:f3da66175598 59
mbed_official 237:f3da66175598 60 /* Exported types ------------------------------------------------------------*/
mbed_official 237:f3da66175598 61 /* Exported constants --------------------------------------------------------*/
mbed_official 237:f3da66175598 62 /* Exported macros -----------------------------------------------------------*/
mbed_official 237:f3da66175598 63 /**
mbed_official 237:f3da66175598 64 * @brief Gets address in an endpoint register.
mbed_official 237:f3da66175598 65 * @param USBx: USB peripheral instance register address.
mbed_official 237:f3da66175598 66 * @param bEpNum: Endpoint Number.
mbed_official 237:f3da66175598 67 * @retval None
mbed_official 237:f3da66175598 68 */
mbed_official 237:f3da66175598 69
mbed_official 237:f3da66175598 70 #if defined(STM32F302xC) || defined(STM32F303xC) || defined(STM32F373xC)
mbed_official 237:f3da66175598 71
mbed_official 237:f3da66175598 72 #define PCD_EP_TX_ADDRESS(USBx, bEpNum) ((uint32_t *)((USBx->BTABLE+bEpNum*8)*2+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 73 #define PCD_EP_TX_CNT(USBx, bEpNum) ((uint32_t *)((USBx->BTABLE+bEpNum*8+2)*2+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 74 #define PCD_EP_RX_ADDRESS(USBx, bEpNum) ((uint32_t *)((USBx->BTABLE+bEpNum*8+4)*2+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 75 #define PCD_EP_RX_CNT(USBx, bEpNum) ((uint32_t *)((USBx->BTABLE+bEpNum*8+6)*2+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 76
mbed_official 237:f3da66175598 77 #define PCD_SET_EP_RX_CNT(USBx, bEpNum,wCount) {\
mbed_official 237:f3da66175598 78 uint32_t *pdwReg = PCD_EP_RX_CNT(USBx, bEpNum); \
mbed_official 237:f3da66175598 79 PCD_SET_EP_CNT_RX_REG(pdwReg, wCount);\
mbed_official 237:f3da66175598 80 }
mbed_official 237:f3da66175598 81
mbed_official 237:f3da66175598 82 #endif /* STM32F302xC || STM32F303xC || STM32F373xC */
mbed_official 237:f3da66175598 83
mbed_official 237:f3da66175598 84
mbed_official 237:f3da66175598 85 #if defined(STM32F302x8)
mbed_official 237:f3da66175598 86
mbed_official 237:f3da66175598 87 #define PCD_EP_TX_ADDRESS(USBx, bEpNum) ((uint16_t *)((USBx->BTABLE+bEpNum*8)+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 88 #define PCD_EP_TX_CNT(USBx, bEpNum) ((uint16_t *)((USBx->BTABLE+bEpNum*8+2)+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 89 #define PCD_EP_RX_ADDRESS(USBx, bEpNum) ((uint16_t *)((USBx->BTABLE+bEpNum*8+4)+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 90 #define PCD_EP_RX_CNT(USBx, bEpNum) ((uint16_t *)((USBx->BTABLE+bEpNum*8+6)+ ((uint32_t)USBx + 0x400)))
mbed_official 237:f3da66175598 91
mbed_official 237:f3da66175598 92 #define PCD_SET_EP_RX_CNT(USBx, bEpNum,wCount) {\
mbed_official 237:f3da66175598 93 uint16_t *pdwReg = PCD_EP_RX_CNT(USBx, bEpNum); \
mbed_official 237:f3da66175598 94 PCD_SET_EP_CNT_RX_REG(pdwReg, wCount);\
mbed_official 237:f3da66175598 95 }
mbed_official 237:f3da66175598 96
mbed_official 237:f3da66175598 97 #endif /* STM32F302x8 */
mbed_official 237:f3da66175598 98
mbed_official 237:f3da66175598 99 /* Exported functions --------------------------------------------------------*/
mbed_official 237:f3da66175598 100 HAL_StatusTypeDef HAL_PCDEx_PMAConfig(PCD_HandleTypeDef *hpcd,
mbed_official 237:f3da66175598 101 uint16_t ep_addr,
mbed_official 237:f3da66175598 102 uint16_t ep_kind,
mbed_official 237:f3da66175598 103 uint32_t pmaadress);
mbed_official 237:f3da66175598 104
mbed_official 237:f3da66175598 105 __weak void HAL_PCDEx_SetConnectionState(PCD_HandleTypeDef *hpcd, uint8_t state);
mbed_official 237:f3da66175598 106
mbed_official 237:f3da66175598 107 /**
mbed_official 237:f3da66175598 108 * @}
mbed_official 237:f3da66175598 109 */
mbed_official 237:f3da66175598 110
mbed_official 237:f3da66175598 111 /**
mbed_official 237:f3da66175598 112 * @}
mbed_official 237:f3da66175598 113 */
mbed_official 237:f3da66175598 114
mbed_official 237:f3da66175598 115 #endif /* defined(STM32F302x8) || defined(STM32F302xC) || */
mbed_official 237:f3da66175598 116 /* defined(STM32F303xC) || defined(STM32F373xC) */
mbed_official 237:f3da66175598 117
mbed_official 237:f3da66175598 118 #ifdef __cplusplus
mbed_official 237:f3da66175598 119 }
mbed_official 237:f3da66175598 120 #endif
mbed_official 237:f3da66175598 121
mbed_official 237:f3da66175598 122
mbed_official 237:f3da66175598 123 #endif /* __STM32F3xx_HAL_PCD_EX_H */
mbed_official 237:f3da66175598 124
mbed_official 237:f3da66175598 125 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/