AppNearMe µNFC stack for the NXP PN532 chip License: You can use the stack free of charge to prototype with mbed; if you want to use the stack with your commercial product, get in touch!

Dependents:   IOT_sensor_nfc AppNearMe_MuNFC_PN532_Test p2p_nfc_test NFCMoodLamp ... more

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers protocols.h Source File

protocols.h

00001 /*
00002   protocols.h
00003   Copyright (c) Donatien Garnier 2012
00004   donatien.garnier@appnearme.com
00005   http://www.appnearme.com/
00006 */
00007 
00008 #ifndef PROTOCOLS_H_
00009 #define PROTOCOLS_H_
00010 
00011 #ifdef __cplusplus
00012 extern "C" {
00013 #endif
00014 
00015 typedef enum __RF_PROTOCOL
00016 {
00017   __RF_PROTOCOL_UNKNOWN = 0,
00018   //Reader
00019   RF_PROTOCOL_ISO_14443_A_READER,
00020   RF_PROTOCOL_ISO_14443_B_READER,
00021   RF_PROTOCOL_INNOVATRON_READER,
00022   RF_PROTOCOL_ISO_15693_READER,
00023   RF_PROTOCOL_FELICA_READER,
00024   //... add other protocols here
00025   RF_PROTOCOL_ISO_14443_A_TARGET,
00026   RF_PROTOCOL_ISO_14443_B_TARGET,
00027   RF_PROTOCOL_INNOVATRON_TARGET,
00028   RF_PROTOCOL_ISO_15693_TARGET,
00029   RF_PROTOCOL_FELICA_TARGET,
00030   RF_PROTOCOL_ISO_DEP_TARGET, //ISO 7816-3/4 over ISO 14443-4 link
00031   //... add other protocols here
00032 
00033 } RF_PROTOCOL;
00034 
00035 #define RF_PROTOCOL_IS_TARGET(x) ((x)>=RF_PROTOCOL_ISO_14443_A_TARGET)
00036 #define RF_PROTOCOL_IS_READER(x) (!RF_PROTOCOL_IS_TARGET(x))
00037 
00038 typedef uint32_t RF_OPTION;
00039 //These options can be ORed
00040 #define RF_OPTION_NONE            0x00
00041 #define RF_OPTION_COMPUTE_CRC     0x01
00042 #define RF_OPTION_COMPUTE_PARITY  0x02
00043 #define RF_OPTION_CHECK_CRC       0x04
00044 #define RF_OPTION_CHECK_PARITY    0x08
00045 
00046 
00047 #ifdef __cplusplus
00048 }
00049 #endif
00050 
00051 #endif /* PROTOCOLS_H_ */