William Kane / Generic

Dependents:   LaserioLib

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers abcc_td.h Source File

abcc_td.h

00001 /*******************************************************************************
00002 ********************************************************************************
00003 **                                                                            **
00004 ** ABCC Starter Kit version 2.01.01 (2015-12-14)                              **
00005 **                                                                            **
00006 ** Delivered with:                                                            **
00007 **    ABCC Driver 4.01.01 (2015-12-14)                                        **
00008 **    ABP         7.16.01 (2015-10-14)                                        **
00009 **                                                                            */
00010 /*******************************************************************************
00011 ********************************************************************************
00012 ** COPYRIGHT NOTIFICATION (c) 2015 HMS Industrial Networks AB                 **
00013 **                                                                            **
00014 ** This code is the property of HMS Industrial Networks AB.                   **
00015 ** The source code may not be reproduced, distributed, or used without        **
00016 ** permission. When used together with a product from HMS, permission is      **
00017 ** granted to modify, reproduce and distribute the code in binary form        **
00018 ** without any restrictions.                                                  **
00019 **                                                                            **
00020 ** THE CODE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. HMS DOES NOT    **
00021 ** WARRANT THAT THE FUNCTIONS OF THE CODE WILL MEET YOUR REQUIREMENTS, OR     **
00022 ** THAT THE OPERATION OF THE CODE WILL BE UNINTERRUPTED OR ERROR-FREE, OR     **
00023 ** THAT DEFECTS IN IT CAN BE CORRECTED.                                       **
00024 ********************************************************************************
00025 ********************************************************************************
00026 ** Definition of ABCC types
00027 ********************************************************************************
00028 ********************************************************************************
00029 */
00030 
00031 #ifndef ABCC_TD_H
00032 #define ABCC_TD_H
00033 
00034 /*******************************************************************************
00035 **
00036 ** Constants
00037 **
00038 ********************************************************************************
00039 */
00040 
00041 /* #define ABCC_SYS_BIG_ENDIAN  */
00042 /* #define ABCC_SYS_16_BIT_CHAR */
00043 
00044 /*---------------------------------------------------------------------------
00045 **
00046 ** BOOL8
00047 **
00048 ** INT8
00049 ** INT16
00050 ** INT32
00051 **
00052 ** UINT8
00053 ** UINT16
00054 ** UINT32
00055 **
00056 ** FLOAT32
00057 **
00058 ** The standard boolean data type, 8-bit.
00059 ** The standard signed 8, 16, and 32 bit data types (respectively).
00060 ** The standard unsigned 8, 16, and 32 bit data types (respectively).
00061 **---------------------------------------------------------------------------
00062 */
00063 typedef int             BOOL;
00064 typedef unsigned char   BOOL8;
00065 typedef unsigned char   UINT8;
00066 typedef signed char     INT8;
00067 typedef unsigned short  UINT16;
00068 typedef signed short    INT16;
00069 typedef unsigned int    UINT32;
00070 typedef signed int      INT32;
00071 typedef float           FLOAT32;
00072 
00073 /*------------------------------------------------------------------------------
00074 ** LeINT16
00075 ** LeINT32
00076 ** LeUINT16
00077 ** LeUINT32
00078 **
00079 ** Little endian data types for words and longwords.
00080 **------------------------------------------------------------------------------
00081 */
00082 typedef INT16     LeINT16;
00083 typedef INT32     LeINT32;
00084 typedef UINT16    LeUINT16;
00085 typedef UINT32    LeUINT32;
00086 
00087 /*------------------------------------------------------------------------------
00088 ** BeINT16
00089 ** BeINT32
00090 ** BeUINT16
00091 ** BeUINT32
00092 **
00093 ** Big endian data types for words and longwords.
00094 **------------------------------------------------------------------------------
00095 */
00096 typedef INT16     BeINT16;
00097 typedef INT32     BeINT32;
00098 typedef UINT16    BeUINT16;
00099 typedef UINT32    BeUINT32;
00100 
00101 /*---------------------------------------------------------------------------
00102 **
00103 ** FALSE
00104 ** TRUE
00105 **
00106 ** These are the symbolic constants for true and false used in boolean
00107 ** data type comparisons.
00108 **
00109 **---------------------------------------------------------------------------
00110 */
00111 #ifndef FALSE
00112    #define FALSE     0
00113 #endif
00114 
00115 #ifndef TRUE
00116    #define TRUE      ( !FALSE )
00117 #endif
00118 
00119 /*---------------------------------------------------------------------------
00120 **
00121 ** NULL
00122 **
00123 ** Default value for invalid pointers.
00124 **
00125 **---------------------------------------------------------------------------
00126 */
00127 #ifndef NULL
00128 #define NULL 0
00129 #endif
00130 
00131 #ifdef __cplusplus
00132    #define CPLUSPLUS
00133 #endif
00134 
00135 #ifdef CPLUSPLUS
00136    #define EXTFUNC extern "C"
00137 #else
00138    #define EXTFUNC extern
00139 #endif
00140 
00141 #endif  /* inclusion lock */