Program the control the fischertechnik robo interface or intelligent interface via tcp socket or via a java gui.

Dependencies:   mbed ConfigFile

Committer:
networker
Date:
Wed May 04 15:42:13 2011 +0000
Revision:
1:2c9d412ad471
Parent:
0:7f26f0680202
first publication (mbed challenge submission)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
networker 0:7f26f0680202 1 /** @file */
networker 0:7f26f0680202 2 /*******************************************************************************
networker 0:7f26f0680202 3 * (c) by Knobloch GmbH
networker 0:7f26f0680202 4 * Weedgasse 14
networker 0:7f26f0680202 5 * D-55234 Erbes-B�im
networker 0:7f26f0680202 6 *
networker 0:7f26f0680202 7 * Header: FtLib.h Headerfile for fischertechnik USB-Library
networker 0:7f26f0680202 8 *
networker 0:7f26f0680202 9 * Version: 0.60
networker 0:7f26f0680202 10 * Date: 10. May 2006
networker 0:7f26f0680202 11 *
networker 0:7f26f0680202 12 * Revision:
networker 0:7f26f0680202 13 * 0.60: 10. May 2006
networker 0:7f26f0680202 14 * New Name: GetAnzFtUsbDevice() --> GetNumFtUsbDevice()
networker 0:7f26f0680202 15 * ClearFtMessagePuffer() --> ClearFtMessageBuffer()
networker 0:7f26f0680202 16 ********************************************************************************/
networker 0:7f26f0680202 17
networker 0:7f26f0680202 18
networker 0:7f26f0680202 19 #ifndef _FT_LIBRARY_H_
networker 0:7f26f0680202 20 #define _FT_LIBRARY_H_
networker 0:7f26f0680202 21
networker 0:7f26f0680202 22 /** \cond doxygen ignore start */
networker 0:7f26f0680202 23 #define DWORD long int
networker 0:7f26f0680202 24 #define BYTE unsigned char
networker 0:7f26f0680202 25 #define USHORT unsigned short int
networker 0:7f26f0680202 26 #define UINT unsigned int
networker 0:7f26f0680202 27 #define UCHAR unsigned char
networker 0:7f26f0680202 28
networker 0:7f26f0680202 29 #define HANDLE int
networker 0:7f26f0680202 30 #define HWND int
networker 0:7f26f0680202 31 #define __stdcall
networker 0:7f26f0680202 32 #define LPCSTR char *
networker 0:7f26f0680202 33 #define LPVOID void *
networker 0:7f26f0680202 34 /** \endcond doxygen ignore end */
networker 0:7f26f0680202 35
networker 0:7f26f0680202 36 /// \brief Communication Area for ft-Device
networker 0:7f26f0680202 37 typedef struct _FT_TRANSFER_AREA
networker 0:7f26f0680202 38 {
networker 0:7f26f0680202 39 /// \brief Digital Inputs Main Module
networker 0:7f26f0680202 40 /// Base+0x00: | E8 | E7 | E6 | E5 | E4 | E3 | E2 | E1 |
networker 0:7f26f0680202 41 unsigned char E_Main;
networker 0:7f26f0680202 42
networker 0:7f26f0680202 43 /// \brief Digital Inputs Extension Modules 1
networker 0:7f26f0680202 44 /// Base+0x01: | E16| E15| E14| E13| E12| E11| E10| E9 |
networker 0:7f26f0680202 45 unsigned char E_Sub1;
networker 0:7f26f0680202 46 /// \brief Digital Inputs Extension Modules 2
networker 0:7f26f0680202 47 /// Base+0x02: | E24| E23| E22| E21| E20| E19| E18| E17|
networker 0:7f26f0680202 48 unsigned char E_Sub2;
networker 0:7f26f0680202 49 /// \brief Digital Inputs Extension Modules 3
networker 0:7f26f0680202 50 /// Base+0x03: | E32| E31| E30| E29| E28| E27| E26| E25|
networker 0:7f26f0680202 51 unsigned char E_Sub3;
networker 0:7f26f0680202 52
networker 0:7f26f0680202 53 /// \brief Reserved
networker 0:7f26f0680202 54 /// Base+0x04..0x0B
networker 0:7f26f0680202 55 unsigned char rsvd1[8];
networker 0:7f26f0680202 56
networker 0:7f26f0680202 57 /// \brief Abstandsensoren (1=detektiert)
networker 0:7f26f0680202 58 /// Base+0x0C: | 0 | 0 | 0 | 0 | 0 | 0 | D2 | D1 |
networker 0:7f26f0680202 59 unsigned char Distance;
networker 0:7f26f0680202 60
networker 0:7f26f0680202 61 /// \brief Base+0x0D: reserved
networker 0:7f26f0680202 62 unsigned char rsvd2;
networker 0:7f26f0680202 63
networker 0:7f26f0680202 64 /// \brief IR-Receiver input code
networker 0:7f26f0680202 65 ///
networker 0:7f26f0680202 66 /// Base+0x0E: | 0 | 0 | 0 | C | T | T | T | T
networker 0:7f26f0680202 67 /// C = Code: 0 = Code 1 active, 1 = Code 2 active
networker 0:7f26f0680202 68 /// TTTT = Keycode 0..11
networker 0:7f26f0680202 69 /// Arangement of keys on Transmitter
networker 0:7f26f0680202 70 /// 1 8
networker 0:7f26f0680202 71 /// 2 7
networker 0:7f26f0680202 72 /// 3 10
networker 0:7f26f0680202 73 /// 4 9
networker 0:7f26f0680202 74 /// 5 11
networker 0:7f26f0680202 75 /// 6
networker 0:7f26f0680202 76 /// Taste 1 = M3 right
networker 0:7f26f0680202 77 /// Taste 2 = M3 left
networker 0:7f26f0680202 78 /// Taste 3 = Speed. M1
networker 0:7f26f0680202 79 /// Taste 4 = Speed. M2
networker 0:7f26f0680202 80 /// Taste 5 = Speed. M3
networker 0:7f26f0680202 81 /// Taste 6 = Code 2
networker 0:7f26f0680202 82 /// Taste 7 = M1 backward
networker 0:7f26f0680202 83 /// Taste 8 = M1 forward
networker 0:7f26f0680202 84 /// Taste 9 = M2 left
networker 0:7f26f0680202 85 /// Taste 10 = M2 right
networker 0:7f26f0680202 86 /// Taste 11 = Code 1
networker 0:7f26f0680202 87 unsigned char IRKeys;
networker 0:7f26f0680202 88
networker 0:7f26f0680202 89 /// \brief Base+0x0F: | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
networker 0:7f26f0680202 90 unsigned char res_1;
networker 0:7f26f0680202 91
networker 0:7f26f0680202 92 /// \brief Analoginput of main module
networker 0:7f26f0680202 93 ///
networker 0:7f26f0680202 94 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 95 /// Base+0x10..0x11: AX (Master Modul)
networker 0:7f26f0680202 96 unsigned short AX;
networker 0:7f26f0680202 97 /// \brief Analoginput of main module
networker 0:7f26f0680202 98 ///
networker 0:7f26f0680202 99 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 100 /// Base+0x12..0x13: AY (Master Modul)
networker 0:7f26f0680202 101 unsigned short AY;
networker 0:7f26f0680202 102 /// \brief Analoginput of main module
networker 0:7f26f0680202 103 ///
networker 0:7f26f0680202 104 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 105 /// Base+0x14..0x15: A1 (Master Modul)
networker 0:7f26f0680202 106 unsigned short A1;
networker 0:7f26f0680202 107 /// \brief Analoginput of main module
networker 0:7f26f0680202 108 ///
networker 0:7f26f0680202 109 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 110 /// Base+0x16..0x17: A2 (Master Modul)
networker 0:7f26f0680202 111 unsigned short A2;
networker 0:7f26f0680202 112 /// \brief Analoginput of main module
networker 0:7f26f0680202 113 ///
networker 0:7f26f0680202 114 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 115 /// Base+0x18..0x19: AZ (Master Modul, vom SLAVE-Modul-BUS)
networker 0:7f26f0680202 116 unsigned short AZ;
networker 0:7f26f0680202 117 /// \brief Analoginput of main module
networker 0:7f26f0680202 118 ///
networker 0:7f26f0680202 119 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 120 /// Base+0x1A..0x1B: AV (Versorgungsspannung Master Modul)
networker 0:7f26f0680202 121 unsigned short AV;
networker 0:7f26f0680202 122 /// \brief Analoginput of main module
networker 0:7f26f0680202 123 ///
networker 0:7f26f0680202 124 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 125 /// Base+0x1C..0x1D: D1 (Abstandssensor 1)
networker 0:7f26f0680202 126 unsigned short D1;
networker 0:7f26f0680202 127 /// \brief Analoginput of main module
networker 0:7f26f0680202 128 ///
networker 0:7f26f0680202 129 /// 8x 16 Bit, Range 0..1023, L:H Format (intel) )
networker 0:7f26f0680202 130 /// Base+0x1E..0x1F: D2 (Abstandssensor 2)
networker 0:7f26f0680202 131 unsigned short D2;
networker 0:7f26f0680202 132
networker 0:7f26f0680202 133 /// \brief Analoginput of slave module 1
networker 0:7f26f0680202 134 ///
networker 0:7f26f0680202 135 /// Base+0x20..0x21: AX (Slave 1 Modul)
networker 0:7f26f0680202 136 unsigned short AXS1;
networker 0:7f26f0680202 137 /// \brief Analoginput of slave module 1
networker 0:7f26f0680202 138 ///
networker 0:7f26f0680202 139 /// Base+0x22..0x23: AX (Slave 2 Modul)
networker 0:7f26f0680202 140 unsigned short AXS2;
networker 0:7f26f0680202 141 /// \brief Analoginput of slave module 1
networker 0:7f26f0680202 142 ///
networker 0:7f26f0680202 143 /// Base+0x24..0x25: AX (Slave 3 Modul)
networker 0:7f26f0680202 144 unsigned short AXS3;
networker 0:7f26f0680202 145
networker 0:7f26f0680202 146 /// \brief Detection limit for distance sensor 1 ( to generate digital from analog input )
networker 0:7f26f0680202 147 ///
networker 0:7f26f0680202 148 /// Base+0x26..0x27: DS1
networker 0:7f26f0680202 149 unsigned short DS1;
networker 0:7f26f0680202 150 /// \brief Detection limit for distance sensor 2 ( to generate digital from analog input )
networker 0:7f26f0680202 151 ///
networker 0:7f26f0680202 152 /// Base+0x28..0x29: DS2
networker 0:7f26f0680202 153 unsigned short DS2;
networker 0:7f26f0680202 154
networker 0:7f26f0680202 155 /// \brief Reserved
networker 0:7f26f0680202 156 /// Base+0x2A..0x2B
networker 0:7f26f0680202 157 unsigned short ZE;
networker 0:7f26f0680202 158
networker 0:7f26f0680202 159 /// \brief Reserved
networker 0:7f26f0680202 160 /// Base+0x2C..0x2F
networker 0:7f26f0680202 161 unsigned char rsvd3[4];
networker 0:7f26f0680202 162
networker 0:7f26f0680202 163 /// \brief 16-Bit Timer
networker 0:7f26f0680202 164 ///
networker 0:7f26f0680202 165 /// Base+0x30..0x31: Timer 1ms Inkrement
networker 0:7f26f0680202 166 unsigned short Timer1ms;
networker 0:7f26f0680202 167 /// \brief 16-Bit Timer
networker 0:7f26f0680202 168 ///
networker 0:7f26f0680202 169 /// Base+0x32..0x33: Timer 10ms Inkrement
networker 0:7f26f0680202 170 unsigned short Timer10ms;
networker 0:7f26f0680202 171 /// \brief 16-Bit Timer
networker 0:7f26f0680202 172 ///
networker 0:7f26f0680202 173 /// Base+0x34..0x35: Timer 100ms Inkrement
networker 0:7f26f0680202 174 unsigned short Timer100ms;
networker 0:7f26f0680202 175 /// \brief 16-Bit Timer
networker 0:7f26f0680202 176 ///
networker 0:7f26f0680202 177 /// Base+0x36..0x37: Timer 1s Inkrement
networker 0:7f26f0680202 178 unsigned short Timer1s;
networker 0:7f26f0680202 179 /// \brief 16-Bit Timer
networker 0:7f26f0680202 180 ///
networker 0:7f26f0680202 181 /// Base+0x38..0x39: Timer 10s Inkrement
networker 0:7f26f0680202 182 unsigned short Timer10s;
networker 0:7f26f0680202 183 /// \brief 16-Bit Timer
networker 0:7f26f0680202 184 ///
networker 0:7f26f0680202 185 /// Base+0x3A..0x3B: Timer 1min Inkrement
networker 0:7f26f0680202 186 unsigned short Timer1min;
networker 0:7f26f0680202 187
networker 0:7f26f0680202 188 /// \brief Reserved
networker 0:7f26f0680202 189 /// Base+0x3C..0x3D
networker 0:7f26f0680202 190 unsigned short res_bF;
networker 0:7f26f0680202 191 /// \brief Reserved
networker 0:7f26f0680202 192 /// Base+0x3E
networker 0:7f26f0680202 193 unsigned char res_bT;
networker 0:7f26f0680202 194
networker 0:7f26f0680202 195 /// \brief Reserved
networker 0:7f26f0680202 196 /// Base+0x3F
networker 0:7f26f0680202 197 unsigned char rsvd4[1];
networker 0:7f26f0680202 198
networker 0:7f26f0680202 199 /// \brief Outputs of the main module ( polarity )
networker 0:7f26f0680202 200 ///
networker 0:7f26f0680202 201 /// Base+0x40: |M4B |M4A |M3B |M3A |M2B |M2A |M1B |M1A |
networker 0:7f26f0680202 202 unsigned char M_Main;
networker 0:7f26f0680202 203 /// \brief Outputs of extension module 1
networker 0:7f26f0680202 204 ///
networker 0:7f26f0680202 205 /// Base+0x41: |M8B |M8A |M7B |M7A |M6B |M6A |M5B |M5A |
networker 0:7f26f0680202 206 unsigned char M_Sub1;
networker 0:7f26f0680202 207 /// \brief Outputs of extension module 2
networker 0:7f26f0680202 208 ///
networker 0:7f26f0680202 209 /// Base+0x42: |M12B|M12A|M11B|M11A|M10B|M10A|M9B |M9A |
networker 0:7f26f0680202 210 unsigned char M_Sub2;
networker 0:7f26f0680202 211 /// \brief Outputs of extension module 3
networker 0:7f26f0680202 212 ///
networker 0:7f26f0680202 213 /// Base+0x43: |M16B|M16A|M15B|M15A|M14B|M14A|M13B|M13A|
networker 0:7f26f0680202 214 unsigned char M_Sub3;
networker 0:7f26f0680202 215
networker 0:7f26f0680202 216 /// \brief Reserved
networker 0:7f26f0680202 217 /// Base+0x44..0x47
networker 0:7f26f0680202 218 unsigned char rsvd5[4];
networker 0:7f26f0680202 219
networker 0:7f26f0680202 220 ///\brief Outputs of the main module ( energy saver mode )
networker 0:7f26f0680202 221 ///
networker 0:7f26f0680202 222 /// 1 = energy saver mode, 0 = operational, PowerUp = 1
networker 0:7f26f0680202 223 /// Base+0x48: | 0 | 0 | 0 | 0 | M4 | M3 | M2 | M1 |
networker 0:7f26f0680202 224 unsigned char MES_Main;
networker 0:7f26f0680202 225 /// \brief Outputs of extension module 1 ( energy saver mode )
networker 0:7f26f0680202 226 ///
networker 0:7f26f0680202 227 /// Base+0x49: | 0 | 0 | 0 | 0 | M8 | M7 | M6 | M5 |
networker 0:7f26f0680202 228 unsigned char MES_Sub1;
networker 0:7f26f0680202 229 /// \brief Outputs of extension module 2 ( energy saver mode )
networker 0:7f26f0680202 230 ///
networker 0:7f26f0680202 231 /// Base+0x4A: | 0 | 0 | 0 | 0 | M12| M11| M10| M9 |
networker 0:7f26f0680202 232 unsigned char MES_Sub2;
networker 0:7f26f0680202 233 /// \brief Outputs of extension module 3 ( energy saver mode )
networker 0:7f26f0680202 234 ///
networker 0:7f26f0680202 235 /// Base+0x4B: | 0 | 0 | 0 | 0 | M16| M15| M14| M13|
networker 0:7f26f0680202 236 unsigned char MES_Sub3;
networker 0:7f26f0680202 237
networker 0:7f26f0680202 238 /// \brief Reserved
networker 0:7f26f0680202 239 /// Base+0x4C
networker 0:7f26f0680202 240 unsigned char rsvd6[1];
networker 0:7f26f0680202 241
networker 0:7f26f0680202 242 /// \brief Reserved
networker 0:7f26f0680202 243 /// Base+0x4D:
networker 0:7f26f0680202 244 unsigned char reserved_l1;
networker 0:7f26f0680202 245 /// \brief Reserved
networker 0:7f26f0680202 246 /// Base+0x4E:
networker 0:7f26f0680202 247 unsigned char reserved_l2;
networker 0:7f26f0680202 248 /// \brief Reserved
networker 0:7f26f0680202 249 /// Base+0x4F:
networker 0:7f26f0680202 250 unsigned char reserved_l3;
networker 0:7f26f0680202 251
networker 0:7f26f0680202 252 /// \brief Outputs of the main module (PWM values, range =0..7)
networker 0:7f26f0680202 253 ///
networker 0:7f26f0680202 254 /// Base+0x50: M1A
networker 0:7f26f0680202 255 /// Base+0x51: M1B
networker 0:7f26f0680202 256 /// Base+0x52: M2A
networker 0:7f26f0680202 257 /// Base+0x53: M2B
networker 0:7f26f0680202 258 /// Base+0x54: M3A
networker 0:7f26f0680202 259 /// Base+0x55: M3B
networker 0:7f26f0680202 260 /// Base+0x56: M4A
networker 0:7f26f0680202 261 /// Base+0x57: M4B
networker 0:7f26f0680202 262 unsigned char MPWM_Main[8];
networker 0:7f26f0680202 263
networker 0:7f26f0680202 264 /// \brief Outputs of slave module 1 (PWM values, range =0..7)
networker 0:7f26f0680202 265 ///
networker 0:7f26f0680202 266 /// Base+0x58: M5A
networker 0:7f26f0680202 267 /// Base+0x59: M5B
networker 0:7f26f0680202 268 /// Base+0x5A: M6A
networker 0:7f26f0680202 269 /// Base+0x5B: M6B
networker 0:7f26f0680202 270 /// Base+0x5C: M7A
networker 0:7f26f0680202 271 /// Base+0x5D: M7B
networker 0:7f26f0680202 272 /// Base+0x5E: M8A
networker 0:7f26f0680202 273 /// Base+0x5F: M8B
networker 0:7f26f0680202 274 unsigned char MPWM_Sub1[8];
networker 0:7f26f0680202 275
networker 0:7f26f0680202 276 /// \brief Outputs of slave module 2 (PWM values, range =0..7)
networker 0:7f26f0680202 277 ///
networker 0:7f26f0680202 278 /// Base+0x60: M9A
networker 0:7f26f0680202 279 /// Base+0x61: M9B
networker 0:7f26f0680202 280 /// Base+0x62: M10A
networker 0:7f26f0680202 281 /// Base+0x63: M10B
networker 0:7f26f0680202 282 /// Base+0x64: M11A
networker 0:7f26f0680202 283 /// Base+0x65: M11B
networker 0:7f26f0680202 284 /// Base+0x66: M12A
networker 0:7f26f0680202 285 /// Base+0x67: M12B
networker 0:7f26f0680202 286 unsigned char MPWM_Sub2[8];
networker 0:7f26f0680202 287
networker 0:7f26f0680202 288 /// \brief Outputs of slave module 3 (PWM values, range =0..7)
networker 0:7f26f0680202 289 ///
networker 0:7f26f0680202 290 /// Base+0x68: M13A
networker 0:7f26f0680202 291 /// Base+0x69: M13B
networker 0:7f26f0680202 292 /// Base+0x6A: M14A
networker 0:7f26f0680202 293 /// Base+0x6B: M14B
networker 0:7f26f0680202 294 /// Base+0x6C: M15A
networker 0:7f26f0680202 295 /// Base+0x6D: M15B
networker 0:7f26f0680202 296 /// Base+0x6E: M16A
networker 0:7f26f0680202 297 /// Base+0x6F: M16B
networker 0:7f26f0680202 298 unsigned char MPWM_Sub3[8];
networker 0:7f26f0680202 299
networker 0:7f26f0680202 300 /// \brief Reserved
networker 0:7f26f0680202 301 /// Base+0x70..0x8F
networker 0:7f26f0680202 302 unsigned char rsvd7[32];
networker 0:7f26f0680202 303
networker 0:7f26f0680202 304
networker 0:7f26f0680202 305 /// \brief Analoginput of slave module 1 (Update-Time: 20ms)
networker 0:7f26f0680202 306 ///
networker 0:7f26f0680202 307 /// Base+0x90..0x91: A1 (Slave 1 Modul)
networker 0:7f26f0680202 308 unsigned short A1S1;
networker 0:7f26f0680202 309 /// \brief Analoginput of slave module 2 (Update-Time: 20ms)
networker 0:7f26f0680202 310 ///
networker 0:7f26f0680202 311 /// Base+0x92..0x93: A1 (Slave 2 Modul)
networker 0:7f26f0680202 312 unsigned short A1S2;
networker 0:7f26f0680202 313 /// \brief Analoginput of slave module 3 (Update-Time: 20ms)
networker 0:7f26f0680202 314 ///
networker 0:7f26f0680202 315 /// Base+0x94..0x95: A1 (Slave 3 Modul)
networker 0:7f26f0680202 316 unsigned short A1S3;
networker 0:7f26f0680202 317
networker 0:7f26f0680202 318 /// \brief Analoginput of slave modules 1 (Update-Time: 20ms)
networker 0:7f26f0680202 319 ///
networker 0:7f26f0680202 320 /// Base+0x96..0x97: AV (Slave 1 Modul)
networker 0:7f26f0680202 321 unsigned short AVS1;
networker 0:7f26f0680202 322 /// \brief Analoginput of slave modules 2 (Update-Time: 20ms)
networker 0:7f26f0680202 323 ///
networker 0:7f26f0680202 324 /// Base+0x98..0x99: AV (Slave 2 Modul)
networker 0:7f26f0680202 325 unsigned short AVS2;
networker 0:7f26f0680202 326 /// \brief Analoginput of slave modules 3 (Update-Time: 20ms)
networker 0:7f26f0680202 327 ///
networker 0:7f26f0680202 328 /// Base+0x9A..0x9B: AV (Slave 3 Modul)
networker 0:7f26f0680202 329 unsigned short AVS3;
networker 0:7f26f0680202 330
networker 0:7f26f0680202 331 /// \brief Reserved
networker 0:7f26f0680202 332 /// Base+0x9C..0x9F
networker 0:7f26f0680202 333 unsigned char rsvd8[4];
networker 0:7f26f0680202 334
networker 0:7f26f0680202 335 /// \brief Reserved
networker 0:7f26f0680202 336 /// Base+0xA0..0xA1: AX (Interface) Resistor-Value (0..5662 Ohm)
networker 0:7f26f0680202 337 unsigned short AX_R;
networker 0:7f26f0680202 338
networker 0:7f26f0680202 339 /// \brief Base+0xA2..0xA3: AY (Interface) Resistor-Value (0..5662 Ohm)
networker 0:7f26f0680202 340 unsigned short AY_R;
networker 0:7f26f0680202 341
networker 0:7f26f0680202 342 /// \brief Base+0xA4..0xA5: AX (Slave 1 Modul) Resistor-Value (0..5662 Ohm)
networker 0:7f26f0680202 343 unsigned short AXS1_R;
networker 0:7f26f0680202 344
networker 0:7f26f0680202 345 /// \brief Base+0xA6..0xA7: AX (Slave 2 Modul) Resistor-Value (0..5662 Ohm)
networker 0:7f26f0680202 346 unsigned short AXS2_R;
networker 0:7f26f0680202 347
networker 0:7f26f0680202 348 /// \brief Base+0xA8..0xA9: AX (Slave 3 Modul) Resistor-Value (0..5662 Ohm)
networker 0:7f26f0680202 349 unsigned short AXS3_R;
networker 0:7f26f0680202 350
networker 0:7f26f0680202 351 /// \brief Reserved
networker 0:7f26f0680202 352 /// Base+0xAA..0xDF
networker 0:7f26f0680202 353 unsigned char rsvd10[54];
networker 0:7f26f0680202 354
networker 0:7f26f0680202 355 /// \brief Operation mode
networker 0:7f26f0680202 356 /// Base+0xE0: 0x00=online, 0x01=binary download
networker 0:7f26f0680202 357 unsigned char Mode;
networker 0:7f26f0680202 358
networker 0:7f26f0680202 359 /// \brief Output PWM update (0x01=always, 0x02=once)
networker 0:7f26f0680202 360 /// Base+0xE1: | 0 | 0 | 0 | 0 | 0 | 0 |ONCE|ALWA|
networker 0:7f26f0680202 361 unsigned char MPWM_Update;
networker 0:7f26f0680202 362
networker 0:7f26f0680202 363 /// \brief Base+0xE2
networker 0:7f26f0680202 364 ///
networker 0:7f26f0680202 365 /// 0 = Transfer Area closed
networker 0:7f26f0680202 366 /// 1 = Transfer Area is working (Library Thread is running)
networker 0:7f26f0680202 367 unsigned char TransferAktiv;
networker 0:7f26f0680202 368
networker 0:7f26f0680202 369 /// \brief Reserved
networker 0:7f26f0680202 370 /// Base+0xE3..0xE5
networker 0:7f26f0680202 371 unsigned char rsvd11[3];
networker 0:7f26f0680202 372
networker 0:7f26f0680202 373 /// \brief I/O Extension modules connected
networker 0:7f26f0680202 374 ///
networker 0:7f26f0680202 375 /// Base+0xE6: | 0 | 0 | 0 | 0 | 0 | S2 | S1 | S0 |
networker 0:7f26f0680202 376 /// S2..S0 = Number of connected I/O Extension Modules
networker 0:7f26f0680202 377 unsigned char BusModules;
networker 0:7f26f0680202 378
networker 0:7f26f0680202 379 /// \brief Slot 1 connected extension module type
networker 0:7f26f0680202 380 /// Base+0xE7: ?
networker 0:7f26f0680202 381 unsigned char SlotModule1;
networker 0:7f26f0680202 382
networker 0:7f26f0680202 383 /// \brief Slot 2 connected extension module type
networker 0:7f26f0680202 384 /// Base+0xE8: ?
networker 0:7f26f0680202 385 unsigned char SlotModule2;
networker 0:7f26f0680202 386
networker 0:7f26f0680202 387 /// \brief Reserved
networker 0:7f26f0680202 388 /// Base+0xE9..0xEF
networker 0:7f26f0680202 389 unsigned char rsvd12[7];
networker 0:7f26f0680202 390
networker 0:7f26f0680202 391
networker 0:7f26f0680202 392 /// \brief Change Bytes
networker 0:7f26f0680202 393 ///
networker 0:7f26f0680202 394 /// 1 = EG (Master or Slave 1..3) have changed
networker 0:7f26f0680202 395 /// The Application must read and change this byte to "0"
networker 0:7f26f0680202 396 /// Base+0xF0:
networker 0:7f26f0680202 397 unsigned char ChangeEg;
networker 0:7f26f0680202 398
networker 0:7f26f0680202 399 /// \brief 1 = Analog Inputs (Master AX, AY, A1, A2, AV, AZ or Extension 1..3 AX,AY,AV)
networker 0:7f26f0680202 400 ///
networker 0:7f26f0680202 401 /// or RfPower, RfError have changed
networker 0:7f26f0680202 402 /// The Application must read and change this byte to "0"
networker 0:7f26f0680202 403 /// Base+0xF1:
networker 0:7f26f0680202 404 unsigned char ChangeAn;
networker 0:7f26f0680202 405
networker 0:7f26f0680202 406 /// \brief 1 = Infrared Input (Robo-IF) or RfStatus have changed
networker 0:7f26f0680202 407 ///
networker 0:7f26f0680202 408 /// The Application must read and change this byte to "0"
networker 0:7f26f0680202 409 /// Base+0xF2:
networker 0:7f26f0680202 410 unsigned char ChangeIr;
networker 0:7f26f0680202 411
networker 0:7f26f0680202 412
networker 0:7f26f0680202 413 /// \brief Reserved
networker 0:7f26f0680202 414 /// Base+0xF3..0xFF
networker 0:7f26f0680202 415 unsigned char rsvd13[13];
networker 0:7f26f0680202 416
networker 0:7f26f0680202 417
networker 0:7f26f0680202 418 /// \brief Digital inputs as 16 bit values
networker 0:7f26f0680202 419 ///
networker 0:7f26f0680202 420 /// Base+0x100..0x101 Input 1 (Master-Modul)
networker 0:7f26f0680202 421 /// Base+0x102..0x103 Input 2 (Master-Modul)
networker 0:7f26f0680202 422 /// Base+0x104..0x105 Input 3 (Master-Modul)
networker 0:7f26f0680202 423 /// Base+0x106..0x107 Input 4 (Master-Modul)
networker 0:7f26f0680202 424 /// Base+0x108..0x109 Input 5 (Master-Modul)
networker 0:7f26f0680202 425 /// Base+0x10A..0x10B Input 6 (Master-Modul)
networker 0:7f26f0680202 426 /// Base+0x10C..0x10D Input 7 (Master-Modul)
networker 0:7f26f0680202 427 /// Base+0x10E..0x10F Input 8 (Master-Modul)
networker 0:7f26f0680202 428 unsigned short E16_Main[8];
networker 0:7f26f0680202 429 /// \brief Digital inputs as 16 bit values
networker 0:7f26f0680202 430 ///
networker 0:7f26f0680202 431 /// Base+0x110..0x111 Input 9 (Slave1-Modul)
networker 0:7f26f0680202 432 /// Base+0x112..0x113 Input 10 (Slave1-Modul)
networker 0:7f26f0680202 433 /// Base+0x114..0x115 Input 11 (Slave1-Modul)
networker 0:7f26f0680202 434 /// Base+0x116..0x117 Input 12 (Slave1-Modul)
networker 0:7f26f0680202 435 /// Base+0x118..0x119 Input 13 (Slave1-Modul)
networker 0:7f26f0680202 436 /// Base+0x11A..0x11B Input 14 (Slave1-Modul)
networker 0:7f26f0680202 437 /// Base+0x11C..0x11D Input 15 (Slave1-Modul)
networker 0:7f26f0680202 438 /// Base+0x11E..0x11F Input 16 (Slave1-Modul)
networker 0:7f26f0680202 439 unsigned short E16_Sub1[8];
networker 0:7f26f0680202 440 /// \brief Digital inputs as 16 bit values
networker 0:7f26f0680202 441 ///
networker 0:7f26f0680202 442 /// Base+0x120..0x121 Input 17 (Slave2-Modul)
networker 0:7f26f0680202 443 /// Base+0x122..0x123 Input 18 (Slave2-Modul)
networker 0:7f26f0680202 444 /// Base+0x124..0x125 Input 19 (Slave2-Modul)
networker 0:7f26f0680202 445 /// Base+0x126..0x127 Input 20 (Slave2-Modul)
networker 0:7f26f0680202 446 /// Base+0x128..0x129 Input 21 (Slave2-Modul)
networker 0:7f26f0680202 447 /// Base+0x12A..0x12B Input 22 (Slave2-Modul)
networker 0:7f26f0680202 448 /// Base+0x12C..0x12D Input 23 (Slave2-Modul)
networker 0:7f26f0680202 449 /// Base+0x12E..0x12F Input 24 (Slave2-Modul)
networker 0:7f26f0680202 450 unsigned short E16_Sub2[8];
networker 0:7f26f0680202 451 /// \brief Digital inputs as 16 bit values
networker 0:7f26f0680202 452 ///
networker 0:7f26f0680202 453 /// Base+0x130..0x131 Input 25 (Slave3-Modul)
networker 0:7f26f0680202 454 /// Base+0x132..0x133 Input 26 (Slave3-Modul)
networker 0:7f26f0680202 455 /// Base+0x134..0x135 Input 27 (Slave3-Modul)
networker 0:7f26f0680202 456 /// Base+0x136..0x137 Input 28 (Slave3-Modul)
networker 0:7f26f0680202 457 /// Base+0x138..0x139 Input 29 (Slave3-Modul)
networker 0:7f26f0680202 458 /// Base+0x13A..0x13B Input 30 (Slave3-Modul)
networker 0:7f26f0680202 459 /// Base+0x13C..0x13D Input 31 (Slave3-Modul)
networker 0:7f26f0680202 460 /// Base+0x13E..0x13F Input 32 (Slave3-Modul)
networker 0:7f26f0680202 461 unsigned short E16_Sub3[8];
networker 0:7f26f0680202 462 /// \brief Distance sensors D1 & D2 (Master Modul)
networker 0:7f26f0680202 463 ///
networker 0:7f26f0680202 464 /// Base+0x140..0x141 Distance sensor D1 (Master-Modul)
networker 0:7f26f0680202 465 /// Base+0x142..0x143 Distance sensor D2 (Master-Modul)
networker 0:7f26f0680202 466 unsigned short Distance16[2];
networker 0:7f26f0680202 467
networker 0:7f26f0680202 468 /// \brief Reserved
networker 0:7f26f0680202 469 /// Base+0x144..0x14F
networker 0:7f26f0680202 470 unsigned char rsvd14[12];
networker 0:7f26f0680202 471
networker 0:7f26f0680202 472 /// \brief IR-Keys as 16 bit values (independent of code)
networker 0:7f26f0680202 473 ///
networker 0:7f26f0680202 474 /// Base+0x150..0x151 IR Taste 1 (M3R)
networker 0:7f26f0680202 475 /// Base+0x152..0x153 IR Taste 2 (M3L)
networker 0:7f26f0680202 476 /// Base+0x154..0x155 IR Taste 3 (M1)
networker 0:7f26f0680202 477 /// Base+0x156..0x157 IR Taste 4 (M2)
networker 0:7f26f0680202 478 /// Base+0x158..0x159 IR Taste 5 (M3)
networker 0:7f26f0680202 479 /// Base+0x15A..0x15B IR Taste 6 (Code2)
networker 0:7f26f0680202 480 /// Base+0x15C..0x15D IR Taste 7 (M1BW)
networker 0:7f26f0680202 481 /// Base+0x15E..0x15F IR Taste 8 (M1FW)
networker 0:7f26f0680202 482 /// Base+0x160..0x161 IR Taste 9 (M2L)
networker 0:7f26f0680202 483 /// Base+0x162..0x163 IR Taste 10 (M2R)
networker 0:7f26f0680202 484 /// Base+0x164..0x165 IR Taste 11 (Code1)
networker 0:7f26f0680202 485 unsigned short IRKeys16[11];
networker 0:7f26f0680202 486 /// \brief Reserved
networker 0:7f26f0680202 487 /// Base+0x166..0x16F
networker 0:7f26f0680202 488 unsigned char rsvd15[10];
networker 0:7f26f0680202 489
networker 0:7f26f0680202 490 /// \brief IR-Keys as 16 bit values (code 1)
networker 0:7f26f0680202 491 ///
networker 0:7f26f0680202 492 /// Base+0x170..0x171 IR Taste 1 (M3R) Code1
networker 0:7f26f0680202 493 /// Base+0x172..0x173 IR Taste 2 (M3L) Code1
networker 0:7f26f0680202 494 /// Base+0x174..0x175 IR Taste 3 (M1) Code1
networker 0:7f26f0680202 495 /// Base+0x176..0x177 IR Taste 4 (M2) Code1
networker 0:7f26f0680202 496 /// Base+0x178..0x179 IR Taste 5 (M3) Code1
networker 0:7f26f0680202 497 /// Base+0x17A..0x17B always 0
networker 0:7f26f0680202 498 /// Base+0x17C..0x17D IR Taste 7 (M1BW) Code1
networker 0:7f26f0680202 499 /// Base+0x17E..0x17F IR Taste 8 (M1FW) Code1
networker 0:7f26f0680202 500 /// Base+0x180..0x181 IR Taste 9 (M2L) Code1
networker 0:7f26f0680202 501 /// Base+0x182..0x183 IR Taste 10 (M2R) Code1
networker 0:7f26f0680202 502 /// Base+0x184..0x185 IR Taste 11 (Code1) Code1
networker 0:7f26f0680202 503 unsigned short IRKeys16Code1[11];
networker 0:7f26f0680202 504
networker 0:7f26f0680202 505 /// \brief Reserved
networker 0:7f26f0680202 506 ///
networker 0:7f26f0680202 507 /// Base+0x186..0x18F
networker 0:7f26f0680202 508 unsigned char rsvd16[10];
networker 0:7f26f0680202 509
networker 0:7f26f0680202 510 /// \brief IR-Keys as 16 bit values (code 1)
networker 0:7f26f0680202 511 ///
networker 0:7f26f0680202 512 /// Base+0x190..0x191 IR Taste 1 (M3R) Code2
networker 0:7f26f0680202 513 /// Base+0x192..0x193 IR Taste 2 (M3L) Code2
networker 0:7f26f0680202 514 /// Base+0x194..0x195 IR Taste 3 (M1) Code2
networker 0:7f26f0680202 515 /// Base+0x196..0x197 IR Taste 4 (M2) Code2
networker 0:7f26f0680202 516 /// Base+0x198..0x199 IR Taste 5 (M3) Code2
networker 0:7f26f0680202 517 /// Base+0x19A..0x19B IR Taste 6 (Code2) Code2
networker 0:7f26f0680202 518 /// Base+0x19C..0x19D IR Taste 7 (M1BW) Code2
networker 0:7f26f0680202 519 /// Base+0x19E..0x19F IR Taste 8 (M1FW) Code2
networker 0:7f26f0680202 520 /// Base+0x1A0..0x1A1 IR Taste 9 (M2LE) Code2
networker 0:7f26f0680202 521 /// Base+0x1A2..0x1A3 IR Taste 10 (M2RI) Code2
networker 0:7f26f0680202 522 /// Base+0x1A4..0x1A5 always 0
networker 0:7f26f0680202 523 unsigned short IRKeys16Code2[11];
networker 0:7f26f0680202 524
networker 0:7f26f0680202 525 /// \brief Reserved
networker 0:7f26f0680202 526 ///
networker 0:7f26f0680202 527 /// Base+0x1A6..0x1AF
networker 0:7f26f0680202 528 unsigned char rsvd17[10];
networker 0:7f26f0680202 529
networker 0:7f26f0680202 530 /// \brief 1 = RfError (0x1B4..0x1B5) is > 25. We think, Rf connection (only Onlinemodus) is lost
networker 0:7f26f0680202 531 ///
networker 0:7f26f0680202 532 /// Base+0x1B0..0x1B1
networker 0:7f26f0680202 533 unsigned short RfStatus;
networker 0:7f26f0680202 534
networker 0:7f26f0680202 535 /// \brief Signal Power of the RF Signal entering the RF input (only Onlinemodus, 7 bit, 0..127)
networker 0:7f26f0680202 536 ///
networker 0:7f26f0680202 537 /// Base+0x1B2..0x1B3
networker 0:7f26f0680202 538 unsigned short RfPower;
networker 0:7f26f0680202 539
networker 0:7f26f0680202 540 /// \brief Rf-Error Count (0..250)
networker 0:7f26f0680202 541 ///
networker 0:7f26f0680202 542 /// Base+0x1B4..0x1B5
networker 0:7f26f0680202 543 unsigned short RfError;
networker 0:7f26f0680202 544
networker 0:7f26f0680202 545 /// \brief Number of Messages inside the Buffer
networker 0:7f26f0680202 546 ///
networker 0:7f26f0680202 547 /// Base+0x1B6..0x1B7
networker 0:7f26f0680202 548 unsigned short MsgNumInBuffer;
networker 0:7f26f0680202 549
networker 0:7f26f0680202 550 /// \brief Number of Interface-RF-Modul if installed or "-1" if not installed
networker 0:7f26f0680202 551 ///
networker 0:7f26f0680202 552 /// Base+0x1B8..0x1B9
networker 0:7f26f0680202 553 unsigned short RfModulNr;
networker 0:7f26f0680202 554
networker 0:7f26f0680202 555 /// \brief Reserved
networker 0:7f26f0680202 556 /// Base+0x1BA..0x1BB
networker 0:7f26f0680202 557 unsigned char rsvd19[2];
networker 0:7f26f0680202 558
networker 0:7f26f0680202 559 /// \brief Reserved for Internal Use
networker 0:7f26f0680202 560 /// Base+0x1BC..0x1BF
networker 0:7f26f0680202 561 DWORD dwTC;
networker 0:7f26f0680202 562
networker 0:7f26f0680202 563 /// \brief Reserved
networker 0:7f26f0680202 564 /// Base+0x1C0..0x1FF
networker 0:7f26f0680202 565 unsigned char rsvd20[64];
networker 0:7f26f0680202 566
networker 0:7f26f0680202 567 } FT_TRANSFER_AREA;
networker 0:7f26f0680202 568 /** \fn typedef FT_TRANSFER_AREA
networker 0:7f26f0680202 569 * Type definition for the transfer area.
networker 0:7f26f0680202 570 */
networker 0:7f26f0680202 571
networker 0:7f26f0680202 572 struct ft_handle_devices;//forward declaration
networker 0:7f26f0680202 573 typedef struct ft_handle_devices *FT_HANDLE;
networker 0:7f26f0680202 574
networker 0:7f26f0680202 575 /** \cond doxygen ignore start */
networker 0:7f26f0680202 576
networker 0:7f26f0680202 577 bool test_and_set(int& s);
networker 0:7f26f0680202 578 void increment(int& s);
networker 0:7f26f0680202 579
networker 0:7f26f0680202 580 FT_HANDLE OpenFtCommDevice(char *sDevice, long int dwTyp, long int dwZyklus);
networker 0:7f26f0680202 581 int GetFtStatus(FT_HANDLE hFt, int *num);
networker 0:7f26f0680202 582 long int GetFtDeviceTypeString(FT_HANDLE hft, char *dest, int len);
networker 0:7f26f0680202 583 char *GetLibVersionStrg();
networker 0:7f26f0680202 584 long int SetRFMode(FT_HANDLE hFt, long int frequency, long int callSign);
networker 0:7f26f0680202 585 long int GetRFMode(FT_HANDLE hFt, long int *frequency, long int *callSign);
networker 0:7f26f0680202 586 long int SetRealSerial(FT_HANDLE hFt, unsigned char bOn);
networker 0:7f26f0680202 587 char IsFtInterfaceConnected(FT_HANDLE hFt);
networker 0:7f26f0680202 588
networker 0:7f26f0680202 589 // Numbers from GetFtDeviceTyp()
networker 0:7f26f0680202 590 #define NO_FT_DEVICE 0 // No ft Device connected
networker 0:7f26f0680202 591 #define FT_AUTO_TYPE 1 // Search for Device
networker 0:7f26f0680202 592 #define FT_INTELLIGENT_IF 10 // FT-Intelligent Interface connect (serial)
networker 0:7f26f0680202 593 #define FT_INTELLIGENT_IF_SLAVE 20 // FT-Intelligent Interface with Extension connect (serial)
networker 0:7f26f0680202 594 #define FT_ROBO_IF_IIM 50 // FT-Robo Interface with Intelligent-Interface-Modus connect (serial)
networker 0:7f26f0680202 595 #define FT_ROBO_IF_USB 60 // FT-Robo Interface connect with USB-Port
networker 0:7f26f0680202 596 #define FT_ROBO_IF_COM 70 // FT-Robo Interface connect with COM- (serial-) Port
networker 0:7f26f0680202 597 #define FT_ROBO_IF_OVER_RF 80 // FT-Robo Interface connect over RF-Data-Link
networker 0:7f26f0680202 598 #define FT_ROBO_IO_EXTENSION 90 // FT-Robo I/O-Extension
networker 0:7f26f0680202 599 #define FT_ROBO_RF_DATA_LINK 110 // FT-Robo RF Data Link
networker 0:7f26f0680202 600 #define FT_MAX_TYP_NUMBER 999 // Max Typ Number
networker 0:7f26f0680202 601
networker 0:7f26f0680202 602
networker 0:7f26f0680202 603 #define FT_ANALOG_CYCLE 5 // Standard: 5*Read Digital Inputs, then EX, EY
networker 0:7f26f0680202 604 // Only for old Intelligent Interface { for OpenFtCommDevice() }
networker 0:7f26f0680202 605
networker 0:7f26f0680202 606
networker 0:7f26f0680202 607 #define PORT_NONE 0
networker 0:7f26f0680202 608 #define PORT_COM 1 // Standard: COM1
networker 0:7f26f0680202 609 #define PORT_COM1 1
networker 0:7f26f0680202 610 #define PORT_COM2 2
networker 0:7f26f0680202 611 #define PORT_COM3 3
networker 0:7f26f0680202 612 #define PORT_COM4 4
networker 0:7f26f0680202 613 #define PORT_USB 50
networker 0:7f26f0680202 614
networker 0:7f26f0680202 615 // Moduletypes for Robo Interface
networker 0:7f26f0680202 616 #define MODULE_NOT_INSTALLED 0 // Not installed
networker 0:7f26f0680202 617 #define MODULE_RF1 1 // RF Data Link Module is installed
networker 0:7f26f0680202 618
networker 0:7f26f0680202 619
networker 0:7f26f0680202 620 #define LEN_STRG1 30 // Length of SN / FW Strings
networker 0:7f26f0680202 621 #define LEN_STRG2 255 // Length of Name-Strigs
networker 0:7f26f0680202 622 #define ANZ_DISTANCE_TYPES 2 // Number of supported Distance-Modes
networker 0:7f26f0680202 623 #define LEN_DIST_TYPE_NAMES 30 // Lenght of Mode-Names
networker 0:7f26f0680202 624 #define LEN_DIST_VAR_NAMES 20 // Lenght of Variable-Names
networker 0:7f26f0680202 625 #define NAME_LEN 85 // Lenght of Prog-Names
networker 0:7f26f0680202 626
networker 0:7f26f0680202 627
networker 0:7f26f0680202 628 #define MEM_FLASH1 0 // Use Memory FLASH-1 Block
networker 0:7f26f0680202 629 #define MEM_FLASH2 1 // Use Memory FLASH-2 Block
networker 0:7f26f0680202 630 #define MEM_RAM 2 // Use Memory RAM Block
networker 0:7f26f0680202 631 #define MEM_NO_ACCESS -1 // No Memory Select (for SetFtProgramActiv() )
networker 0:7f26f0680202 632 #define DOWNLOAD_PROG_NAMELEN 80 // Max. 80 characters/bytes for the programname
networker 0:7f26f0680202 633
networker 0:7f26f0680202 634 // Values for "dwParameter" from DownloadFtProgram()
networker 0:7f26f0680202 635 #define PROG_TYP_NORMAL 1 // Program can bei Start with Software and Switch
networker 0:7f26f0680202 636 #define PROG_TYP_AUTOSTART 2 // Program is startable at Power-On
networker 0:7f26f0680202 637
networker 0:7f26f0680202 638
networker 0:7f26f0680202 639 // COM-Modes for SetFtDeviceCommMode()
networker 0:7f26f0680202 640 #define IF_COM_ONLINE 1 // Online Mode
networker 0:7f26f0680202 641 #define IF_COM_MESSAGE 3 // Messagemode
networker 0:7f26f0680202 642 #define IF_COM_DATA 4 // Datatransfer
networker 0:7f26f0680202 643 #define IF_COM_PARAMETER 5 // Get Mode
networker 0:7f26f0680202 644
networker 0:7f26f0680202 645
networker 0:7f26f0680202 646 // Message-System
networker 0:7f26f0680202 647 #define MSG_HWID_SELF 0 // Message for himself
networker 0:7f26f0680202 648 #define MSG_HWID_SER 1 // Message for the Robo-Interface serial port
networker 0:7f26f0680202 649 #define MSG_HWID_RF 2 // Message for other Interfaces (over RF)
networker 0:7f26f0680202 650 #define MSG_HWID_RF_SELF 3 // Message for other Interfaces (over RF) and for himself (back over RF)
networker 0:7f26f0680202 651
networker 0:7f26f0680202 652 #define MSG_BUFF_SER 1 // SER-Messagebuffer (for ClearRfMessage() )
networker 0:7f26f0680202 653 #define MSG_BUFF_RF 2 // RF-Messagebuffer (for ClearRfMessage() )
networker 0:7f26f0680202 654 #define MSG_BUFF_SELF 4 // SELF-Messagebuffer (for ClearRfMessage() )
networker 0:7f26f0680202 655
networker 0:7f26f0680202 656 #define MSG_SEND_NORMAL 0 // Message send "normal"
networker 0:7f26f0680202 657 #define MSG_SEND_OTHER_THAN_LAST 1 // Message send "if not the same as the last message"
networker 0:7f26f0680202 658 #define MSG_SEND_IF_NOT_PRESENT 2 // Message send "if not present in the send buffer"
networker 0:7f26f0680202 659
networker 0:7f26f0680202 660
networker 0:7f26f0680202 661
networker 0:7f26f0680202 662 // Interface Distancesensor-Inputs Type
networker 0:7f26f0680202 663 #define IF_DS_INPUT_VOLTAGE 0 // Voltage
networker 0:7f26f0680202 664 #define IF_DS_INPUT_DISTANCE 1 // Distance
networker 0:7f26f0680202 665 #define IF_DS_INPUT_TOL_STD 20 // Toleranz (Standard)
networker 0:7f26f0680202 666 #define IF_DS_INPUT_REP_STD 3 // Repeat (Standard)
networker 0:7f26f0680202 667
networker 0:7f26f0680202 668
networker 0:7f26f0680202 669 #ifndef FT_H
networker 0:7f26f0680202 670 #pragma pack( push, 1 )
networker 0:7f26f0680202 671 typedef union
networker 0:7f26f0680202 672 {
networker 0:7f26f0680202 673 BYTE aucMsg[6];
networker 0:7f26f0680202 674
networker 0:7f26f0680202 675 struct
networker 0:7f26f0680202 676 {
networker 0:7f26f0680202 677 BYTE ucHwId;
networker 0:7f26f0680202 678 BYTE ucSubId;
networker 0:7f26f0680202 679 BYTE ucB0;
networker 0:7f26f0680202 680 BYTE ucB1;
networker 0:7f26f0680202 681 BYTE ucB2;
networker 0:7f26f0680202 682 BYTE ucB3;
networker 0:7f26f0680202 683 } B;
networker 0:7f26f0680202 684
networker 0:7f26f0680202 685 struct
networker 0:7f26f0680202 686 {
networker 0:7f26f0680202 687 BYTE ucHwId;
networker 0:7f26f0680202 688 BYTE ucSubId;
networker 0:7f26f0680202 689 USHORT uiMsgId;
networker 0:7f26f0680202 690 USHORT uiMsg;
networker 0:7f26f0680202 691 } W;
networker 0:7f26f0680202 692
networker 0:7f26f0680202 693 struct
networker 0:7f26f0680202 694 {
networker 0:7f26f0680202 695 BYTE ucHwId;
networker 0:7f26f0680202 696 BYTE ucSubId;
networker 0:7f26f0680202 697 DWORD dw;
networker 0:7f26f0680202 698 } L;
networker 0:7f26f0680202 699 } SMESSAGE;
networker 0:7f26f0680202 700 #pragma pack( pop )
networker 0:7f26f0680202 701 #endif
networker 0:7f26f0680202 702
networker 0:7f26f0680202 703 //typedef void * FT_HANDLE;
networker 0:7f26f0680202 704 typedef void (*DATA_UPDATE_CALLBACK)(void* Context);
networker 0:7f26f0680202 705 typedef void (*MSG_UPDATE_CALLBACK)(SMESSAGE *);
networker 0:7f26f0680202 706
networker 0:7f26f0680202 707
networker 0:7f26f0680202 708
networker 0:7f26f0680202 709 // Important:
networker 0:7f26f0680202 710 // Initialise all unused Variables in this Structure with "NULL"
networker 0:7f26f0680202 711 //
networker 0:7f26f0680202 712 // Every Time the driver reads new information from the Device
networker 0:7f26f0680202 713 // the Library checks this structure
networker 0:7f26f0680202 714 typedef struct _NOTIFICATION_EVENTS
networker 0:7f26f0680202 715 {
networker 0:7f26f0680202 716 // Callback-Procedure
networker 0:7f26f0680202 717 DATA_UPDATE_CALLBACK NotificationCallback; // Pointer to the Callback-Procedure
networker 0:7f26f0680202 718 void* Context; // Pointer to the Context for the Callback-Procedure
networker 0:7f26f0680202 719
networker 0:7f26f0680202 720 // for SetEvent()
networker 0:7f26f0680202 721 HANDLE hEvent;
networker 0:7f26f0680202 722
networker 0:7f26f0680202 723 // for posting a Message (PostMessage() with wParam & lParam = 0)
networker 0:7f26f0680202 724 HWND WindowsHandle; // handle to the destination window
networker 0:7f26f0680202 725 DWORD Message; // message ID
networker 0:7f26f0680202 726
networker 0:7f26f0680202 727
networker 0:7f26f0680202 728 // Callback-Procedure for Messaging
networker 0:7f26f0680202 729 MSG_UPDATE_CALLBACK CallbackMessage; // Pointer to the Callback-Procedure for Receiving Messages
networker 0:7f26f0680202 730
networker 0:7f26f0680202 731 }
networker 0:7f26f0680202 732 NOTIFICATION_EVENTS;
networker 0:7f26f0680202 733
networker 0:7f26f0680202 734
networker 0:7f26f0680202 735
networker 0:7f26f0680202 736
networker 0:7f26f0680202 737 typedef struct _FT_SERIAL_NUMBER
networker 0:7f26f0680202 738 {
networker 0:7f26f0680202 739 DWORD dwSn; // actually Serial Number at Power On
networker 0:7f26f0680202 740 DWORD dwSn1; // Serial Number-1
networker 0:7f26f0680202 741 DWORD dwSn2; // Serial Number-2
networker 0:7f26f0680202 742 DWORD dwSnAktiv; // Serial Number Activ (1/2) for next Power On
networker 0:7f26f0680202 743 } FT_SERIAL_NUMBER;
networker 0:7f26f0680202 744
networker 0:7f26f0680202 745
networker 0:7f26f0680202 746
networker 0:7f26f0680202 747 typedef struct _FT_DISTANCE // Robo Interface Distance Sensor
networker 0:7f26f0680202 748 {
networker 0:7f26f0680202 749 unsigned char aDistModeNames[LEN_DIST_TYPE_NAMES]; // RO Names for the Modes
networker 0:7f26f0680202 750
networker 0:7f26f0680202 751 DWORD dwEnableDisVal1; // RO 1=Ask for Distance Value 1
networker 0:7f26f0680202 752 unsigned char aDisVal1Name[LEN_DIST_VAR_NAMES]; // RO Value 1 Name
networker 0:7f26f0680202 753 DWORD dwDisVal1; // RW Value 1
networker 0:7f26f0680202 754
networker 0:7f26f0680202 755 DWORD dwEnableDisVal2; // RO 1=Ask for Distance Value 2
networker 0:7f26f0680202 756 unsigned char aDisVal2Name[LEN_DIST_VAR_NAMES]; // RO Value 2 Name
networker 0:7f26f0680202 757 DWORD dwDisVal2; // RW Value 2
networker 0:7f26f0680202 758
networker 0:7f26f0680202 759 DWORD dwEnableDisVal3; // RO 1=Ask for Distance Value 3
networker 0:7f26f0680202 760 unsigned char aDisVal3Name[LEN_DIST_VAR_NAMES]; // RO Value 3 Name
networker 0:7f26f0680202 761 DWORD dwDisVal3; // RW Value 3
networker 0:7f26f0680202 762
networker 0:7f26f0680202 763 DWORD dwEnableDisVal4; // RO 1=Ask for Distance Value 4
networker 0:7f26f0680202 764 unsigned char aDisVal4Name[LEN_DIST_VAR_NAMES]; // RO Value 4 Name
networker 0:7f26f0680202 765 DWORD dwDisVal4; // RW Value 4
networker 0:7f26f0680202 766
networker 0:7f26f0680202 767 DWORD dwEnableDisVal5; // RO 1=Ask for Distance Value 5
networker 0:7f26f0680202 768 unsigned char aDisVal5Name[LEN_DIST_VAR_NAMES]; // RO Value 5 Name
networker 0:7f26f0680202 769 DWORD dwDisVal5; // RW Value 5
networker 0:7f26f0680202 770
networker 0:7f26f0680202 771 DWORD dwEnableDisVal6; // RO 1=Ask for Distance Value 6
networker 0:7f26f0680202 772 unsigned char aDisVal6Name[LEN_DIST_VAR_NAMES]; // RO Value 6 Name
networker 0:7f26f0680202 773 DWORD dwDisVal6; // RW Value 6
networker 0:7f26f0680202 774
networker 0:7f26f0680202 775 DWORD dwEnableDisVal7; // RO 1=Ask for Distance Value 7
networker 0:7f26f0680202 776 unsigned char aDisVal7Name[LEN_DIST_VAR_NAMES]; // RO Value 7 Name
networker 0:7f26f0680202 777 DWORD dwDisVal7; // RW Value 7
networker 0:7f26f0680202 778
networker 0:7f26f0680202 779 DWORD dwEnableDisVal8; // RO 1=Ask for Distance Value 8
networker 0:7f26f0680202 780 unsigned char aDisVal8Name[LEN_DIST_VAR_NAMES]; // RO Value 8 Name
networker 0:7f26f0680202 781 DWORD dwDisVal8; // RW Value 8
networker 0:7f26f0680202 782 } FT_DISTANCE;
networker 0:7f26f0680202 783
networker 0:7f26f0680202 784
networker 0:7f26f0680202 785
networker 0:7f26f0680202 786 typedef union _FT_SETTING
networker 0:7f26f0680202 787 {
networker 0:7f26f0680202 788 struct // RO = Read Only, RW = Read / Write
networker 0:7f26f0680202 789 {
networker 0:7f26f0680202 790 DWORD dwIfTyp; // RO Type of connected Device
networker 0:7f26f0680202 791 // possible Values:
networker 0:7f26f0680202 792 // NO_FT_DEVICE no answer from the Device - is it gone ?
networker 0:7f26f0680202 793 // FT_INTELLIGENT_IF FT-Intelligent Interface connect (serial)
networker 0:7f26f0680202 794 // FT_ROBO_IF_IIM FT-Robo Interface with Intelligent-Interface-Modus connect (serial)
networker 0:7f26f0680202 795 // FT_ROBO_IF_USB FT-Robo Interface connect with USB-Port
networker 0:7f26f0680202 796 // FT_ROBO_IF_COM FT-Robo Interface connect with COM- (serial-) Port
networker 0:7f26f0680202 797 // FT_ROBO_IO_EXTENSION FT-Robo I/O-Extension
networker 0:7f26f0680202 798 // FT_ROBO_RF_DATA_LINK FT-Robo RF Data Link
networker 0:7f26f0680202 799 // FT_ROBO_IF_OVER_RF FT-Robo Interface connect over RF-Data-Link
networker 0:7f26f0680202 800
networker 0:7f26f0680202 801 // Serial numbers section
networker 0:7f26f0680202 802 DWORD dwSn; // RO actually Serial Number at Power On
networker 0:7f26f0680202 803 DWORD dwSn1; // RW Serial Number-1 (only FT-Robo Products)
networker 0:7f26f0680202 804 DWORD dwSn2; // RO Serial Number-2 (only FT-Robo Products)
networker 0:7f26f0680202 805 DWORD dwSnAktiv; // RW Set Serial Number Activ (1/2) for next Power On
networker 0:7f26f0680202 806
networker 0:7f26f0680202 807 DWORD dwFw; // RO Is Firmware Version for this product (only FT-Robo Products)
networker 0:7f26f0680202 808
networker 0:7f26f0680202 809 unsigned char aSnStrg[LEN_STRG1]; // RO String with Serialnumber (only FT-Robo Products)
networker 0:7f26f0680202 810 unsigned char aSn1Strg[LEN_STRG1]; // RO String with Serialnumber1 (only FT-Robo Products)
networker 0:7f26f0680202 811 unsigned char aSn2Strg[LEN_STRG1]; // RO String with Serialnumber2 (only FT-Robo Products)
networker 0:7f26f0680202 812 unsigned char aFwStrg[LEN_STRG1]; // RO String with Firmware (only FT-Robo Products)
networker 0:7f26f0680202 813 unsigned char aSNaStrg[LEN_STRG2]; // RO String with Short-Name (only FT-Robo Products)
networker 0:7f26f0680202 814 unsigned char aLNaStrg[LEN_STRG2]; // RO String with Long-Name (only FT-Robo Products)
networker 0:7f26f0680202 815
networker 0:7f26f0680202 816 DWORD dwFwRoboIfVerAtLibIsMade; // RO Robo-If Firmware Version as this Lib is made
networker 0:7f26f0680202 817 DWORD dwFwIoExtVerAtLibIsMade; // RO IO-Extension Firmware Version as this Lib is made
networker 0:7f26f0680202 818 DWORD dwFwRfDataVerAtLibIsMade; // RO RF-DataLink Firmware Version as this Lib is made
networker 0:7f26f0680202 819 unsigned char aFwRoboIfVerAtLibIsMadeStrg[LEN_STRG1]; // RO String with Robo-If Firmware Version as this Lib is made
networker 0:7f26f0680202 820 unsigned char aFwIoExtVerAtLibIsMadeStrg[LEN_STRG1]; // RO String with IO-Extension Firmware Version as this Lib is made
networker 0:7f26f0680202 821 unsigned char aFwRfDataVerAtLibIsMadeStrg[LEN_STRG1]; // RO String with Rf-Data-Link Firmware Version as this Lib is made
networker 0:7f26f0680202 822
networker 0:7f26f0680202 823 DWORD dwReserved; // Reserved for later use
networker 0:7f26f0680202 824
networker 0:7f26f0680202 825
networker 0:7f26f0680202 826 // Output Section
networker 0:7f26f0680202 827 DWORD dwOutputAutoOff[4]; // RW M1=[0]...M4=[3] Energy saver:
networker 0:7f26f0680202 828 // "1" = "Power Off" motor driver when both outputs logical "0" (reduces Energy)
networker 0:7f26f0680202 829 // "0" = do not automatically disable the motor driver
networker 0:7f26f0680202 830 DWORD dwOutputPwmType; // RW PWM-Type (Today only "0" supported)
networker 0:7f26f0680202 831
networker 0:7f26f0680202 832
networker 0:7f26f0680202 833 // Robo Interface Distance Sensor
networker 0:7f26f0680202 834 DWORD dwAnzDistanceModes; // RO Number of supported Distance Modes (Array Entries)
networker 0:7f26f0680202 835 DWORD dwDistanceMode; // RW Type and Mode for Distance-Sensor (Index-Number in the range 0...ANZ_DISTANCE_TYPES)
networker 0:7f26f0680202 836 FT_DISTANCE sDistance[ANZ_DISTANCE_TYPES]; // RW Values for setting
networker 0:7f26f0680202 837
networker 0:7f26f0680202 838
networker 0:7f26f0680202 839 // Robo Interface Memory Section
networker 0:7f26f0680202 840 DWORD dwProg[3]; // RO 1=Program is saved in the Memory block; [0]=Flash-1 [1]=Flash-2 [2]=Ram
networker 0:7f26f0680202 841 unsigned char aProgNames[3][NAME_LEN]; // RO [0]=Flash-1 Prog Name; [1]=Flash-2 Prog Name; [2]=Ram Prog-Name
networker 0:7f26f0680202 842 DWORD dwF1AutoStart; // RO 1=Autostart Flash-1 programm, 0=no autostart
networker 0:7f26f0680202 843
networker 0:7f26f0680202 844
networker 0:7f26f0680202 845 // Robo Interface Module Section
networker 0:7f26f0680202 846 DWORD dwMod1Typ; // RO Type of left Module (only Robo-If)
networker 0:7f26f0680202 847 DWORD dwMod2Typ; // RO Type of right Module (only Robo-If)
networker 0:7f26f0680202 848 // possible Values:
networker 0:7f26f0680202 849 // MODULE_NOT_INSTALLED No Module is installed
networker 0:7f26f0680202 850 // MODULE_RF1 RF Data Link is installed
networker 0:7f26f0680202 851
networker 0:7f26f0680202 852 unsigned char aMod1Strg[LEN_STRG1]; // RO String with Module-1 Name (only FT-Robo Products)
networker 0:7f26f0680202 853 unsigned char aMod2Strg[LEN_STRG1]; // RO String with Module-2 Name (only FT-Robo Products)
networker 0:7f26f0680202 854
networker 0:7f26f0680202 855
networker 0:7f26f0680202 856 // Robo Interface & RF Data Link Section
networker 0:7f26f0680202 857 DWORD dwRfOn; // RW 0=disable RF 1=Enable RF
networker 0:7f26f0680202 858 DWORD dwRfChannel; // RW Channel-Number (2..80) for RF-Communication
networker 0:7f26f0680202 859 DWORD dwRfSubChannel; // RW Sub-Channel of Device for the specified Channel (1..3)
networker 0:7f26f0680202 860 DWORD dwRfMessage; // RW 0=Disable Message-Router Function 1=Enable Message-Rounter Function
networker 0:7f26f0680202 861 DWORD dwRfWrite; // W 0=write values permanent (FLASH); 1=write values temporary (RAM)
networker 0:7f26f0680202 862 DWORD dwRfFw; // RO Firmwareversion of RF-Module
networker 0:7f26f0680202 863 unsigned char aRfFwStrg[LEN_STRG1]; // RO String with Firmware of RF-Module
networker 0:7f26f0680202 864
networker 0:7f26f0680202 865 // Information for the PC-RF Module
networker 0:7f26f0680202 866 DWORD dwRfStopTransferOnError; // RW 1=Stop the RF-Transfer Thread on bad RF Connection
networker 0:7f26f0680202 867
networker 0:7f26f0680202 868 // Information for the Interface RF-Module
networker 0:7f26f0680202 869 DWORD dwRfMotorOffOnError; // RW 1=Motor Off on bad RF Connection
networker 0:7f26f0680202 870 } sIf;
networker 0:7f26f0680202 871 } FT_SETTING;
networker 0:7f26f0680202 872
networker 0:7f26f0680202 873 #ifdef MBED
networker 0:7f26f0680202 874 #include "mbed.h"
networker 0:7f26f0680202 875 #define ABF_IF_COMPLETE_NUM_WRITE 32
networker 0:7f26f0680202 876 #define ABF_IF_COMPLETE_NUM_READ 42
networker 0:7f26f0680202 877 #else
networker 0:7f26f0680202 878 #include <usb.h>
networker 0:7f26f0680202 879 #include <pthread.h>
networker 0:7f26f0680202 880 #include <semaphore.h>
networker 0:7f26f0680202 881 #include <termios.h>
networker 0:7f26f0680202 882 #endif
networker 0:7f26f0680202 883
networker 0:7f26f0680202 884 /// \brief Handle for the ft Interface
networker 0:7f26f0680202 885 typedef struct ft_handle_devices {
networker 0:7f26f0680202 886 /// Place to hold the transfer area
networker 0:7f26f0680202 887 FT_TRANSFER_AREA transfer_area;
networker 0:7f26f0680202 888 NOTIFICATION_EVENTS ne;
networker 0:7f26f0680202 889 #ifdef USE_USB
networker 0:7f26f0680202 890 /// Pointer to the usb device
networker 0:7f26f0680202 891 struct usb_device *dev;
networker 0:7f26f0680202 892 /// Handle for USB communication
networker 0:7f26f0680202 893 usb_dev_handle *device;
networker 0:7f26f0680202 894 #endif
networker 0:7f26f0680202 895 #ifdef MBED
networker 0:7f26f0680202 896 /// Serial device
networker 0:7f26f0680202 897 Serial *sdev;
networker 0:7f26f0680202 898 /// Type of device
networker 0:7f26f0680202 899 long int type;
networker 0:7f26f0680202 900 /// Communication Thread
networker 0:7f26f0680202 901 Ticker *t;
networker 0:7f26f0680202 902 void FtThread();
networker 0:7f26f0680202 903 void FtThreadInit();
networker 0:7f26f0680202 904 void FtThreadTrigger();
networker 0:7f26f0680202 905 bool guardedFtThreadBegin();
networker 0:7f26f0680202 906 void FtThreadBegin();
networker 0:7f26f0680202 907 void FtThreadEnd();
networker 0:7f26f0680202 908 void FtThreadFinish();
networker 0:7f26f0680202 909 int write();
networker 0:7f26f0680202 910 void writeByte();
networker 0:7f26f0680202 911 void readByte();
networker 0:7f26f0680202 912 bool busy;
networker 0:7f26f0680202 913 unsigned char out[ABF_IF_COMPLETE_NUM_WRITE]; //= {ABF_IF_COMPLETE,1,0x07,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
networker 0:7f26f0680202 914 unsigned char in[ABF_IF_COMPLETE_NUM_READ];
networker 0:7f26f0680202 915 int num_write ;//= ABF_IF_COMPLETE_NUM_WRITE;
networker 0:7f26f0680202 916 int num_read ;//= ABF_IF_COMPLETE_NUM_READ;
networker 0:7f26f0680202 917 int windex,rindex; //read/write pointers
networker 0:7f26f0680202 918 int usb_endpoint_write;// = FT_ENDPOINT_INTERRUPT_OUT;
networker 0:7f26f0680202 919 int usb_endpoint_read;// = FT_ENDPOINT_INTERRUPT_IN;
networker 0:7f26f0680202 920 int cycle;//=0;
networker 0:7f26f0680202 921 /// Lock for communication
networker 0:7f26f0680202 922 int lock;
networker 0:7f26f0680202 923 #else
networker 0:7f26f0680202 924 /// Serial device
networker 0:7f26f0680202 925 long int sdev;
networker 0:7f26f0680202 926 /// Type of device
networker 0:7f26f0680202 927 long int type;
networker 0:7f26f0680202 928 /// Communication Thread
networker 0:7f26f0680202 929 pthread_t t;
networker 0:7f26f0680202 930 /// Lock for communication
networker 0:7f26f0680202 931 sem_t lock;
networker 0:7f26f0680202 932 /// Serial settings
networker 0:7f26f0680202 933 struct termios saveioset;
networker 0:7f26f0680202 934 /// Serial settings
networker 0:7f26f0680202 935 struct termios newioset;
networker 0:7f26f0680202 936 #endif
networker 0:7f26f0680202 937 /// Anaylog cycle time (II only)
networker 0:7f26f0680202 938 int analogcycle;
networker 0:7f26f0680202 939 /// Query time for the Interface
networker 0:7f26f0680202 940 unsigned int query_time;
networker 0:7f26f0680202 941 /// 0 = no connection to the interface
networker 0:7f26f0680202 942 unsigned char interface_connected;
networker 0:7f26f0680202 943 } *FT_HANDLE;
networker 0:7f26f0680202 944 /** \fn typedef FT_HANDLE
networker 0:7f26f0680202 945 * Type definition for the ft handle.
networker 0:7f26f0680202 946 */
networker 0:7f26f0680202 947
networker 0:7f26f0680202 948 // ****** Function Prototypes ******
networker 0:7f26f0680202 949 DWORD __stdcall GetLibVersion(void);
networker 0:7f26f0680202 950 DWORD __stdcall InitFtLib(void);
networker 0:7f26f0680202 951 DWORD __stdcall CloseFtLib(void);
networker 0:7f26f0680202 952 DWORD __stdcall IsFtLibInit(void);
networker 0:7f26f0680202 953 DWORD __stdcall InitFtUsbDeviceList(void);
networker 0:7f26f0680202 954 UINT __stdcall GetNumFtUsbDevice(void);
networker 0:7f26f0680202 955 FT_HANDLE __stdcall GetFtUsbDeviceHandle(UCHAR ucDevNr);
networker 0:7f26f0680202 956 FT_HANDLE __stdcall GetFtUsbDeviceHandleSerialNr(DWORD dwSN, DWORD dwTyp);
networker 0:7f26f0680202 957 DWORD __stdcall OpenFtUsbDevice(FT_HANDLE hFt);
networker 0:7f26f0680202 958 //FT_HANDLE __stdcall OpenFtCommDevice(DWORD dwPort, DWORD dwTyp, DWORD dwZyklus, DWORD *pdwError);
networker 0:7f26f0680202 959 DWORD __stdcall SetFtDeviceCommMode (FT_HANDLE hFt, DWORD dwMode, DWORD dwParameter, USHORT *puiValue);
networker 0:7f26f0680202 960 DWORD __stdcall CloseAllFtDevices(void);
networker 0:7f26f0680202 961 DWORD __stdcall CloseFtDevice(FT_HANDLE hFt);
networker 0:7f26f0680202 962 DWORD __stdcall GetFtDeviceTyp(FT_HANDLE hFt);
networker 0:7f26f0680202 963 LPCSTR __stdcall GetFtSerialNrStrg(FT_HANDLE hFt);
networker 0:7f26f0680202 964 DWORD __stdcall GetFtSerialNr(FT_HANDLE hFt);
networker 0:7f26f0680202 965 LPCSTR __stdcall GetFtFirmwareStrg(FT_HANDLE hFt);
networker 0:7f26f0680202 966 DWORD __stdcall GetFtFirmware(FT_HANDLE hFt);
networker 0:7f26f0680202 967 LPCSTR __stdcall GetFtManufacturerStrg(FT_HANDLE hFt);
networker 0:7f26f0680202 968 LPCSTR __stdcall GetFtShortNameStrg(FT_HANDLE hFt);
networker 0:7f26f0680202 969 LPCSTR __stdcall GetFtLongNameStrg(FT_HANDLE hFt);
networker 0:7f26f0680202 970 LPCSTR __stdcall GetFtLibErrorString(DWORD dwErrorCode, DWORD dwTyp);
networker 0:7f26f0680202 971 DWORD __stdcall GetFtDeviceSetting(FT_HANDLE hFt, FT_SETTING *pSet);
networker 0:7f26f0680202 972 DWORD __stdcall SetFtDeviceSetting(FT_HANDLE hFt, FT_SETTING *pSet);
networker 0:7f26f0680202 973 DWORD __stdcall SetFtDistanceSensorMode(FT_HANDLE hFt, DWORD dwMode, DWORD dwTol1, DWORD dwTol2,
networker 0:7f26f0680202 974 DWORD dwSchwell1, DWORD dwSchwell2, DWORD dwRepeat1, DWORD dwRepeat2);
networker 0:7f26f0680202 975
networker 0:7f26f0680202 976
networker 0:7f26f0680202 977 DWORD __stdcall StartFtTransferArea(FT_HANDLE hFt, NOTIFICATION_EVENTS* sNEvent );
networker 0:7f26f0680202 978 DWORD __stdcall StartFtTransferAreaWithCommunication(FT_HANDLE hFt, NOTIFICATION_EVENTS* sNEvent );
networker 0:7f26f0680202 979 DWORD __stdcall StopFtTransferArea(FT_HANDLE hFt);
networker 0:7f26f0680202 980 FT_TRANSFER_AREA* __stdcall GetFtTransferAreaAddress(FT_HANDLE hFt);
networker 0:7f26f0680202 981 DWORD __stdcall IsFtTransferActiv(FT_HANDLE hFt);
networker 0:7f26f0680202 982 DWORD __stdcall ResetFtTransfer (FT_HANDLE hFt);
networker 0:7f26f0680202 983
networker 0:7f26f0680202 984
networker 0:7f26f0680202 985 DWORD __stdcall GetFtMemoryLayout(FT_HANDLE hFt, BYTE * pbArray, DWORD dwSize);
networker 0:7f26f0680202 986 DWORD __stdcall DownloadFtProgram(FT_HANDLE hFt, DWORD dwMemBlock, BYTE* pbArray, DWORD dwSize, DWORD dwParameter, BYTE *pbName, DWORD dwNameLen);
networker 0:7f26f0680202 987 DWORD __stdcall StartFtProgram(FT_HANDLE hFt, DWORD dwMemBlock);
networker 0:7f26f0680202 988 DWORD __stdcall StopFtProgram(FT_HANDLE hFt);
networker 0:7f26f0680202 989 DWORD __stdcall DeleteFtProgram(FT_HANDLE hFt, DWORD dwMemBlock);
networker 0:7f26f0680202 990 DWORD __stdcall SetFtProgramActiv(FT_HANDLE hFt, DWORD dwMemBlock);
networker 0:7f26f0680202 991 DWORD __stdcall GetFtProgramName(FT_HANDLE hFt, DWORD dwMemBlock, DWORD dwSize, LPVOID pName);
networker 0:7f26f0680202 992 DWORD __stdcall WriteFtMemoryData(FT_HANDLE hFt, DWORD dwData, DWORD dwAddress);
networker 0:7f26f0680202 993 DWORD __stdcall GetFtMemoryData(FT_HANDLE hFt, BYTE * pbArray, DWORD dwSize, DWORD dwAddress);
networker 0:7f26f0680202 994
networker 0:7f26f0680202 995
networker 0:7f26f0680202 996 DWORD __stdcall SendFtMessage(FT_HANDLE hFt, BYTE bHwId, BYTE bSubId, DWORD dwMessage, DWORD dwWaitTime, DWORD dwOption);
networker 0:7f26f0680202 997 DWORD __stdcall ClearFtMessageBuffer(FT_HANDLE hFt);
networker 0:7f26f0680202 998
networker 0:7f26f0680202 999
networker 0:7f26f0680202 1000
networker 0:7f26f0680202 1001
networker 0:7f26f0680202 1002 //
networker 0:7f26f0680202 1003 // FTLIB Error Codes
networker 0:7f26f0680202 1004 //
networker 0:7f26f0680202 1005 #define FTLIB_ERR_SUCCESS 0x00000000L
networker 0:7f26f0680202 1006 #define FTLIB_ERR_CRC 0xE0000001L
networker 0:7f26f0680202 1007 #define FTLIB_ERR_BTSTUFF 0xE0000002L
networker 0:7f26f0680202 1008 #define FTLIB_ERR_DATA_TOGGLE_MISMATCH 0xE0000003L
networker 0:7f26f0680202 1009 #define FTLIB_ERR_STALL_PID 0xE0000004L
networker 0:7f26f0680202 1010 #define FTLIB_ERR_DEV_NOT_RESPONDING 0xE0000005L
networker 0:7f26f0680202 1011 #define FTLIB_ERR_PID_CHECK_FAILURE 0xE0000006L
networker 0:7f26f0680202 1012 #define FTLIB_ERR_UNEXPECTED_PID 0xE0000007L
networker 0:7f26f0680202 1013 #define FTLIB_ERR_DATA_OVERRUN 0xE0000008L
networker 0:7f26f0680202 1014 #define FTLIB_ERR_DATA_UNDERRUN 0xE0000009L
networker 0:7f26f0680202 1015 #define FTLIB_ERR_RESERVED1 0xE000000AL
networker 0:7f26f0680202 1016 #define FTLIB_ERR_RESERVED2 0xE000000BL
networker 0:7f26f0680202 1017 #define FTLIB_ERR_BUFFER_OVERRUN 0xE000000CL
networker 0:7f26f0680202 1018 #define FTLIB_ERR_BUFFER_UNDERRUN 0xE000000DL
networker 0:7f26f0680202 1019 #define FTLIB_ERR_NOT_ACCESSED 0xE000000FL
networker 0:7f26f0680202 1020 #define FTLIB_ERR_FIFO 0xE0000010L
networker 0:7f26f0680202 1021 #define FTLIB_ERR_XACT_ERROR 0xE0000011L
networker 0:7f26f0680202 1022 #define FTLIB_ERR_BABBLE_DETECTED 0xE0000012L
networker 0:7f26f0680202 1023 #define FTLIB_ERR_DATA_BUFFER_ERROR 0xE0000013L
networker 0:7f26f0680202 1024
networker 0:7f26f0680202 1025 #define FTLIB_ERR_ENDPOINT_HALTED 0xE0000030L
networker 0:7f26f0680202 1026 #define FTLIB_ERR_NO_MEMORY 0xE0000100L
networker 0:7f26f0680202 1027 #define FTLIB_ERR_INVALID_URB_FUNCTION 0xE0000200L
networker 0:7f26f0680202 1028 #define FTLIB_ERR_INVALID_PARAMETER 0xE0000300L
networker 0:7f26f0680202 1029 #define FTLIB_ERR_ERROR_BUSY 0xE0000400L
networker 0:7f26f0680202 1030 #define FTLIB_ERR_INVALID_PIPE_HANDLE 0xE0000600L
networker 0:7f26f0680202 1031 #define FTLIB_ERR_NO_BANDWIDTH 0xE0000700L
networker 0:7f26f0680202 1032 #define FTLIB_ERR_INTERNAL_HC_ERROR 0xE0000800L
networker 0:7f26f0680202 1033 #define FTLIB_ERR_ERROR_SHORT_TRANSFER 0xE0000900L
networker 0:7f26f0680202 1034 #define FTLIB_ERR_BAD_START_FRAME 0xE0000A00L
networker 0:7f26f0680202 1035 #define FTLIB_ERR_ISOCH_REQUEST_FAILED 0xE0000B00L
networker 0:7f26f0680202 1036 #define FTLIB_ERR_FRAME_CONTROL_OWNED 0xE0000C00L
networker 0:7f26f0680202 1037 #define FTLIB_ERR_FRAME_CONTROL_NOT_OWNED 0xE0000D00L
networker 0:7f26f0680202 1038 #define FTLIB_ERR_NOT_SUPPORTED 0xE0000E00L
networker 0:7f26f0680202 1039 #define FTLIB_ERR_INVALID_CONFIGURATION_DESCRIPTOR 0xE0000F00L
networker 0:7f26f0680202 1040
networker 0:7f26f0680202 1041 #define FTLIB_ERR_INSUFFICIENT_RESOURCES 0xE8001000L
networker 0:7f26f0680202 1042 #define FTLIB_ERR_SET_CONFIG_FAILED 0xE0002000L
networker 0:7f26f0680202 1043 #define FTLIB_ERR_USBD_BUFFER_TOO_SMALL 0xE0003000L
networker 0:7f26f0680202 1044 #define FTLIB_ERR_USBD_INTERFACE_NOT_FOUND 0xE0004000L
networker 0:7f26f0680202 1045 #define FTLIB_ERR_INVALID_PIPE_FLAGS 0xE0005000L
networker 0:7f26f0680202 1046 #define FTLIB_ERR_USBD_TIMEOUT 0xE0006000L
networker 0:7f26f0680202 1047 #define FTLIB_ERR_DEVICE_GONE 0xE0007000L
networker 0:7f26f0680202 1048 #define FTLIB_ERR_STATUS_NOT_MAPPED 0xE0008000L
networker 0:7f26f0680202 1049
networker 0:7f26f0680202 1050 #define FTLIB_ERR_CANCELED 0xE0010000L
networker 0:7f26f0680202 1051 #define FTLIB_ERR_ISO_NOT_ACCESSED_BY_HW 0xE0020000L
networker 0:7f26f0680202 1052 #define FTLIB_ERR_ISO_TD_ERROR 0xE0030000L
networker 0:7f26f0680202 1053 #define FTLIB_ERR_ISO_NA_LATE_USBPORT 0xE0040000L
networker 0:7f26f0680202 1054 #define FTLIB_ERR_ISO_NOT_ACCESSED_LATE 0xE0050000L
networker 0:7f26f0680202 1055
networker 0:7f26f0680202 1056 #define FTLIB_ERR_FAILED 0xE0001000L
networker 0:7f26f0680202 1057 #define FTLIB_ERR_INVALID_INBUFFER 0xE0001001L
networker 0:7f26f0680202 1058 #define FTLIB_ERR_INVALID_OUTBUFFER 0xE0001002L
networker 0:7f26f0680202 1059 #define FTLIB_ERR_OUT_OF_MEMORY 0xE0001003L
networker 0:7f26f0680202 1060 #define FTLIB_ERR_PENDING_REQUESTS 0xE0001004L
networker 0:7f26f0680202 1061 #define FTLIB_ERR_ALREADY_CONFIGURED 0xE0001005L
networker 0:7f26f0680202 1062 #define FTLIB_ERR_NOT_CONFIGURED 0xE0001006L
networker 0:7f26f0680202 1063 #define FTLIB_ERR_OPEN_PIPES 0xE0001007L
networker 0:7f26f0680202 1064 #define FTLIB_ERR_ALREADY_BOUND 0xE0001008L
networker 0:7f26f0680202 1065 #define FTLIB_ERR_NOT_BOUND 0xE0001009L
networker 0:7f26f0680202 1066 #define FTLIB_ERR_DEVICE_NOT_PRESENT 0xE000100AL
networker 0:7f26f0680202 1067 #define FTLIB_ERR_CONTROL_NOT_SUPPORTED 0xE000100BL
networker 0:7f26f0680202 1068 #define FTLIB_ERR_TIMEOUT 0xE000100CL
networker 0:7f26f0680202 1069 #define FTLIB_ERR_INVALID_RECIPIENT 0xE000100DL
networker 0:7f26f0680202 1070 #define FTLIB_ERR_INVALID_TYPE 0xE000100EL
networker 0:7f26f0680202 1071 #define FTLIB_ERR_INVALID_IOCTL 0xE000100FL
networker 0:7f26f0680202 1072 #define FTLIB_ERR_INVALID_DIRECTION 0xE0001010L
networker 0:7f26f0680202 1073 #define FTLIB_ERR_TOO_MUCH_ISO_PACKETS 0xE0001011L
networker 0:7f26f0680202 1074 #define FTLIB_ERR_POOL_EMPTY 0xE0001012L
networker 0:7f26f0680202 1075 #define FTLIB_ERR_PIPE_NOT_FOUND 0xE0001013L
networker 0:7f26f0680202 1076 #define FTLIB_ERR_INVALID_ISO_PACKET 0xE0001014L
networker 0:7f26f0680202 1077 #define FTLIB_ERR_OUT_OF_ADDRESS_SPACE 0xE0001015L
networker 0:7f26f0680202 1078 #define FTLIB_ERR_INTERFACE_NOT_FOUND 0xE0001016L
networker 0:7f26f0680202 1079 #define FTLIB_ERR_INVALID_DEVICE_STATE 0xE0001017L
networker 0:7f26f0680202 1080 #define FTLIB_ERR_INVALID_PARAM 0xE0001018L
networker 0:7f26f0680202 1081 #define FTLIB_ERR_INVALID_POWER_STATE 0xE000101AL
networker 0:7f26f0680202 1082 #define FTLIB_ERR_POWER_DOWN 0xE000101BL
networker 0:7f26f0680202 1083 #define FTLIB_ERR_VERSION_MISMATCH 0xE000101CL
networker 0:7f26f0680202 1084 #define FTLIB_ERR_SET_CONFIGURATION_FAILED 0xE000101DL
networker 0:7f26f0680202 1085
networker 0:7f26f0680202 1086 #define FTLIB_ERR_VID_RESTRICTION 0xE0001080L
networker 0:7f26f0680202 1087 #define FTLIB_ERR_ISO_RESTRICTION 0xE0001081L
networker 0:7f26f0680202 1088 #define FTLIB_ERR_BULK_RESTRICTION 0xE0001082L
networker 0:7f26f0680202 1089 #define FTLIB_ERR_EP0_RESTRICTION 0xE0001083L
networker 0:7f26f0680202 1090 #define FTLIB_ERR_PIPE_RESTRICTION 0xE0001084L
networker 0:7f26f0680202 1091 #define FTLIB_ERR_PIPE_SIZE_RESTRICTION 0xE0001085L
networker 0:7f26f0680202 1092 #define FTLIB_ERR_CONTROL_RESTRICTION 0xE0001086L
networker 0:7f26f0680202 1093 #define FTLIB_ERR_INTERRUPT_RESTRICTION 0xE0001087L
networker 0:7f26f0680202 1094
networker 0:7f26f0680202 1095 #define FTLIB_ERR_DEVICE_NOT_FOUND 0xE0001100L
networker 0:7f26f0680202 1096 #define FTLIB_ERR_SOME_DEVICES_ARE_OPEN 0xE0001101L
networker 0:7f26f0680202 1097 #define FTLIB_ERR_DEVICE_IS_OPEN 0xE0001102L
networker 0:7f26f0680202 1098 #define FTLIB_ERR_DEVICE_NOT_OPEN 0xE0001103L
networker 0:7f26f0680202 1099 #define FTLIB_ERR_NO_SUCH_DEVICE_INSTANCE 0xE0001104L
networker 0:7f26f0680202 1100 #define FTLIB_ERR_INVALID_FUNCTION_PARAM 0xE0001105L
networker 0:7f26f0680202 1101 #define FTLIB_ERR_DESTROY_DEVICE_LIST 0xE0001106L
networker 0:7f26f0680202 1102 #define FTLIB_ERR_USB_NOT_SUPPORTET_FROM_OS 0xE0001107L
networker 0:7f26f0680202 1103 #define FTLIB_ERR_CLOSE_DEVICE 0xE0001108L
networker 0:7f26f0680202 1104
networker 0:7f26f0680202 1105 #define FTLIB_ERR_DEVICE_NOT_SUPPORTET 0xE0001281L
networker 0:7f26f0680202 1106 #define FTLIB_ERR_WRONG_DEVICE_NUMBER 0xE0001282L
networker 0:7f26f0680202 1107 #define FTLIB_ERR_UNKNOWN_DEVICE_HANDLE 0xE0001283L
networker 0:7f26f0680202 1108 #define FTLIB_ERR_WRONG_USB_HANDLE 0xE0001284L
networker 0:7f26f0680202 1109 #define FTLIB_ERR_WRONG_PATHNAME 0xE0001285L
networker 0:7f26f0680202 1110 #define FTLIB_ERR_LIB_IS_INITIALIZED 0xE0001286L
networker 0:7f26f0680202 1111 #define FTLIB_ERR_LIB_IS_NOT_INITIALIZED 0xE0001287L
networker 0:7f26f0680202 1112 #define FTLIB_ERR_SERIAL_NR_UNKNOWN 0xE0001288L
networker 0:7f26f0680202 1113 #define FTLIB_ERR_POWER_TOO_LOW 0xE0001289L
networker 0:7f26f0680202 1114 #define FTLIB_ERR_WRONG_RETURN_VALUE 0xE000128AL
networker 0:7f26f0680202 1115 #define FTLIB_ERR_USB_SUPPORT_IS_NOT_INITIALIZED 0xE000128BL
networker 0:7f26f0680202 1116
networker 0:7f26f0680202 1117 #define FTLIB_ERR_USB_MUT0 0xE0001290L
networker 0:7f26f0680202 1118 #define FTLIB_ERR_USB_MUT1 0xE0001291L
networker 0:7f26f0680202 1119 #define FTLIB_ERR_USB_MUT2 0xE0001292L
networker 0:7f26f0680202 1120 #define FTLIB_ERR_USB_MUT3 0xE0001293L
networker 0:7f26f0680202 1121 #define FTLIB_ERR_USB_DEVICE_IS_IN_USE 0xE0001295L
networker 0:7f26f0680202 1122
networker 0:7f26f0680202 1123 #define FTLIB_ERR_THREAD_NOT_STARTABLE 0xE00012A0L
networker 0:7f26f0680202 1124 #define FTLIB_ERR_THREAD_NOT_STARTABLE_X1 0xE00012A1L
networker 0:7f26f0680202 1125 #define FTLIB_ERR_THREAD_NOT_STARTABLE_X2 0xE00012A2L
networker 0:7f26f0680202 1126 #define FTLIB_ERR_THREAD_NOT_STARTABLE_X3 0xE00012A3L
networker 0:7f26f0680202 1127 #define FTLIB_ERR_OTHER_THREAD_FOR_SAME_DEVICE_IS_RUN 0xE00012A4L
networker 0:7f26f0680202 1128 #define FTLIB_ERR_THREAD_IS_RUNNING 0xE00012A5L
networker 0:7f26f0680202 1129 #define FTLIB_ERR_THREAD_NOT_RUNNING 0xE00012A6L
networker 0:7f26f0680202 1130 #define FTLIB_ERR_THREAD_X1 0xE00012A7L
networker 0:7f26f0680202 1131 #define FTLIB_ERR_THREAD_X2 0xE00012A8L
networker 0:7f26f0680202 1132 #define FTLIB_ERR_THREAD_WRITE_USB 0xE00012A9L
networker 0:7f26f0680202 1133 #define FTLIB_ERR_THREAD_READ_USB 0xE00012AAL
networker 0:7f26f0680202 1134 #define FTLIB_ERR_THREAD_IS_NORMAL_STOPPED 0xE00012ABL
networker 0:7f26f0680202 1135 #define FTLIB_ERR_THREAD_WAIT_TIMEOUT 0xE00012ACL
networker 0:7f26f0680202 1136 #define FTLIB_ERR_THREAD_WRITE_COM 0xE00012ADL
networker 0:7f26f0680202 1137 #define FTLIB_ERR_THREAD_READ_COM 0xE00012AEL
networker 0:7f26f0680202 1138
networker 0:7f26f0680202 1139 #define FTLIB_ERR_DOWNLOAD 0xE00012C0L
networker 0:7f26f0680202 1140 #define FTLIB_ERR_DOWNLOAD_WRONG_PARAMETER 0xE00012C1L
networker 0:7f26f0680202 1141 #define FTLIB_ERR_DOWNLOAD_WRONG_MEM_BLOCK 0xE00012C2L
networker 0:7f26f0680202 1142 #define FTLIB_ERR_DOWNLOAD_DATA_SIZE_IS_NULL 0xE00012C3L
networker 0:7f26f0680202 1143 #define FTLIB_ERR_DOWNLOAD_DATA_SIZE_TOO_BIG 0xE00012C4L
networker 0:7f26f0680202 1144 #define FTLIB_ERR_DOWNLOAD_DATA_SIZE 0xE00012C5L
networker 0:7f26f0680202 1145 #define FTLIB_ERR_DOWNLOAD_ERASE 0xE00012C6L
networker 0:7f26f0680202 1146 #define FTLIB_ERR_DOWNLOAD_F5 0xE00012C7L
networker 0:7f26f0680202 1147 #define FTLIB_ERR_DOWNLOAD_PROG_SNF1 0xE00012C8L
networker 0:7f26f0680202 1148 #define FTLIB_ERR_DOWNLOAD_PROG_SNF2 0xE00012C9L
networker 0:7f26f0680202 1149 #define FTLIB_ERR_DOWNLOAD_BLOCK 0xE00012CAL
networker 0:7f26f0680202 1150 #define FTLIB_ERR_DOWNLOAD_BLOCK_NR 0xE00012CBL
networker 0:7f26f0680202 1151 #define FTLIB_ERR_DOWNLOAD_CRC 0xE00012CDL
networker 0:7f26f0680202 1152
networker 0:7f26f0680202 1153 #define FTLIB_ERR_IF_NO_PROGRAM 0xE00012E0L
networker 0:7f26f0680202 1154 #define FTLIB_ERR_IF_PROGRAM_IS_RUNNING 0xE00012E1L
networker 0:7f26f0680202 1155 #define FTLIB_ERR_IF_NO_PROGRAM_IS_RUNNING 0xE00012E2L
networker 0:7f26f0680202 1156 #define FTLIB_ERR_IF_WRONG_PROG_NUMBER 0xE00012E3L
networker 0:7f26f0680202 1157 #define FTLIB_ERR_IF_BUFFER_TOO_SMALL 0xE00012E4L
networker 0:7f26f0680202 1158 #define FTLIB_ERR_IF_MEM_ADDRESS 0xE00012E5L
networker 0:7f26f0680202 1159 #define FTLIB_ERR_IF_MEM_VERIFY 0xE00012E6L
networker 0:7f26f0680202 1160 #define FTLIB_ERR_IF_NOT_SUPPORTET_MODUS 0xE00012E7L
networker 0:7f26f0680202 1161 #define FTLIB_ERR_IF_FUNCTION_NOT_SUPPORT 0xE00012E8L
networker 0:7f26f0680202 1162 #define FTLIB_ERR_FUNCTION_OVER_RF_NOT_ALLOWED 0xE00012E9L
networker 0:7f26f0680202 1163
networker 0:7f26f0680202 1164
networker 0:7f26f0680202 1165 #define FTLIB_INFO_PROGRAM_0_IS_RUNNING 0xE0001600L
networker 0:7f26f0680202 1166 #define FTLIB_INFO_PROGRAM_1_IS_RUNNING 0xE0001601L
networker 0:7f26f0680202 1167 #define FTLIB_INFO_PROGRAM_2_IS_RUNNING 0xE0001602L
networker 0:7f26f0680202 1168 #define FTLIB_INFO_ONLINE_MODUS 0xE0001620L
networker 0:7f26f0680202 1169
networker 0:7f26f0680202 1170 #define FTLIB_FIRMWARE_UPDATE_FILE_WRONG_0 0xE0001800L
networker 0:7f26f0680202 1171 #define FTLIB_FIRMWARE_UPDATE_CRC 0xE0001801L
networker 0:7f26f0680202 1172 #define FTLIB_FIRMWARE_UPDATE_FILE_OLD 0xE0001802L
networker 0:7f26f0680202 1173 #define FTLIB_FIRMWARE_UPDATE_FILE_WRONG_1 0xE0001803L
networker 0:7f26f0680202 1174
networker 0:7f26f0680202 1175
networker 0:7f26f0680202 1176 #define FTLIB_ERR_PORT_NUMBER 0xE0001900L
networker 0:7f26f0680202 1177 #define FTLIB_ERR_WRONG_PORT 0xE0001901L
networker 0:7f26f0680202 1178 #define FTLIB_ERR_PORT_NUMBER_IS_NULL 0xE0001902L
networker 0:7f26f0680202 1179 #define FTLIB_ERR_TYP 0xE0001903L
networker 0:7f26f0680202 1180 #define FTLIB_ERR_PORT_NOT_FOUND 0xE0001904L
networker 0:7f26f0680202 1181 #define FTLIB_ERR_ACCESS_DENIED 0xE0001905L
networker 0:7f26f0680202 1182 #define FTLIB_ERR_OPEN_COM 0xE0001906L
networker 0:7f26f0680202 1183 #define FTLIB_ERR_CLOSE_COM 0xE0001907L
networker 0:7f26f0680202 1184 #define FTLIB_ERR_INIT_COM 0xE0001908L
networker 0:7f26f0680202 1185 #define FTLIB_ERR_INIT_COM_TIMEOUT 0xE0001909L
networker 0:7f26f0680202 1186 #define FTLIB_ERR_WRITE_COM 0xE000190AL
networker 0:7f26f0680202 1187 #define FTLIB_ERR_READ_COM 0xE000190BL
networker 0:7f26f0680202 1188 #define FTLIB_ERR_READ_COM_NUMBER 0xE000190CL
networker 0:7f26f0680202 1189 #define FTLIB_ERR_READ_COM_NOTHING 0xE000190DL
networker 0:7f26f0680202 1190
networker 0:7f26f0680202 1191 #define FTLIB_ERR_RF_NOT_INSTALLED 0xE0001A00L
networker 0:7f26f0680202 1192 #define FTLIB_ERR_RF_WRONG_CHANNEL 0xE0001A01L
networker 0:7f26f0680202 1193 #define FTLIB_ERR_RF_WRONG_SUB_CHANNEL 0xE0001A02L
networker 0:7f26f0680202 1194 #define FTLIB_ERR_RF_NO_CONNECTION 0xE0001A03L
networker 0:7f26f0680202 1195 #define FTLIB_ERR_RF_NO_CONNECTION_A 0xE0001A04L
networker 0:7f26f0680202 1196 #define FTLIB_ERR_RF_NO_CONNECTION_B 0xE0001A05L
networker 0:7f26f0680202 1197 #define FTLIB_ERR_RF_NO_CONNECTION_C 0xE0001A06L
networker 0:7f26f0680202 1198 #define FTLIB_ERR_RF_TIMEOUT_1 0xE0001A08L
networker 0:7f26f0680202 1199 #define FTLIB_ERR_RF_TIMEOUT_2 0xE0001A09L
networker 0:7f26f0680202 1200 #define FTLIB_ERR_RF_FW_OLD1 0xE0001A0AL
networker 0:7f26f0680202 1201 #define FTLIB_ERR_RF_INTERNAL_1 0xE0001A0DL
networker 0:7f26f0680202 1202 #define FTLIB_ERR_RF_NO_INTERFACE_MODULE_FOUND 0xE0001A0EL
networker 0:7f26f0680202 1203
networker 0:7f26f0680202 1204 #define FTLIB_ERR_DLL_NOT_LOADABLE 0xE0001B00L
networker 0:7f26f0680202 1205 #define FTLIB_ERR_DLL_FUNCTION_ERROR 0xE0001B01L
networker 0:7f26f0680202 1206
networker 0:7f26f0680202 1207 #define FTLIB_ERR_MSG_HWID_WRONG 0xE0001C00L
networker 0:7f26f0680202 1208 #define FTLIB_ERR_MSG_BUFFER_FULL_TIMEOUT 0xE0001C01L
networker 0:7f26f0680202 1209
networker 0:7f26f0680202 1210 #define FTLIB_ERR_UNKNOWN_OPTION_VALUE 0xE0001D00L
networker 0:7f26f0680202 1211
networker 0:7f26f0680202 1212 #define FTLIB_ERR_INTERFACE_00 0xE0001F00L
networker 0:7f26f0680202 1213 #define FTLIB_ERR_INTERFACE_01 0xE0001F01L
networker 0:7f26f0680202 1214 #define FTLIB_ERR_INTERFACE_02 0xE0001F02L
networker 0:7f26f0680202 1215 #define FTLIB_ERR_INTERFACE_03 0xE0001F03L
networker 0:7f26f0680202 1216 #define FTLIB_ERR_INTERFACE_04 0xE0001F04L
networker 0:7f26f0680202 1217 #define FTLIB_ERR_INTERFACE_05 0xE0001F05L
networker 0:7f26f0680202 1218 #define FTLIB_ERR_INTERFACE_06 0xE0001F06L
networker 0:7f26f0680202 1219 #define FTLIB_ERR_INTERFACE_07 0xE0001F07L
networker 0:7f26f0680202 1220 #define FTLIB_ERR_INTERFACE_08 0xE0001F08L
networker 0:7f26f0680202 1221 #define FTLIB_ERR_INTERFACE_09 0xE0001F09L
networker 0:7f26f0680202 1222 #define FTLIB_ERR_INTERFACE_0A 0xE0001F0AL
networker 0:7f26f0680202 1223 #define FTLIB_ERR_INTERFACE_0B 0xE0001F0BL
networker 0:7f26f0680202 1224 #define FTLIB_ERR_INTERFACE_0C 0xE0001F0CL
networker 0:7f26f0680202 1225 #define FTLIB_ERR_INTERFACE_0D 0xE0001F0DL
networker 0:7f26f0680202 1226 #define FTLIB_ERR_INTERFACE_0E 0xE0001F0EL
networker 0:7f26f0680202 1227 #define FTLIB_ERR_INTERFACE_0F 0xE0001F0FL
networker 0:7f26f0680202 1228
networker 0:7f26f0680202 1229 #define FTLIB_ERR_INTERFACE_D0 0xE0001FD0L
networker 0:7f26f0680202 1230 #define FTLIB_ERR_INTERFACE_D1 0xE0001FD1L
networker 0:7f26f0680202 1231 #define FTLIB_ERR_INTERFACE_D2 0xE0001FD2L
networker 0:7f26f0680202 1232 #define FTLIB_ERR_INTERFACE_D3 0xE0001FD3L
networker 0:7f26f0680202 1233 #define FTLIB_ERR_INTERFACE_D4 0xE0001FD4L
networker 0:7f26f0680202 1234 #define FTLIB_ERR_INTERFACE_D5 0xE0001FD5L
networker 0:7f26f0680202 1235 #define FTLIB_ERR_INTERFACE_D6 0xE0001FD6L
networker 0:7f26f0680202 1236 #define FTLIB_ERR_INTERFACE_D7 0xE0001FD7L
networker 0:7f26f0680202 1237 #define FTLIB_ERR_INTERFACE_D8 0xE0001FD8L
networker 0:7f26f0680202 1238 #define FTLIB_ERR_INTERFACE_D9 0xE0001FD9L
networker 0:7f26f0680202 1239 #define FTLIB_ERR_INTERFACE_DA 0xE0001FDAL
networker 0:7f26f0680202 1240 #define FTLIB_ERR_INTERFACE_DB 0xE0001FDBL
networker 0:7f26f0680202 1241 #define FTLIB_ERR_INTERFACE_DC 0xE0001FDCL
networker 0:7f26f0680202 1242 #define FTLIB_ERR_INTERFACE_DD 0xE0001FDDL
networker 0:7f26f0680202 1243 #define FTLIB_ERR_INTERFACE_DE 0xE0001FDEL
networker 0:7f26f0680202 1244 #define FTLIB_ERR_INTERFACE_DF 0xE0001FDFL
networker 0:7f26f0680202 1245
networker 0:7f26f0680202 1246 #define FTLIB_ERR_INTERFACE_E0 0xE0001FE0L
networker 0:7f26f0680202 1247 #define FTLIB_ERR_INTERFACE_E1 0xE0001FE1L
networker 0:7f26f0680202 1248 #define FTLIB_ERR_INTERFACE_E2 0xE0001FE2L
networker 0:7f26f0680202 1249 #define FTLIB_ERR_INTERFACE_E3 0xE0001FE3L
networker 0:7f26f0680202 1250 #define FTLIB_ERR_INTERFACE_E4 0xE0001FE4L
networker 0:7f26f0680202 1251 #define FTLIB_ERR_INTERFACE_E5 0xE0001FE5L
networker 0:7f26f0680202 1252 #define FTLIB_ERR_INTERFACE_E6 0xE0001FE6L
networker 0:7f26f0680202 1253 #define FTLIB_ERR_INTERFACE_E7 0xE0001FE7L
networker 0:7f26f0680202 1254 #define FTLIB_ERR_INTERFACE_E8 0xE0001FE8L
networker 0:7f26f0680202 1255 #define FTLIB_ERR_INTERFACE_E9 0xE0001FE9L
networker 0:7f26f0680202 1256 #define FTLIB_ERR_INTERFACE_EA 0xE0001FEAL
networker 0:7f26f0680202 1257 #define FTLIB_ERR_INTERFACE_EB 0xE0001FEBL
networker 0:7f26f0680202 1258 #define FTLIB_ERR_INTERFACE_EC 0xE0001FECL
networker 0:7f26f0680202 1259 #define FTLIB_ERR_INTERFACE_ED 0xE0001FEDL
networker 0:7f26f0680202 1260 #define FTLIB_ERR_INTERFACE_EE 0xE0001FEEL
networker 0:7f26f0680202 1261 #define FTLIB_ERR_INTERFACE_EF 0xE0001FEFL
networker 0:7f26f0680202 1262
networker 0:7f26f0680202 1263 #define FTLIB_ERR_INTERFACE_F0 0xE0001FF0L
networker 0:7f26f0680202 1264 #define FTLIB_ERR_INTERFACE_F1 0xE0001FF1L
networker 0:7f26f0680202 1265 #define FTLIB_ERR_INTERFACE_F2 0xE0001FF2L
networker 0:7f26f0680202 1266 #define FTLIB_ERR_INTERFACE_F3 0xE0001FF3L
networker 0:7f26f0680202 1267 #define FTLIB_ERR_INTERFACE_F4 0xE0001FF4L
networker 0:7f26f0680202 1268 #define FTLIB_ERR_INTERFACE_F5 0xE0001FF5L
networker 0:7f26f0680202 1269 #define FTLIB_ERR_INTERFACE_F6 0xE0001FF6L
networker 0:7f26f0680202 1270 #define FTLIB_ERR_INTERFACE_F7 0xE0001FF7L
networker 0:7f26f0680202 1271 #define FTLIB_ERR_INTERFACE_F8 0xE0001FF8L
networker 0:7f26f0680202 1272 #define FTLIB_ERR_INTERFACE_F9 0xE0001FF9L
networker 0:7f26f0680202 1273 #define FTLIB_ERR_INTERFACE_FA 0xE0001FFAL
networker 0:7f26f0680202 1274 #define FTLIB_ERR_INTERFACE_FB 0xE0001FFBL
networker 0:7f26f0680202 1275 #define FTLIB_ERR_INTERFACE_FC 0xE0001FFCL
networker 0:7f26f0680202 1276 #define FTLIB_ERR_INTERFACE_FD 0xE0001FFDL
networker 0:7f26f0680202 1277 #define FTLIB_ERR_INTERFACE_FE 0xE0001FFEL
networker 0:7f26f0680202 1278 #define FTLIB_ERR_INTERFACE_FF 0xE0001FFFL
networker 0:7f26f0680202 1279
networker 0:7f26f0680202 1280 /** \endcond doxygen ignore end */
networker 0:7f26f0680202 1281
networker 0:7f26f0680202 1282 #endif
networker 0:7f26f0680202 1283
networker 0:7f26f0680202 1284
networker 0:7f26f0680202 1285