diff -r f45fd4cd3832 -r 34654679f262 doc/doxygen/html/data_8h-source.html --- a/doc/doxygen/html/data_8h-source.html Fri Jul 06 10:53:15 2007 +0200 +++ b/doc/doxygen/html/data_8h-source.html Mon Jul 16 08:56:03 2007 +0200 @@ -18,7 +18,7 @@
  • Globals
  • +include

    data.h

    Go to the documentation of this file.
    00001 /*
     00002 This file is part of CanFestival, a library implementing CanOpen Stack. 
     00003 
    @@ -48,7 +48,7 @@
     00027 /* declaration of CO_Data type let us include all necessary headers
     00028  struct struct_CO_Data can then be defined later
     00029  */
    -00030 typedef struct struct_CO_Data CO_Data;
    +00030 typedef struct struct_CO_Data CO_Data;
     00031 
     00032 #include "applicfg.h"
     00033 #include "def.h"
    @@ -65,149 +65,140 @@
     00044 /* This structurs contains all necessary information for a CanOpen node */
     00045 struct struct_CO_Data {
     00046         /* Object dictionary */
    -00047         UNS8 *bDeviceNodeId;
    -00048         const indextable *objdict;
    -00049         UNS8 *count_sync;
    -00050         quick_index *firstIndex;
    -00051         quick_index *lastIndex;
    -00052         UNS16 *ObjdictSize;
    -00053         const UNS8 *iam_a_slave;
    -00054         valueRangeTest_t valueRangeTest;
    +00047         UNS8 *bDeviceNodeId;
    +00048         const indextable *objdict;
    +00049         s_PDO_status *PDO_status;
    +00050         quick_index *firstIndex;
    +00051         quick_index *lastIndex;
    +00052         UNS16 *ObjdictSize;
    +00053         const UNS8 *iam_a_slave;
    +00054         valueRangeTest_t valueRangeTest;
     00055         
     00056         /* SDO */
    -00057         s_transfer transfers[SDO_MAX_SIMULTANEOUS_TRANSFERTS];
    +00057         s_transfer transfers[SDO_MAX_SIMULTANEOUS_TRANSFERTS];
     00058         /* s_sdo_parameter *sdo_parameters; */
     00059 
     00060         /* State machine */
    -00061         e_nodeState nodeState;
    -00062         s_state_communication CurrentCommunicationState;
    -00063         initialisation_t initialisation;
    -00064         preOperational_t preOperational;
    -00065         operational_t operational;
    -00066         stopped_t stopped;
    +00061         e_nodeState nodeState;
    +00062         s_state_communication CurrentCommunicationState;
    +00063         initialisation_t initialisation;
    +00064         preOperational_t preOperational;
    +00065         operational_t operational;
    +00066         stopped_t stopped;
     00067 
     00068         /* NMT-heartbeat */
    -00069         UNS8 *ConsumerHeartbeatCount;
    -00070         UNS32 *ConsumerHeartbeatEntries;
    -00071         TIMER_HANDLE *ConsumerHeartBeatTimers;
    -00072         UNS16 *ProducerHeartBeatTime;
    -00073         TIMER_HANDLE ProducerHeartBeatTimer;
    -00074         heartbeatError_t heartbeatError;
    -00075         e_nodeState NMTable[NMT_MAX_NODE_ID]; 
    +00069         UNS8 *ConsumerHeartbeatCount;
    +00070         UNS32 *ConsumerHeartbeatEntries;
    +00071         TIMER_HANDLE *ConsumerHeartBeatTimers;
    +00072         UNS16 *ProducerHeartBeatTime;
    +00073         TIMER_HANDLE ProducerHeartBeatTimer;
    +00074         heartbeatError_t heartbeatError;
    +00075         e_nodeState NMTable[NMT_MAX_NODE_ID]; 
     00076 
     00077         /* SYNC */
    -00078         TIMER_HANDLE syncTimer;
    -00079         UNS32 *COB_ID_Sync;
    -00080         UNS32 *Sync_Cycle_Period;
    +00078         TIMER_HANDLE syncTimer;
    +00079         UNS32 *COB_ID_Sync;
    +00080         UNS32 *Sync_Cycle_Period;
     00081         /*UNS32 *Sync_window_length;;*/
    -00082         post_sync_t post_sync;
    -00083         post_TPDO_t post_TPDO;
    +00082         post_sync_t post_sync;
    +00083         post_TPDO_t post_TPDO;
     00084         
    -00085         /* PDO */
    -00086         s_process_var process_var;
    -00087         
    -00088         /* General */
    -00089         UNS8 toggle;
    -00090         CAN_HANDLE canHandle;   
    -00091         scanIndexOD_t scanIndexOD;
    -00092         storeODSubIndex_t storeODSubIndex; 
    -00093         
    -00094         /* DCF concise */
    -00095         UNS8* dcf_cursor;
    -00096         UNS32 dcf_count_targets;
    -00097         
    -00098 };
    -00099 
    -00100 #define NMTable_Initializer Unknown_state,
    -00101 
    -00102 #define s_transfer_Initializer {\
    -00103                 0,          /* nodeId */\
    -00104                 0,          /* wohami */\
    -00105                 SDO_RESET,  /* state */\
    -00106                 0,          /* toggle */\
    -00107                 0,          /* abortCode */\
    -00108                 0,          /* index */\
    -00109                 0,          /* subIndex */\
    -00110                 0,          /* count */\
    -00111                 0,          /* offset */\
    -00112                 {0},        /* data (static use, so that all the table is initialize at 0)*/\
    -00113                 0,          /* dataType */\
    -00114                 -1,         /* timer */\
    -00115                 NULL        /* Callback */\
    -00116           },
    -00117 
    -00118 /* A macro to initialize the data in client app.*/
    -00119 /* CO_Data structure */
    -00120 #define CANOPEN_NODE_DATA_INITIALIZER(NODE_PREFIX) {\
    -00121         /* Object dictionary*/\
    -00122         & NODE_PREFIX ## _bDeviceNodeId,     /* bDeviceNodeId */\
    -00123         NODE_PREFIX ## _objdict,             /* objdict  */\
    -00124         NODE_PREFIX ## _count_sync,          /* count_sync */\
    -00125         & NODE_PREFIX ## _firstIndex,        /* firstIndex */\
    -00126         & NODE_PREFIX ## _lastIndex,         /* lastIndex */\
    -00127         & NODE_PREFIX ## _ObjdictSize,       /* ObjdictSize */\
    -00128         & NODE_PREFIX ## _iam_a_slave,       /* iam_a_slave */\
    -00129         NODE_PREFIX ## _valueRangeTest,      /* valueRangeTest */\
    -00130         \
    -00131         /* SDO, structure s_transfer */\
    -00132         {\
    -00133           REPEAT_SDO_MAX_SIMULTANEOUS_TRANSFERTS_TIMES(s_transfer_Initializer)\
    -00134         },\
    -00135         \
    -00136         /* State machine*/\
    -00137         Unknown_state,      /* nodeState */\
    -00138         /* structure s_state_communication */\
    -00139         {\
    -00140                 0,          /* csBoot_Up */\
    -00141                 0,          /* csSDO */\
    -00142                 0,          /* csEmergency */\
    -00143                 0,          /* csSYNC */\
    -00144                 0,          /* csHeartbeat */\
    -00145                 0           /* csPDO */\
    -00146         },\
    -00147         _initialisation,     /* initialisation */\
    -00148         _preOperational,     /* preOperational */\
    -00149         _operational,        /* operational */\
    -00150         _stopped,            /* stopped */\
    -00151         \
    -00152         /* NMT-heartbeat */\
    -00153         & NODE_PREFIX ## _highestSubIndex_obj1016, /* ConsumerHeartbeatCount */\
    -00154         NODE_PREFIX ## _obj1016,                   /* ConsumerHeartbeatEntries */\
    -00155         NODE_PREFIX ## _heartBeatTimers,           /* ConsumerHeartBeatTimers  */\
    -00156         & NODE_PREFIX ## _obj1017,                 /* ProducerHeartBeatTime */\
    -00157         TIMER_NONE,                                /* ProducerHeartBeatTimer */\
    -00158         _heartbeatError,           /* heartbeatError */\
    +00085         /* General */
    +00086         UNS8 toggle;
    +00087         CAN_HANDLE canHandle;   
    +00088         scanIndexOD_t scanIndexOD;
    +00089         storeODSubIndex_t storeODSubIndex; 
    +00090         
    +00091         /* DCF concise */
    +00092         UNS8* dcf_cursor;
    +00093         UNS32 dcf_count_targets;
    +00094         
    +00095 };
    +00096 
    +00097 #define NMTable_Initializer Unknown_state,
    +00098 
    +00099 #define s_transfer_Initializer {\
    +00100                 0,          /* nodeId */\
    +00101                 0,          /* wohami */\
    +00102                 SDO_RESET,  /* state */\
    +00103                 0,          /* toggle */\
    +00104                 0,          /* abortCode */\
    +00105                 0,          /* index */\
    +00106                 0,          /* subIndex */\
    +00107                 0,          /* count */\
    +00108                 0,          /* offset */\
    +00109                 {0},        /* data (static use, so that all the table is initialize at 0)*/\
    +00110                 0,          /* dataType */\
    +00111                 -1,         /* timer */\
    +00112                 NULL        /* Callback */\
    +00113           },
    +00114 
    +00115 /* A macro to initialize the data in client app.*/
    +00116 /* CO_Data structure */
    +00117 #define CANOPEN_NODE_DATA_INITIALIZER(NODE_PREFIX) {\
    +00118         /* Object dictionary*/\
    +00119         & NODE_PREFIX ## _bDeviceNodeId,     /* bDeviceNodeId */\
    +00120         NODE_PREFIX ## _objdict,             /* objdict  */\
    +00121         NODE_PREFIX ## _PDO_status,          /* PDO_status */\
    +00122         & NODE_PREFIX ## _firstIndex,        /* firstIndex */\
    +00123         & NODE_PREFIX ## _lastIndex,         /* lastIndex */\
    +00124         & NODE_PREFIX ## _ObjdictSize,       /* ObjdictSize */\
    +00125         & NODE_PREFIX ## _iam_a_slave,       /* iam_a_slave */\
    +00126         NODE_PREFIX ## _valueRangeTest,      /* valueRangeTest */\
    +00127         \
    +00128         /* SDO, structure s_transfer */\
    +00129         {\
    +00130           REPEAT_SDO_MAX_SIMULTANEOUS_TRANSFERTS_TIMES(s_transfer_Initializer)\
    +00131         },\
    +00132         \
    +00133         /* State machine*/\
    +00134         Unknown_state,      /* nodeState */\
    +00135         /* structure s_state_communication */\
    +00136         {\
    +00137                 0,          /* csBoot_Up */\
    +00138                 0,          /* csSDO */\
    +00139                 0,          /* csEmergency */\
    +00140                 0,          /* csSYNC */\
    +00141                 0,          /* csHeartbeat */\
    +00142                 0           /* csPDO */\
    +00143         },\
    +00144         _initialisation,     /* initialisation */\
    +00145         _preOperational,     /* preOperational */\
    +00146         _operational,        /* operational */\
    +00147         _stopped,            /* stopped */\
    +00148         \
    +00149         /* NMT-heartbeat */\
    +00150         & NODE_PREFIX ## _highestSubIndex_obj1016, /* ConsumerHeartbeatCount */\
    +00151         NODE_PREFIX ## _obj1016,                   /* ConsumerHeartbeatEntries */\
    +00152         NODE_PREFIX ## _heartBeatTimers,           /* ConsumerHeartBeatTimers  */\
    +00153         & NODE_PREFIX ## _obj1017,                 /* ProducerHeartBeatTime */\
    +00154         TIMER_NONE,                                /* ProducerHeartBeatTimer */\
    +00155         _heartbeatError,           /* heartbeatError */\
    +00156         \
    +00157         {REPEAT_NMT_MAX_NODE_ID_TIMES(NMTable_Initializer)},\
    +00158                                                    /* is  well initialized at "Unknown_state". Is it ok ? (FD)*/\
     00159         \
    -00160         {REPEAT_NMT_MAX_NODE_ID_TIMES(NMTable_Initializer)},\
    -00161                                                    /* is  well initialized at "Unknown_state". Is it ok ? (FD)*/\
    -00162         \
    -00163         /* SYNC */\
    -00164         TIMER_NONE,                                /* syncTimer */\
    -00165         & NODE_PREFIX ## _obj1005,                 /* COB_ID_Sync */\
    -00166         & NODE_PREFIX ## _obj1006,                 /* Sync_Cycle_Period */\
    -00167         /*& NODE_PREFIX ## _obj1007, */            /* Sync_window_length */\
    -00168         _post_sync,                 /* post_sync */\
    -00169         _post_TPDO,                 /* post_TPDO */\
    -00170         \
    -00171         /* PDO, structure s_process_var */\
    -00172         {\
    -00173                 0,          /* count */\
    -00174                 {0}         /* data (static use, so that all the table is initialize at 0)*/\
    -00175         },\
    -00176         \
    -00177         /* General */\
    -00178         0,                                         /* toggle */\
    -00179         NULL,                   /* canSend */\
    -00180         NODE_PREFIX ## _scanIndexOD,                /* scanIndexOD */\
    -00181         _storeODSubIndex,                /* storeODSubIndex */\
    -00182         NULL,           /*dcf_cursor*/\
    -00183         1               /*dcf_count_targets*/\
    -00184 }
    -00185 
    -00186 #endif /* __data_h__ */
    -00187 
    -00188 
    -

    Generated on Fri Jun 8 08:51:39 2007 for CanFestival by  +00160 /* SYNC */\ +00161 TIMER_NONE, /* syncTimer */\ +00162 & NODE_PREFIX ## _obj1005, /* COB_ID_Sync */\ +00163 & NODE_PREFIX ## _obj1006, /* Sync_Cycle_Period */\ +00164 /*& NODE_PREFIX ## _obj1007, */ /* Sync_window_length */\ +00165 _post_sync, /* post_sync */\ +00166 _post_TPDO, /* post_TPDO */\ +00167 \ +00168 /* General */\ +00169 0, /* toggle */\ +00170 NULL, /* canSend */\ +00171 NODE_PREFIX ## _scanIndexOD, /* scanIndexOD */\ +00172 _storeODSubIndex, /* storeODSubIndex */\ +00173 NULL, /*dcf_cursor*/\ +00174 1 /*dcf_count_targets*/\ +00175 } +00176 +00177 #endif /* __data_h__ */ +00178 +00179 +
    Generated on Mon Jul 2 19:10:16 2007 for CanFestival by  doxygen 1.5.1