diff -r 003cc3c63855 -r f49e5a6b7804 doc/doxygen/html/sdo_8c.html --- a/doc/doxygen/html/sdo_8c.html Fri Jun 08 09:02:43 2007 +0200 +++ b/doc/doxygen/html/sdo_8c.html Fri Jun 08 09:23:56 2007 +0200 @@ -1,6 +1,6 @@ -CanFestival: /home/epimerde/documents/tc11/CanFestival-3/src/sdo.c File Reference +CanFestival: src/sdo.c File Reference @@ -8,19 +8,42 @@
-

/home/epimerde/documents/tc11/CanFestival-3/src/sdo.c File Reference

#include "objacces.h"
-#include "sdo.h"
-#include "canfestival.h"
- -

-Include dependency graph for sdo.c:

+ +

sdo.c File Reference

#include "objacces.h"
+#include "sdo.h"
+#include "canfestival.h"
+ +

+Include dependency graph for sdo.c:

+ + + + + + + + + + + + + + + + + + +

Go to the source code of this file. @@ -55,55 +78,55 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#define RestartSDO_TIMER(id)

Functions

INLINE UNS8 _writeNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data, SDOCallback_t Callback, UNS8 endianize)
INLINE UNS8 _readNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType, SDOCallback_t Callback)
void SDOTimeoutAlarm (CO_Data *d, UNS32 id)
void resetSDO (CO_Data *d)
UNS32 SDOlineToObjdict (CO_Data *d, UNS8 line)
UNS32 objdictToSDOline (CO_Data *d, UNS8 line)
UNS8 lineToSDO (CO_Data *d, UNS8 line, UNS8 nbBytes, UNS8 *data)
UNS8 SDOtoLine (CO_Data *d, UNS8 line, UNS8 nbBytes, UNS8 *data)
UNS8 failedSDO (CO_Data *d, UNS8 nodeId, UNS8 whoami, UNS16 index, UNS8 subIndex, UNS32 abortCode)
void resetSDOline (CO_Data *d, UNS8 line)
UNS8 initSDOline (CO_Data *d, UNS8 line, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 state)
UNS8 getSDOfreeLine (CO_Data *d, UNS8 whoami, UNS8 *line)
UNS8 getSDOlineOnUse (CO_Data *d, UNS8 nodeId, UNS8 whoami, UNS8 *line)
UNS8 closeSDOtransfer (CO_Data *d, UNS8 nodeId, UNS8 whoami)
UNS8 getSDOlineRestBytes (CO_Data *d, UNS8 line, UNS8 *nbBytes)
UNS8 setSDOlineRestBytes (CO_Data *d, UNS8 line, UNS8 nbBytes)
UNS8 sendSDO (CO_Data *d, UNS8 whoami, s_SDO sdo)
UNS8 sendSDOabort (CO_Data *d, UNS8 whoami, UNS16 index, UNS8 subIndex, UNS32 abortCode)
UNS8 proceedSDO (CO_Data *d, Message *m)
UNS8 writeNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data)
UNS8 writeNetworkDictCallBack (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data, SDOCallback_t Callback)
UNS8 readNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType)
UNS8 readNetworkDictCallback (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType, SDOCallback_t Callback)
UNS8 getReadResultNetworkDict (CO_Data *d, UNS8 nodeId, void *data, UNS8 *size, UNS32 *abortCode)
UNS8 getWriteResultNetworkDict (CO_Data *d, UNS8 nodeId, UNS32 *abortCode)
INLINE UNS8 _writeNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data, SDOCallback_t Callback, UNS8 endianize)
INLINE UNS8 _readNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType, SDOCallback_t Callback)
void SDOTimeoutAlarm (CO_Data *d, UNS32 id)
void resetSDO (CO_Data *d)
UNS32 SDOlineToObjdict (CO_Data *d, UNS8 line)
UNS32 objdictToSDOline (CO_Data *d, UNS8 line)
UNS8 lineToSDO (CO_Data *d, UNS8 line, UNS8 nbBytes, UNS8 *data)
UNS8 SDOtoLine (CO_Data *d, UNS8 line, UNS8 nbBytes, UNS8 *data)
UNS8 failedSDO (CO_Data *d, UNS8 nodeId, UNS8 whoami, UNS16 index, UNS8 subIndex, UNS32 abortCode)
void resetSDOline (CO_Data *d, UNS8 line)
UNS8 initSDOline (CO_Data *d, UNS8 line, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 state)
UNS8 getSDOfreeLine (CO_Data *d, UNS8 whoami, UNS8 *line)
UNS8 getSDOlineOnUse (CO_Data *d, UNS8 nodeId, UNS8 whoami, UNS8 *line)
UNS8 closeSDOtransfer (CO_Data *d, UNS8 nodeId, UNS8 whoami)
UNS8 getSDOlineRestBytes (CO_Data *d, UNS8 line, UNS8 *nbBytes)
UNS8 setSDOlineRestBytes (CO_Data *d, UNS8 line, UNS8 nbBytes)
UNS8 sendSDO (CO_Data *d, UNS8 whoami, s_SDO sdo)
UNS8 sendSDOabort (CO_Data *d, UNS8 whoami, UNS16 index, UNS8 subIndex, UNS32 abortCode)
UNS8 proceedSDO (CO_Data *d, Message *m)
UNS8 writeNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data)
UNS8 writeNetworkDictCallBack (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 count, UNS8 dataType, void *data, SDOCallback_t Callback)
UNS8 readNetworkDict (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType)
UNS8 readNetworkDictCallback (CO_Data *d, UNS8 nodeId, UNS16 index, UNS8 subIndex, UNS8 dataType, SDOCallback_t Callback)
UNS8 getReadResultNetworkDict (CO_Data *d, UNS8 nodeId, void *data, UNS8 *size, UNS32 *abortCode)
UNS8 getWriteResultNetworkDict (CO_Data *d, UNS8 nodeId, UNS32 *abortCode)


