diff -r f45fd4cd3832 -r 34654679f262 doc/doxygen/html/pdo_8h-source.html --- a/doc/doxygen/html/pdo_8h-source.html Fri Jul 06 10:53:15 2007 +0200 +++ b/doc/doxygen/html/pdo_8h-source.html Mon Jul 16 08:56:03 2007 +0200 @@ -18,7 +18,7 @@
00001 /* 00002 This file is part of CanFestival, a library implementing CanOpen Stack. 00003 @@ -47,50 +47,53 @@ 00026 #include <applicfg.h> 00027 #include <def.h> 00028 -00029 /* The process_var structure -00030 Used to store the PDO before the transmission or the reception. -00031 */ -00032 typedef struct struct_s_process_var { -00033 UNS8 count; /* Size of data. Ex : for a PDO of 6 bytes of data, count = 6 */ -00034 /* WARNING s_process_var.data is subject to ENDIANISATION -00035 * (with respect to CANOPEN_BIG_ENDIAN) -00036 */ -00037 UNS8 data[PDO_MAX_LEN]; -00038 }s_process_var; -00039 -00040 #include "data.h" -00041 -00043 typedef struct struct_s_PDO { -00044 UNS32 cobId; /* COB-ID */ -00045 UNS8 len; /* Number of data transmitted (in data[]) */ -00046 UNS8 data[8]; /* Contain the data */ -00047 }s_PDO; -00048 -00055 UNS8 sendPDO (CO_Data* d, s_PDO pdo, UNS8 request); -00056 -00064 UNS8 PDOmGR (CO_Data* d, UNS32 cobId); -00065 -00071 UNS8 buildPDO (CO_Data* d, UNS16 index); -00072 -00078 UNS8 sendPDOrequest (CO_Data* d, UNS32 cobId); -00079 -00084 UNS8 proceedPDO (CO_Data* d, Message *m); -00085 -00086 /* used by the application to send a variable by PDO. -00087 * Check in which PDO the variable is mapped, and send the PDO. -00088 * of course, the others variables mapped in the PDO are also sent ! -00089 * ( ie when a specific event occured) -00090 * bus_id is hardware dependant -00091 * variable is a pointer to the variable which has to be sent. Must be -00092 * defined in the object dictionary -00093 * return 0xFF if error, else return 0 -00094 */ -00095 UNS8 sendPDOevent (CO_Data* d, void * variable); +00029 #include "can.h" +00030 +00031 typedef struct struct_s_PDO_status s_PDO_status; +00032 +00033 #include "data.h" +00034 +00035 /* Status of the TPDO : */ +00036 #define PDO_INHIBITED 0x01 +00037 #define PDO_RTR_SYNC_READY 0x01 +00038 +00040 struct struct_s_PDO_status { +00041 UNS8 transmit_type_parameter; +00042 TIMER_HANDLE event_timer; +00043 TIMER_HANDLE inhibit_timer; +00044 Message last_message; +00045 }; +00046 +00047 #define s_PDO_staus_Initializer {0, TIMER_NONE, TIMER_NONE, Message_Initializer} +00048 +00053 #define TRANS_EVERY_N_SYNC(n) (n) /*n = 1 to 240 */ +00054 #define TRANS_SYNC_MIN 1 /* Trans after reception of n SYNC. n = 1 to 240 */ +00055 #define TRANS_SYNC_MAX 240 /* Trans after reception of n SYNC. n = 1 to 240 */ +00056 #define TRANS_RTR_SYNC 252 /* Transmission on request */ +00057 #define TRANS_RTR 253 /* Transmission on request */ +00058 #define TRANS_EVENT_SPECIFIC 254 /* Transmission on event */ +00059 #define TRANS_EVENT_PROFILE 255 /* Transmission on event */ +00060 +00069 UNS8 buildPDO(CO_Data* d, UNS8 numPdo, Message *pdo); +00070 +00076 UNS8 sendPDOrequest( CO_Data* d, UNS16 RPDOIndex ); +00077 +00082 UNS8 proceedPDO (CO_Data* d, Message *m); +00083 +00090 UNS8 sendPDOevent (CO_Data* d); +00091 +00095 UNS8 _sendPDOevent(CO_Data* d, UNS8 isSyncEvent); 00096 -00097 /* copy bit per bit in little endian */ -00098 void CopyBits(UNS8 NbBits, UNS8* SrcByteIndex, UNS8 SrcBitIndex, UNS8 SrcBigEndian, UNS8* DestByteIndex, UNS8 DestBitIndex, UNS8 DestBigEndian); -00099 #endif -