00001 /* ex: set tabstop=2 shiftwidth=2 expandtab cindent: */ 00002 #ifndef _TMR_ISO180006B_H 00003 #define _TMR_ISO180006B_H 00004 00011 /* 00012 * Copyright (c) 2009 ThingMagic, Inc. 00013 * 00014 * Permission is hereby granted, free of charge, to any person obtaining a copy 00015 * of this software and associated documentation files (the "Software"), to deal 00016 * in the Software without restriction, including without limitation the rights 00017 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 00018 * copies of the Software, and to permit persons to whom the Software is 00019 * furnished to do so, subject to the following conditions: 00020 * 00021 * The above copyright notice and this permission notice shall be included in 00022 * all copies or substantial portions of the Software. 00023 * 00024 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00025 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00026 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00027 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00028 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 00029 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 00030 * THE SOFTWARE. 00031 */ 00032 00033 #ifdef __cplusplus 00034 extern "C" { 00035 #endif 00036 00038 typedef enum TMR_ISO180006B_SelectOp 00039 { 00041 TMR_ISO180006B_SELECT_OP_EQUALS = 0, 00043 TMR_ISO180006B_SELECT_OP_NOT_EQUALS = 1, 00045 TMR_ISO180006B_SELECT_OP_LESS_THAN = 2, 00047 TMR_ISO180006B_SELECT_OP_GREATER_THAN = 3 00048 } TMR_ISO180006B_SelectOp; 00049 00054 typedef struct TMR_ISO180006B_Select 00055 { 00057 bool invert; 00059 TMR_ISO180006B_SelectOp op; 00061 uint8_t address; 00063 uint8_t mask; 00065 uint8_t data[8]; 00066 } TMR_ISO180006B_Select; 00067 00072 typedef struct TMR_ISO180006B_LockAction 00073 { 00075 uint8_t address; 00076 } TMR_IS0180006B_LockAction; 00077 00079 typedef enum TMR_ISO180006B_LinkFrequency 00080 { 00082 TMR_ISO180006B_LINKFREQUENCY_40KHZ = 40, 00084 TMR_ISO180006B_LINKFREQUENCY_160KHZ = 160, 00085 } TMR_ISO180006B_LinkFrequency; 00086 00088 typedef enum TMR_ISO180006B_ModulationDepth 00089 { 00091 TMR_ISO180006B_Modulation99percent = 0x00, 00093 TMR_ISO180006B_Modulation11percent = 0x01 00094 }TMR_ISO180006B_ModulationDepth; 00095 00097 typedef enum TMR_ISO180006B_Delimiter 00098 { 00100 TMR_ISO180006B_Delimiter1 = 0x01, 00102 TMR_ISO180006B_Delimiter4 = 0x04 00103 }TMR_ISO180006B_Delimiter; 00104 #ifdef __cplusplus 00105 } 00106 #endif 00107 00108 #endif /*_TMR_ISO180006B_H*/