Detailed Description

@@ -382,8 +405,8 @@

-Value:

MSG_WAR(0x3A07, "restartSDO_TIMER for line : ", line);\
-if(d->transfers[id].timer != TIMER_NONE) { StopSDO_TIMER(id) StartSDO_TIMER(id) }
+Value:
MSG_WAR(0x3A07, "restartSDO_TIMER for line : ", line);\
+if(d->transfers[id].timer != TIMER_NONE) { StopSDO_TIMER(id) StartSDO_TIMER(id) }
 

Definition at line 160 of file sdo.c. @@ -408,8 +431,8 @@

-Value:

MSG_WAR(0x3A06, "StartSDO_TIMER for line : ", line);\
-d->transfers[id].timer = SetAlarm(d,id,&SDOTimeoutAlarm,MS_TO_TIMEVAL(SDO_TIMEOUT_MS),0);
+Value:
MSG_WAR(0x3A06, "StartSDO_TIMER for line : ", line);\
+d->transfers[id].timer = SetAlarm(d,id,&SDOTimeoutAlarm,MS_TO_TIMEVAL(SDO_TIMEOUT_MS),0);
 

Definition at line 156 of file sdo.c. @@ -434,8 +457,8 @@

-Value:

MSG_WAR(0x3A05, "StopSDO_TIMER for line : ", line);\
-d->transfers[id].timer = DelAlarm(d->transfers[id].timer);
+Value:
MSG_WAR(0x3A05, "StopSDO_TIMER for line : ", line);\
+d->transfers[id].timer = DelAlarm(d->transfers[id].timer);
 

