NFC NDEF library

Dependents:   Nucleo_NFC_Example I2C_NFC_Master Print_Entire_Nucleo_NFC01A1_Memory

Fork of lib_NDEF by Enrico Gregoratto

Committer:
EnricoG
Date:
Mon Dec 15 19:41:36 2014 +0000
Revision:
0:3b093bd0819e
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
EnricoG 0:3b093bd0819e 1 /**
EnricoG 0:3b093bd0819e 2 ******************************************************************************
EnricoG 0:3b093bd0819e 3 * @file lib_NDEF_Vcard.h
EnricoG 0:3b093bd0819e 4 * @author MMY Application Team
EnricoG 0:3b093bd0819e 5 * @version V1.0.0
EnricoG 0:3b093bd0819e 6 * @date 20-November-2013
EnricoG 0:3b093bd0819e 7 * @brief This file help to manage Vcard NDEF file.
EnricoG 0:3b093bd0819e 8 ******************************************************************************
EnricoG 0:3b093bd0819e 9 * @attention
EnricoG 0:3b093bd0819e 10 *
EnricoG 0:3b093bd0819e 11 * <h2><center>&copy; COPYRIGHT 2014 STMicroelectronics</center></h2>
EnricoG 0:3b093bd0819e 12 *
EnricoG 0:3b093bd0819e 13 * Licensed under MMY-ST Liberty SW License Agreement V2, (the "License");
EnricoG 0:3b093bd0819e 14 * You may not use this file except in compliance with the License.
EnricoG 0:3b093bd0819e 15 * You may obtain a copy of the License at:
EnricoG 0:3b093bd0819e 16 *
EnricoG 0:3b093bd0819e 17 * http://www.st.com/software_license_agreement_liberty_v2
EnricoG 0:3b093bd0819e 18 *
EnricoG 0:3b093bd0819e 19 * Unless required by applicable law or agreed to in writing, software
EnricoG 0:3b093bd0819e 20 * distributed under the License is distributed on an "AS IS" BASIS,
EnricoG 0:3b093bd0819e 21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
EnricoG 0:3b093bd0819e 22 * See the License for the specific language governing permissions and
EnricoG 0:3b093bd0819e 23 * limitations under the License.
EnricoG 0:3b093bd0819e 24 *
EnricoG 0:3b093bd0819e 25 ******************************************************************************
EnricoG 0:3b093bd0819e 26 */
EnricoG 0:3b093bd0819e 27
EnricoG 0:3b093bd0819e 28 /* Define to prevent recursive inclusion -------------------------------------*/
EnricoG 0:3b093bd0819e 29 #ifndef __LIB_NDEF_VCARD_H
EnricoG 0:3b093bd0819e 30 #define __LIB_NDEF_VCARD_H
EnricoG 0:3b093bd0819e 31
EnricoG 0:3b093bd0819e 32 #ifdef __cplusplus
EnricoG 0:3b093bd0819e 33 extern "C" {
EnricoG 0:3b093bd0819e 34 #endif
EnricoG 0:3b093bd0819e 35
EnricoG 0:3b093bd0819e 36 /* Includes ------------------------------------------------------------------*/
EnricoG 0:3b093bd0819e 37 #include "lib_NDEF.h"
EnricoG 0:3b093bd0819e 38
EnricoG 0:3b093bd0819e 39
EnricoG 0:3b093bd0819e 40 #define VCARD_VERSION_2_1 "2.1"
EnricoG 0:3b093bd0819e 41 #define VCARD_VERSION_2_1_SIZE 3
EnricoG 0:3b093bd0819e 42
EnricoG 0:3b093bd0819e 43 #define VCARD_VERSION_3_0 "3.0"
EnricoG 0:3b093bd0819e 44 #define VCARD_VERSION_3_0_SIZE 3
EnricoG 0:3b093bd0819e 45
EnricoG 0:3b093bd0819e 46
EnricoG 0:3b093bd0819e 47 #define BEGIN "BEGIN:"
EnricoG 0:3b093bd0819e 48 #define VCARD "VCARD"
EnricoG 0:3b093bd0819e 49 #define VERSION "VERSION:"
EnricoG 0:3b093bd0819e 50 #define FIRSTNAME "FN:"
EnricoG 0:3b093bd0819e 51 #define HOME_TEL "TEL;HOME:"
EnricoG 0:3b093bd0819e 52 #define WORK_TEL "TEL;WORK:"
EnricoG 0:3b093bd0819e 53 #define CELL_TEL "TEL;CELL:"
EnricoG 0:3b093bd0819e 54 #define HOME_EMAIL "EMAIL;HOME:"
EnricoG 0:3b093bd0819e 55 #define WORK_EMAIL "EMAIL;WORK:"
EnricoG 0:3b093bd0819e 56 #define HOME_ADDRESS "ADR;HOME:"
EnricoG 0:3b093bd0819e 57 #define WORK_ADDRESS "ADR;WORK:"
EnricoG 0:3b093bd0819e 58 #define TITLE "TITLE:"
EnricoG 0:3b093bd0819e 59 #define ORG "ORG:"
EnricoG 0:3b093bd0819e 60 #define END "END:"
EnricoG 0:3b093bd0819e 61 #define JPEG "JPEG"
EnricoG 0:3b093bd0819e 62
EnricoG 0:3b093bd0819e 63 #define LIMIT "\r\n"
EnricoG 0:3b093bd0819e 64
EnricoG 0:3b093bd0819e 65 #define BEGIN_STRING_SIZE 6
EnricoG 0:3b093bd0819e 66 #define VCARD_STRING_SIZE 5
EnricoG 0:3b093bd0819e 67 #define VERSION_STRING_SIZE 8
EnricoG 0:3b093bd0819e 68 #define FIRSTNAME_STRING_SIZE 3
EnricoG 0:3b093bd0819e 69 #define HOME_TEL_STRING_SIZE 9
EnricoG 0:3b093bd0819e 70 #define WORK_TEL_STRING_SIZE 9
EnricoG 0:3b093bd0819e 71 #define CELL_TEL_STRING_SIZE 9
EnricoG 0:3b093bd0819e 72 #define HOME_EMAIL_STRING_SIZE 11
EnricoG 0:3b093bd0819e 73 #define WORK_EMAIL_STRING_SIZE 11
EnricoG 0:3b093bd0819e 74 #define HOME_ADDRESS_STRING_SIZE 9
EnricoG 0:3b093bd0819e 75 #define WORK_ADDRESS_STRING_SIZE 9
EnricoG 0:3b093bd0819e 76 #define TITLE_STRING_SIZE 6
EnricoG 0:3b093bd0819e 77 #define ORG_STRING_SIZE 4
EnricoG 0:3b093bd0819e 78 #define END_STRING_SIZE 4
EnricoG 0:3b093bd0819e 79 #define JPEG_STRING_SIZE 4
EnricoG 0:3b093bd0819e 80
EnricoG 0:3b093bd0819e 81 #define LIMIT_STRING_SIZE 2
EnricoG 0:3b093bd0819e 82
EnricoG 0:3b093bd0819e 83 typedef struct
EnricoG 0:3b093bd0819e 84 {
EnricoG 0:3b093bd0819e 85 char Version [10];
EnricoG 0:3b093bd0819e 86 char FirstName[80];
EnricoG 0:3b093bd0819e 87 char Title[80];
EnricoG 0:3b093bd0819e 88 char Org[80];
EnricoG 0:3b093bd0819e 89 char HomeAddress[80];
EnricoG 0:3b093bd0819e 90 char WorkAddress[80];
EnricoG 0:3b093bd0819e 91 char HomeTel[40];
EnricoG 0:3b093bd0819e 92 char WorkTel[40];
EnricoG 0:3b093bd0819e 93 char CellTel[40];
EnricoG 0:3b093bd0819e 94 char HomeEmail[80];
EnricoG 0:3b093bd0819e 95 char WorkEmail[80];
EnricoG 0:3b093bd0819e 96 }sVcardInfo;
EnricoG 0:3b093bd0819e 97
EnricoG 0:3b093bd0819e 98
EnricoG 0:3b093bd0819e 99
EnricoG 0:3b093bd0819e 100
EnricoG 0:3b093bd0819e 101 uint16_t NDEF_ReadVcard ( sRecordInfo *pRecordStruct, sVcardInfo *pVcardStruct );
EnricoG 0:3b093bd0819e 102 uint16_t NDEF_WriteVcard ( sVcardInfo *pVcardStruct );
EnricoG 0:3b093bd0819e 103
EnricoG 0:3b093bd0819e 104 #ifdef __cplusplus
EnricoG 0:3b093bd0819e 105 }
EnricoG 0:3b093bd0819e 106 #endif
EnricoG 0:3b093bd0819e 107
EnricoG 0:3b093bd0819e 108 #endif /* __LIB_NDEF_VCARD_H */
EnricoG 0:3b093bd0819e 109
EnricoG 0:3b093bd0819e 110
EnricoG 0:3b093bd0819e 111 /******************* (C) COPYRIGHT 2013 STMicroelectronics *****END OF FILE****/