This is a driver needed by NFCEEPROOM constructor for the ST ST25DV NFC chip.

Dependents:   mbed-os-example-nfc-EEPROM

Committer:
apalmieri
Date:
Tue Jan 28 15:54:19 2020 +0000
Revision:
0:dd89565c6276
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
apalmieri 0:dd89565c6276 1 /**
apalmieri 0:dd89565c6276 2 ******************************************************************************
apalmieri 0:dd89565c6276 3 * @file x_nucleo_nfc04a1.h
apalmieri 0:dd89565c6276 4 * @author MMY Application Team
apalmieri 0:dd89565c6276 5 * @version $Revision: 3351 $
apalmieri 0:dd89565c6276 6 * @date $Date: 2017-01-25 17:28:08 +0100 (Wed, 25 Jan 2017) $
apalmieri 0:dd89565c6276 7 * @brief This file contains definitions for the x_nucleo_nfc04a1.c
apalmieri 0:dd89565c6276 8 * board specific functions.
apalmieri 0:dd89565c6276 9 ******************************************************************************
apalmieri 0:dd89565c6276 10 * @attention
apalmieri 0:dd89565c6276 11 *
apalmieri 0:dd89565c6276 12 * <h2><center>&copy; COPYRIGHT 2017 STMicroelectronics</center></h2>
apalmieri 0:dd89565c6276 13 *
apalmieri 0:dd89565c6276 14 * Licensed under ST MYLIBERTY SOFTWARE LICENSE AGREEMENT (the "License");
apalmieri 0:dd89565c6276 15 * You may not use this file except in compliance with the License.
apalmieri 0:dd89565c6276 16 * You may obtain a copy of the License at:
apalmieri 0:dd89565c6276 17 *
apalmieri 0:dd89565c6276 18 * http://www.st.com/myliberty
apalmieri 0:dd89565c6276 19 *
apalmieri 0:dd89565c6276 20 * Unless required by applicable law or agreed to in writing, software
apalmieri 0:dd89565c6276 21 * distributed under the License is distributed on an "AS IS" BASIS,
apalmieri 0:dd89565c6276 22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
apalmieri 0:dd89565c6276 23 * AND SPECIFICALLY DISCLAIMING THE IMPLIED WARRANTIES OF MERCHANTABILITY,
apalmieri 0:dd89565c6276 24 * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
apalmieri 0:dd89565c6276 25 * See the License for the specific language governing permissions and
apalmieri 0:dd89565c6276 26 * limitations under the License.
apalmieri 0:dd89565c6276 27 *
apalmieri 0:dd89565c6276 28 ******************************************************************************
apalmieri 0:dd89565c6276 29 */
apalmieri 0:dd89565c6276 30
apalmieri 0:dd89565c6276 31 #include "st25dv_driver.h"
apalmieri 0:dd89565c6276 32 #include "mbed.h"
apalmieri 0:dd89565c6276 33 //#include "PinNames.h"
apalmieri 0:dd89565c6276 34
apalmieri 0:dd89565c6276 35 /* Define to prevent recursive inclusion -------------------------------------*/
apalmieri 0:dd89565c6276 36 #ifndef __X_NUCLEO_NFC04A1_H
apalmieri 0:dd89565c6276 37 #define __X_NUCLEO_NFC04A1_H
apalmieri 0:dd89565c6276 38
apalmieri 0:dd89565c6276 39
apalmieri 0:dd89565c6276 40
apalmieri 0:dd89565c6276 41 /* Includes ------------------------------------------------------------------*/
apalmieri 0:dd89565c6276 42 //#include "ST25DV/st25dv.h"
apalmieri 0:dd89565c6276 43
apalmieri 0:dd89565c6276 44 /** @addtogroup BSP
apalmieri 0:dd89565c6276 45 * @{
apalmieri 0:dd89565c6276 46 */
apalmieri 0:dd89565c6276 47
apalmieri 0:dd89565c6276 48 /** @addtogroup X_NUCLEO_NFC04A1
apalmieri 0:dd89565c6276 49 * @{
apalmieri 0:dd89565c6276 50 */
apalmieri 0:dd89565c6276 51
apalmieri 0:dd89565c6276 52 /* Exported types ------------------------------------------------------------*/
apalmieri 0:dd89565c6276 53 /** @defgroup X_NUCLEO_NFC04A1_Exported_Types
apalmieri 0:dd89565c6276 54 * @{
apalmieri 0:dd89565c6276 55 */
apalmieri 0:dd89565c6276 56 /**
apalmieri 0:dd89565c6276 57 * @brief NFC04A1 Led enumerator definition
apalmieri 0:dd89565c6276 58 */
apalmieri 0:dd89565c6276 59 typedef enum
apalmieri 0:dd89565c6276 60 {
apalmieri 0:dd89565c6276 61 GREEN_LED = 0,
apalmieri 0:dd89565c6276 62 BLUE_LED ,
apalmieri 0:dd89565c6276 63 YELLOW_LED
apalmieri 0:dd89565c6276 64 }NFC04A1_Led_E;
apalmieri 0:dd89565c6276 65
apalmieri 0:dd89565c6276 66 /**
apalmieri 0:dd89565c6276 67 * @brief NFC04A1 Ack Nack enumerator definition
apalmieri 0:dd89565c6276 68 */
apalmieri 0:dd89565c6276 69 typedef enum
apalmieri 0:dd89565c6276 70 {
apalmieri 0:dd89565c6276 71 I2CANSW_ACK = 0,
apalmieri 0:dd89565c6276 72 I2CANSW_NACK
apalmieri 0:dd89565c6276 73 }NFC04A1_I2CANSW_E;
apalmieri 0:dd89565c6276 74
apalmieri 0:dd89565c6276 75
apalmieri 0:dd89565c6276 76
apalmieri 0:dd89565c6276 77 /**
apalmieri 0:dd89565c6276 78 * @brief NFC04A1 Led structure definition
apalmieri 0:dd89565c6276 79 */
apalmieri 0:dd89565c6276 80
apalmieri 0:dd89565c6276 81 typedef struct
apalmieri 0:dd89565c6276 82 {
apalmieri 0:dd89565c6276 83 uint16_t NFC04A1_LED_PIN;
apalmieri 0:dd89565c6276 84 }NFC04A1_Led_TypeDef;
apalmieri 0:dd89565c6276 85
apalmieri 0:dd89565c6276 86 /**
apalmieri 0:dd89565c6276 87 * @}
apalmieri 0:dd89565c6276 88 */
apalmieri 0:dd89565c6276 89 /* Exported constants --------------------------------------------------------*/
apalmieri 0:dd89565c6276 90 /** @defgroup X_NUCLEO_NFC04A1_Exported_Constants
apalmieri 0:dd89565c6276 91 * @{
apalmieri 0:dd89565c6276 92 */
apalmieri 0:dd89565c6276 93 #define ST25DV_I2C_SPEED NFC04A1_ST25DV_I2C_SPEED_1M
apalmieri 0:dd89565c6276 94 #define NFC04A1_I2C_TIMEOUT ST25DV_I2C_TIMEOUT
apalmieri 0:dd89565c6276 95 /**
apalmieri 0:dd89565c6276 96 * @}
apalmieri 0:dd89565c6276 97 */
apalmieri 0:dd89565c6276 98
apalmieri 0:dd89565c6276 99 /* External variables --------------------------------------------------------*/
apalmieri 0:dd89565c6276 100 /* Exported macro ------------------------------------------------------------*/
apalmieri 0:dd89565c6276 101 /* Exported functions ------------------------------------------------------- */
apalmieri 0:dd89565c6276 102 /** @defgroup ST25DV_NUCLEO_Exported_Functions
apalmieri 0:dd89565c6276 103 * @{
apalmieri 0:dd89565c6276 104 */
apalmieri 0:dd89565c6276 105 void NFC04A1_LED_Toggle( DigitalOut* led);
apalmieri 0:dd89565c6276 106 DigitalOut NFC04A1_GPO_ReadPin( DigitalOut *mMISO );
apalmieri 0:dd89565c6276 107 void NFC04A1_LPD_Init( DigitalOut *mLPD );
apalmieri 0:dd89565c6276 108 uint8_t NFC04A1_LPD_ReadPin( void );
apalmieri 0:dd89565c6276 109 void NFC04A1_LPD_WritePin( uint8_t LpdPinState, DigitalOut *mLPD );
apalmieri 0:dd89565c6276 110 void NFC04A1_SelectI2cSpeed( uint8_t i2cspeedchoice, I2C* mi2cChannel);
apalmieri 0:dd89565c6276 111 /**
apalmieri 0:dd89565c6276 112 * @}
apalmieri 0:dd89565c6276 113 */
apalmieri 0:dd89565c6276 114
apalmieri 0:dd89565c6276 115 /**
apalmieri 0:dd89565c6276 116 * @}
apalmieri 0:dd89565c6276 117 */
apalmieri 0:dd89565c6276 118
apalmieri 0:dd89565c6276 119 /**
apalmieri 0:dd89565c6276 120 * @}
apalmieri 0:dd89565c6276 121 */
apalmieri 0:dd89565c6276 122
apalmieri 0:dd89565c6276 123
apalmieri 0:dd89565c6276 124
apalmieri 0:dd89565c6276 125 #endif /* __X_NUCLEO_NFC04A1_H */
apalmieri 0:dd89565c6276 126
apalmieri 0:dd89565c6276 127 /******************* (C) COPYRIGHT 2017 STMicroelectronics *****END OF FILE****/