Definition at line 152 of file sdo.c. @@ -451,7 +474,7 @@ INLINE UNS8 _readNetworkDict ( - CO_Data *  + CO_Datad, @@ -481,7 +504,7 @@ - SDOCallback_t  + SDOCallback_t  Callback  @@ -507,25 +530,21 @@

Returns:

-Verify that there is no SDO communication yet.

-Taking the line ...

-Check which SDO to use to communicate with the node

-looking for the nodeId server

-Send the SDO to the server. Initiate upload, cs=2. -

Definition at line 1406 of file sdo.c.

-References getSDOfreeLine(), getSDOlineOnUse(), initSDOline(), resetSDOline(), and sendSDO(). +References struct_s_SDO::body, td_indextable::bSubCount, struct_s_transfer::Callback, struct_s_timer_entry::d, BODY::data, struct_s_transfer::dataType, struct_CO_Data::firstIndex, getSDOfreeLine(), getSDOlineOnUse(), initSDOline(), struct_CO_Data::lastIndex, MSG_ERR, MSG_WAR, struct_s_SDO::nodeId, struct_CO_Data::objdict, td_subindex::pObject, td_indextable::pSubindex, resetSDOline(), SDO_CLIENT, s_quick_index::SDO_CLT, SDO_UPLOAD_IN_PROGRESS, sendSDO(), struct_CO_Data::transfers, UNS16, UNS32, and UNS8.

Referenced by readNetworkDict(), and readNetworkDictCallback().

Here is the call graph for this function:

- + + +
@@ -537,7 +556,7 @@ INLINE UNS8 _writeNetworkDict ( - CO_Data *  + CO_Datad, @@ -579,7 +598,7 @@ - SDOCallback_t  + SDOCallback_t  Callback, @@ -623,7 +642,7 @@ UNS8 closeSDOtransfer ( - CO_Data *  + CO_Datad, @@ -660,7 +679,9 @@

Definition at line 439 of file sdo.c.

-References getSDOlineOnUse(), and resetSDOline(). +References struct_s_timer_entry::d, getSDOlineOnUse(), MSG_WAR, resetSDOline(), and UNS8. +

+Referenced by ReadSDO(), and TestMaster_post_TPDO().

Here is the call graph for this function:

@@ -678,7 +699,7 @@ UNS8 failedSDO ( - CO_Data *  + CO_Datad, @@ -736,7 +757,7 @@

Definition at line 307 of file sdo.c.

-References getSDOlineOnUse(), resetSDOline(), sendSDOabort(), and StopSDO_TIMER. +References struct_s_timer_entry::d, getSDOlineOnUse(), MSG_WAR, resetSDOline(), SDO_ABORTED_INTERNAL, SDO_CLIENT, SDO_SERVER, sendSDOabort(), struct_s_transfer::state, StopSDO_TIMER, struct_CO_Data::transfers, and UNS8.

Referenced by proceedSDO().

@@ -747,6 +768,8 @@ + +

@@ -758,7 +781,7 @@ UNS8 getReadResultNetworkDict ( - CO_Data *  + CO_Datad, @@ -807,12 +830,11 @@
Returns:

-Looking for the line tranfert.

-Transfert is finished. Put the value in the data. -

Definition at line 1532 of file sdo.c.

-References getSDOlineOnUse(). +References CANOPEN_BIG_ENDIAN, struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::data, struct_s_transfer::dataType, getSDOlineOnUse(), MSG_ERR, SDO_ABORTED_INTERNAL, SDO_CLIENT, SDO_FINISHED, struct_s_transfer::state, struct_CO_Data::transfers, UNS8, and visible_string. +

+Referenced by ReadSDO(), and TestMaster_post_TPDO().

Here is the call graph for this function:

@@ -828,7 +850,7 @@ UNS8 getSDOfreeLine ( - CO_Data *  + CO_Datad, @@ -865,6 +887,8 @@

Definition at line 388 of file sdo.c.

+References struct_s_timer_entry::d, SDO_MAX_SIMULTANEOUS_TRANSFERTS, SDO_RESET, struct_s_transfer::state, struct_CO_Data::transfers, UNS8, and struct_s_transfer::whoami. +

Referenced by _readNetworkDict(), _writeNetworkDict(), and proceedSDO().

@@ -875,7 +899,7 @@ UNS8 getSDOlineOnUse ( - CO_Data *  + CO_Datad, @@ -919,6 +943,8 @@

Definition at line 414 of file sdo.c.

+References struct_s_timer_entry::d, struct_s_transfer::nodeId, SDO_MAX_SIMULTANEOUS_TRANSFERTS, SDO_RESET, struct_s_transfer::state, struct_CO_Data::transfers, UNS8, and struct_s_transfer::whoami. +

Referenced by _readNetworkDict(), _writeNetworkDict(), closeSDOtransfer(), failedSDO(), getReadResultNetworkDict(), getWriteResultNetworkDict(), and proceedSDO().

@@ -929,7 +955,7 @@ UNS8 getSDOlineRestBytes ( - CO_Data *  + CO_Datad, @@ -966,6 +992,8 @@

Definition at line 461 of file sdo.c.

+References struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::offset, struct_CO_Data::transfers, and UNS8. +

Referenced by proceedSDO().

@@ -976,7 +1004,7 @@ UNS8 getWriteResultNetworkDict ( - CO_Data *  + CO_Datad, @@ -1011,11 +1039,9 @@

Returns:

-Looking for the line tranfert. -

Definition at line 1573 of file sdo.c.

-References getSDOlineOnUse(). +References struct_s_transfer::abortCode, struct_s_timer_entry::d, getSDOlineOnUse(), MSG_ERR, SDO_ABORTED_INTERNAL, SDO_CLIENT, struct_s_transfer::state, struct_CO_Data::transfers, and UNS8.

Here is the call graph for this function:

@@ -1031,7 +1057,7 @@ UNS8 initSDOline ( - CO_Data *  + CO_Datad, @@ -1089,7 +1115,7 @@

Definition at line 359 of file sdo.c.

-References StartSDO_TIMER, and StopSDO_TIMER. +References struct_s_transfer::Callback, struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::dataType, struct_s_transfer::index, MSG_WAR, struct_s_transfer::nodeId, struct_s_transfer::offset, SDO_DOWNLOAD_IN_PROGRESS, SDO_UPLOAD_IN_PROGRESS, StartSDO_TIMER, struct_s_transfer::state, StopSDO_TIMER, struct_s_transfer::subIndex, struct_s_transfer::toggle, and struct_CO_Data::transfers.

Referenced by _readNetworkDict(), _writeNetworkDict(), proceedSDO(), and resetSDOline(). @@ -1101,7 +1127,7 @@ UNS8 lineToSDO ( - CO_Data *  + CO_Datad, @@ -1145,6 +1171,8 @@

Definition at line 250 of file sdo.c.

+References struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::data, MSG_ERR, struct_s_transfer::offset, SDO_MAX_LENGTH_TRANSFERT, struct_CO_Data::transfers, and UNS8. +

Referenced by proceedSDO().

@@ -1155,7 +1183,7 @@ UNS32 objdictToSDOline ( - CO_Data *  + CO_Datad, @@ -1185,7 +1213,7 @@

Definition at line 209 of file sdo.c.

-References getODentry(). +References struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::data, getODentry(), struct_s_transfer::index, MSG_WAR, OD_SUCCESSFUL, struct_s_transfer::offset, struct_s_transfer::subIndex, struct_CO_Data::transfers, UNS32, and UNS8.

Referenced by proceedSDO().

@@ -1205,13 +1233,13 @@ UNS8 proceedSDO ( - CO_Data *  - d, - - - - - Message *  + CO_Data *  + d, + + + + + Messagem  @@ -1233,141 +1261,12 @@

Returns:

-received or to be transmited.

-The node from which the SDO is received

-node id in 32 bits, for temporary use

-SDO_SERVER or SDO_CLIENT.

-while reading or writing in the local object dictionary.

-SDO to transmit

-Looking for the cobId in the object dictionary.

-Am-I a server ?

-In case of server, the node id of the client may be unknown. So we put the index minus offset

-0x1200 where the cobid received is defined.

-end while

-Am-I client ?

-a) Looking for the cobid received.

-b) cobid found, so reading the node id of the server.

-This SDO was not for us !

-Test if the size of the SDO is ok

-Testing the command specifier

-Allowed : cs = 0, 1, 2, 3, 4. (= all except those for block tranfert).

-cs = other : Not allowed -> abort.

-I am SERVER

-Receiving a download segment data.

-A SDO transfert should have been yet initiated.

-Reset the wathdog

-Toggle test.

-Nb of data to be downloaded

-Store the data in the transfert structure.

-Sending the SDO response, CS = 1

-The node id of the server, (here it is the sender).

-Inverting the toggle for the next segment.

-If it was the last segment,

-Transfering line data to object dictionary.

-The code does not use the "d" of initiate frame. So it is safe if e=s=0

-Release of the line

-I am CLIENT

-It is a request for a previous upload segment. We should find a line opened for this.

-Reset the wathdog

-test of the toggle;

-nb of data to be uploaded

-Storing the data in the line structure.

-Inverting the toggle for the next segment.

-If it was the last segment,

-Put in state finished

-The code is safe for the case e=s=0 in initiate frame.

-more segments to receive

-Sending the request for the next segment.

-I am SERVER

-Receive of an initiate download

-Search if a SDO transfert have been yet initiated

-No line on use. Great !

-Try to open a new line.

-If SDO expedited

-nb of data to be downloaded

-Storing the data in the line structure.

-SDO expedited -> transfert finished. Data can be stored in the dictionary.

-The line will be reseted when it is downloading in the dictionary.

-Transfering line data to object dictionary.

-Release of the line.

-So, if it is not an expedited transfert

-TODO : if e and s = 0, not reading m->data[4] but put nbBytes = 0

-Transfert limited to 255 bytes.

-Sending a SDO, cs=3

-The node id of the server, (here it is the sender).

-I am CLIENT

-It is a response for a previous download segment. We should find a line opened for this.

-Reset the wathdog

-test of the toggle;

-End transmission or downloading next segment. We need to know if it will be the last one.

-At least one transfer to send.

-several segments to download.

-code to send the next segment. (cs = 0; c = 0)

-Last segment.

-code to send the last segment. (cs = 0; c = 1)

-end if I am a CLIENT

-I am SERVER

-Receive of an initiate upload.

-Search if a SDO transfert have been yet initiated

-No line on use. Great !

-Try to open a new line.

-Transfer data from dictionary to the line structure.

-Preparing the response.

-Nb bytes to transfer ?

The server node Id;

-normal transfert. (segmented).

-code to send the initiate upload response. (cs = 2)

-It takes too much memory to upgrate to 2^32 because the size of data is also coded

-in the object dictionary, at every index and subindex.

-Expedited upload. (cs = 2 ; e = 1)

-Release the line.

-end if I am SERVER

-I am CLIENT

-It is the response for the previous initiate upload request.

-We should find a line opened for this.

-Reset the wathdog

-nb of data to be uploaded

-Storing the data in the line structure.

-SDO expedited -> transfert finished. data are available via getReadResultNetworkDict().

-So, if it is not an expedited transfert

-Storing the nb of data to receive.

-Remember the limitation to 255 bytes to transfert

-Requesting next segment. (cs = 3)

-End if CLIENT

-I am SERVER

-Receiving a upload segment.

-A SDO transfert should have been yet initiated.

-Reset the wathdog

-Toggle test.

-Uploading next segment. We need to know if it will be the last one.

-The segment to transfer is not the last one.

-code to send the next segment. (cs = 0; c = 0)

-Inverting the toggle for the next tranfert.

-Last segment.

-code to send the last segment. (cs = 0; c = 1)

-The server node Id;

-Release the line

-I am CLIENT

-It is the response for the previous initiate download request.

-We should find a line opened for this.

-Reset the watchdog

-more than one request to send

-code to send the next segment. (cs = 0; c = 0)

-The server node Id;

-Last segment.

-code to send the last segment. (cs = 0; c = 1)

-The server node Id;

-Received SDO abort.

-Looking for the line concerned.

-Tips : The end user has no way to know that the server node has received an abort SDO.

-Its is ok, I think.

-If I am CLIENT

-The line *must* be released by the core program.

-Error : Unknown cs +The server node Id;

Definition at line 608 of file sdo.c.

-References failedSDO(), getSDOc, getSDOcs, getSDOe, getSDOfreeLine(), getSDOindex, getSDOlineOnUse(), getSDOlineRestBytes(), getSDOn2, getSDOn3, getSDOs, getSDOsubIndex, getSDOt, initSDOline(), lineToSDO(), objdictToSDOline(), resetSDOline(), RestartSDO_TIMER, SDOlineToObjdict(), SDOtoLine(), sendSDO(), setSDOlineRestBytes(), and StopSDO_TIMER. +References struct_s_transfer::abortCode, struct_CO_Data::bDeviceNodeId, struct_s_SDO::body, td_indextable::bSubCount, struct_s_transfer::Callback, struct_s_transfer::count, struct_s_timer_entry::d, Message::data, BODY::data, failedSDO(), struct_CO_Data::firstIndex, getSDOc, getSDOcs, getSDOe, getSDOfreeLine(), getSDOindex, getSDOlineOnUse(), getSDOlineRestBytes(), getSDOn2, getSDOn3, getSDOs, getSDOsubIndex, getSDOt, struct_s_transfer::index, initSDOline(), struct_CO_Data::lastIndex, lineToSDO(), MSG_ERR, MSG_WAR, struct_s_SDO::nodeId, struct_CO_Data::objdict, objdictToSDOline(), td_subindex::pObject, td_indextable::pSubindex, resetSDOline(), RestartSDO_TIMER, SDO_ABORTED_RCV, SDO_CLIENT, s_quick_index::SDO_CLT, SDO_DOWNLOAD_IN_PROGRESS, SDO_FINISHED, SDO_SERVER, s_quick_index::SDO_SVR, SDO_UNKNOWN, SDO_UPLOAD_IN_PROGRESS, SDOABT_GENERAL_ERROR, SDOABT_LOCAL_CTRL_ERROR, SDOABT_TOGGLE_NOT_ALTERNED, SDOlineToObjdict(), SDOtoLine(), sendSDO(), setSDOlineRestBytes(), struct_s_transfer::state, StopSDO_TIMER, struct_s_transfer::subIndex, struct_s_transfer::toggle, struct_CO_Data::transfers, UNS16, UNS32, and UNS8.

Referenced by canDispatch().

@@ -1386,6 +1285,7 @@ + @@ -1402,7 +1302,7 @@ UNS8 readNetworkDict ( - CO_Data *  + CO_Datad, @@ -1453,16 +1353,20 @@

Definition at line 1499 of file sdo.c.

-References _readNetworkDict(). +References _readNetworkDict(), and struct_s_timer_entry::d. +

+Referenced by ReadSDO(), and TestMaster_post_TPDO().

Here is the call graph for this function:

- + + + @@ -1474,7 +1378,7 @@ UNS8 readNetworkDictCallback ( - CO_Data *  + CO_Datad, @@ -1504,7 +1408,7 @@ - SDOCallback_t  + SDOCallback_t  Callback  @@ -1532,16 +1436,18 @@

Definition at line 1516 of file sdo.c.

-References _readNetworkDict(). +References _readNetworkDict(), and struct_s_timer_entry::d.

Here is the call graph for this function:

- + + + @@ -1553,7 +1459,7 @@ void resetSDO ( - CO_Data *  + CO_Datad  )  @@ -1571,11 +1477,9 @@

-transfer structure initialization -

Definition at line 169 of file sdo.c.

-References resetSDOline(). +References struct_s_timer_entry::d, resetSDOline(), SDO_MAX_SIMULTANEOUS_TRANSFERTS, and UNS8.

Referenced by switchCommunicationState().

@@ -1594,7 +1498,7 @@ void resetSDOline ( - CO_Data *  + CO_Datad, @@ -1623,7 +1527,7 @@

Definition at line 338 of file sdo.c.

-References initSDOline(). +References struct_s_timer_entry::d, struct_s_transfer::data, initSDOline(), MSG_WAR, SDO_MAX_LENGTH_TRANSFERT, SDO_RESET, struct_CO_Data::transfers, and UNS8.

Referenced by _readNetworkDict(), _writeNetworkDict(), closeSDOtransfer(), failedSDO(), proceedSDO(), resetSDO(), and SDOTimeoutAlarm().

@@ -1641,7 +1545,7 @@ UNS32 SDOlineToObjdict ( - CO_Data *  + CO_Datad, @@ -1671,7 +1575,7 @@

Definition at line 186 of file sdo.c.

-References setODentry(). +References struct_s_transfer::count, struct_s_timer_entry::d, struct_s_transfer::data, struct_s_transfer::index, MSG_WAR, OD_SUCCESSFUL, setODentry(), struct_s_transfer::subIndex, struct_CO_Data::transfers, UNS32, and UNS8.

Referenced by proceedSDO().

@@ -1691,7 +1595,7 @@ void SDOTimeoutAlarm ( - CO_Data *  + CO_Datad, @@ -1720,7 +1624,7 @@

Definition at line 129 of file sdo.c.

-References resetSDOline(), and sendSDOabort(). +References struct_s_transfer::abortCode, struct_s_transfer::Callback, struct_s_timer_entry::d, struct_s_transfer::index, MSG_ERR, MSG_WAR, struct_s_transfer::nodeId, resetSDOline(), SDO_ABORTED_INTERNAL, SDO_SERVER, SDOABT_TIMED_OUT, sendSDOabort(), struct_s_transfer::state, struct_s_transfer::subIndex, struct_s_transfer::timer, struct_CO_Data::transfers, UNS8, and struct_s_transfer::whoami.

Here is the call graph for this function:

@@ -1728,6 +1632,8 @@ + + @@ -1739,7 +1645,7 @@ UNS8 SDOtoLine ( - CO_Data *  + CO_Datad, @@ -1783,6 +1689,8 @@

Definition at line 279 of file sdo.c.

+References struct_s_timer_entry::d, struct_s_transfer::data, MSG_ERR, struct_s_transfer::offset, SDO_MAX_LENGTH_TRANSFERT, struct_CO_Data::transfers, and UNS8. +

Referenced by proceedSDO().

@@ -1793,7 +1701,7 @@ UNS8 sendSDO ( - CO_Data *  + CO_Datad, @@ -1805,7 +1713,7 @@ - s_SDO  + s_SDO  sdo  @@ -1828,18 +1736,18 @@

Returns:

-get the server->client cobid

-case server. Easy because today only one server SDO is authorized in CanFestival

-case client

-Get the client->server cobid.

-First, have to find at the index where is defined the communication with the server node

-Second, read the cobid client->server

-message copy for sending

-the length of SDO must be 8 -

Definition at line 498 of file sdo.c.

+References struct_s_SDO::body, td_indextable::bSubCount, struct_CO_Data::canHandle, canSend(), Message::cob_id, struct_s_timer_entry::d, Message::data, BODY::data, struct_CO_Data::firstIndex, struct_CO_Data::lastIndex, Message::len, MSG_ERR, MSG_WAR, struct_s_SDO::nodeId, struct_CO_Data::nodeState, NOT_A_REQUEST, struct_CO_Data::objdict, Operational, td_subindex::pObject, Pre_operational, td_indextable::pSubindex, Message::rtr, s_quick_index::SDO_CLT, SDO_SERVER, s_quick_index::SDO_SVR, UNS16, UNS32, UNS8, and SHORT_CAN::w. +

Referenced by _readNetworkDict(), _writeNetworkDict(), proceedSDO(), and sendSDOabort(). +

+Here is the call graph for this function:

+ + + + +

@@ -1849,7 +1757,7 @@ UNS8 sendSDOabort ( - CO_Data *  + CO_Datad, @@ -1900,13 +1808,15 @@

Definition at line 578 of file sdo.c.

-References sendSDO(). +References struct_CO_Data::bDeviceNodeId, struct_s_SDO::body, struct_s_timer_entry::d, BODY::data, MSG_WAR, struct_s_SDO::nodeId, sendSDO(), and UNS8.

Referenced by failedSDO(), and SDOTimeoutAlarm().

Here is the call graph for this function:

+ + @@ -1918,7 +1828,7 @@ UNS8 setSDOlineRestBytes ( - CO_Data *  + CO_Datad, @@ -1955,6 +1865,8 @@

Definition at line 479 of file sdo.c.

+References struct_s_transfer::count, struct_s_timer_entry::d, MSG_ERR, SDO_MAX_LENGTH_TRANSFERT, and struct_CO_Data::transfers. +

Referenced by proceedSDO().

@@ -1965,7 +1877,7 @@ UNS8 writeNetworkDict ( - CO_Data *  + CO_Datad, @@ -2030,16 +1942,18 @@

Definition at line 1368 of file sdo.c.

-References _writeNetworkDict(). +References _writeNetworkDict(), and struct_s_timer_entry::d.

Here is the call graph for this function:

- + - - + + + + @@ -2051,7 +1965,7 @@ UNS8 writeNetworkDictCallBack ( - CO_Data *  + CO_Datad, @@ -2093,7 +2007,7 @@ - SDOCallback_t  + SDOCallback_t  Callback  @@ -2123,21 +2037,23 @@

Definition at line 1388 of file sdo.c.

-References _writeNetworkDict(). +References _writeNetworkDict(), and struct_s_timer_entry::d.

Here is the call graph for this function:

- - + + + +

-


Generated on Tue Jun 5 18:32:09 2007 for CanFestival by  +
Generated on Fri Jun 8 08:52:14 2007 for CanFestival by  doxygen 1.5.1