]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tools/platforms/msp430/pybsl/cp210x_rt/CP210xRuntimeDLL.h
Incorporate new modular tos-bsl.
[tinyos-2.x.git] / tools / platforms / msp430 / pybsl / cp210x_rt / CP210xRuntimeDLL.h
diff --git a/tools/platforms/msp430/pybsl/cp210x_rt/CP210xRuntimeDLL.h b/tools/platforms/msp430/pybsl/cp210x_rt/CP210xRuntimeDLL.h
new file mode 100644 (file)
index 0000000..f6fa9a7
--- /dev/null
@@ -0,0 +1,56 @@
+
+// The following ifdef block is the standard way of creating macros which make exporting 
+// from a DLL simpler. All files within this DLL are compiled with the CP210xRUNTIMEDLL_EXPORTS
+// symbol defined on the command line. this symbol should not be defined on any project
+// that uses this DLL. This way any other project whose source files include this file see 
+// CP210xRUNTIMEDLL_API functions as being imported from a DLL, wheras this DLL sees symbols
+// defined with this macro as being exported.
+#ifdef CP210xRUNTIMEDLL_EXPORTS
+#define CP210xRUNTIMEDLL_API __declspec(dllexport)
+#else
+#define CP210xRUNTIMEDLL_API __declspec(dllimport)
+#endif
+
+#define                CP210x_MAX_SETUP_LENGTH                                 65536
+
+#ifndef _CP210x_STANDARD_DEF_
+#define _CP210x_STANDARD_DEF_
+// GetDeviceVersion() return codes
+#define                CP210x_CP2101_VERSION                           0x01
+#define                CP210x_CP2102_VERSION                           0x02
+#define                CP210x_CP2103_VERSION                           0x03
+                                                                                               
+// Return codes                                                                        
+#define                CP210x_SUCCESS                                          0x00
+#define                CP210x_DEVICE_NOT_FOUND                         0xFF
+#define                CP210x_INVALID_HANDLE                           0x01
+#define                CP210x_INVALID_PARAMETER                        0x02
+#define                CP210x_DEVICE_IO_FAILED                         0x03
+#define                CP210x_FUNCTION_NOT_SUPPORTED           0x04
+#define                CP210x_GLOBAL_DATA_ERROR                        0x05
+#define                CP210x_COMMAND_FAILED                           0x08
+#define                CP210x_INVALID_ACCESS_TYPE                      0x09
+
+// Type definitions
+typedef                int             CP210x_STATUS;
+#endif /*_CP210x_STANDARD_DEF_*/
+
+// Mask and Latch value bit definitions
+#define                CP210x_GPIO_0                                           0x01
+#define                CP210x_GPIO_1                                           0x02
+#define                CP210x_GPIO_2                                           0x04
+#define                CP210x_GPIO_3                                           0x08
+
+CP210xRUNTIMEDLL_API CP210x_STATUS WINAPI
+CP210xRT_ReadLatch(    HANDLE cyHandle,
+                                       LPBYTE  lpbLatch);
+
+CP210xRUNTIMEDLL_API CP210x_STATUS WINAPI
+CP210xRT_WriteLatch(   HANDLE cyHandle,
+                                       BYTE    bMask,
+                                       BYTE    bLatch);
+
+
+CP210xRUNTIMEDLL_API CP210x_STATUS WINAPI
+CP210xRT_GetPartNumber(        HANDLE cyHandle,
+                                                               LPBYTE  lpbPartNum);