master/canopen.h
changeset 814 a51f857b1b2d
parent 758 8fa6f825eb7d
child 831 ded9519c8d6e
equal deleted inserted replaced
813:bfc3f1ab52de 814:a51f857b1b2d
    48 #include "slave.h"
    48 #include "slave.h"
    49 
    49 
    50 /*****************************************************************************/
    50 /*****************************************************************************/
    51 
    51 
    52 /**
    52 /**
    53    CANopen SDO.
    53    CANopen Sdo.
    54 */
    54 */
    55 
    55 
    56 struct ec_sdo
    56 struct ec_sdo
    57 {
    57 {
    58     struct kobject kobj; /**< kobject */
    58     struct kobject kobj; /**< kobject */
    59     struct list_head list; /**< list item */
    59     struct list_head list; /**< list item */
    60     ec_slave_t *slave; /**< parent slave */
    60     ec_slave_t *slave; /**< parent slave */
    61     uint16_t index; /**< SDO index */
    61     uint16_t index; /**< Sdo index */
    62     uint8_t object_code; /**< object code */
    62     uint8_t object_code; /**< object code */
    63     char *name; /**< SDO name */
    63     char *name; /**< Sdo name */
    64     uint8_t subindices; /**< subindices */
    64     uint8_t subindices; /**< subindices */
    65     struct list_head entries; /**< entry list */
    65     struct list_head entries; /**< entry list */
    66 };
    66 };
    67 
    67 
    68 /*****************************************************************************/
    68 /*****************************************************************************/
    69 
    69 
    70 /**
    70 /**
    71    CANopen SDO entry.
    71    CANopen Sdo entry.
    72 */
    72 */
    73 
    73 
    74 typedef struct
    74 typedef struct
    75 {
    75 {
    76     struct kobject kobj; /**< kobject */
    76     struct kobject kobj; /**< kobject */
    77     struct list_head list; /**< list item */
    77     struct list_head list; /**< list item */
    78     ec_sdo_t *sdo; /**< parent SDO */
    78     ec_sdo_t *sdo; /**< parent Sdo */
    79     uint8_t subindex; /**< entry subindex */
    79     uint8_t subindex; /**< entry subindex */
    80     uint16_t data_type; /**< entry data type */
    80     uint16_t data_type; /**< entry data type */
    81     uint16_t bit_length; /**< entry length in bit */
    81     uint16_t bit_length; /**< entry length in bit */
    82     char *description; /**< entry description */
    82     char *description; /**< entry description */
    83 }
    83 }
    84 ec_sdo_entry_t;
    84 ec_sdo_entry_t;
    85 
    85 
    86 /*****************************************************************************/
    86 /*****************************************************************************/
    87 
    87 
    88 /**
    88 /**
    89    CANopen SDO configuration data.
    89    CANopen Sdo configuration data.
    90 */
    90 */
    91 
    91 
    92 typedef struct
    92 typedef struct
    93 {
    93 {
    94     struct list_head list; /**< list item */
    94     struct list_head list; /**< list item */
    95     uint16_t index; /**< SDO index */
    95     uint16_t index; /**< Sdo index */
    96     uint8_t subindex; /**< SDO subindex */
    96     uint8_t subindex; /**< Sdo subindex */
    97     uint8_t *data; /**< pointer to SDO data */
    97     uint8_t *data; /**< pointer to Sdo data */
    98     size_t size; /**< size of SDO data */
    98     size_t size; /**< size of Sdo data */
    99 }
    99 }
   100 ec_sdo_data_t;
   100 ec_sdo_data_t;
   101 
   101 
   102 /*****************************************************************************/
   102 /*****************************************************************************/
   103 
   103 
   104 /**
   104 /**
   105    CANopen SDO request.
   105    CANopen Sdo request.
   106 */
   106 */
   107 
   107 
   108 typedef struct
   108 typedef struct
   109 {
   109 {
   110     struct list_head list; /**< list item */
   110     struct list_head list; /**< list item */
   111     ec_sdo_entry_t *entry; /**< SDO entry */
   111     ec_sdo_entry_t *entry; /**< Sdo entry */
   112     uint8_t *data; /**< pointer to SDO data */
   112     uint8_t *data; /**< pointer to Sdo data */
   113     size_t size; /**< size of SDO data */
   113     size_t size; /**< size of Sdo data */
   114     ec_request_state_t state; /**< SDO request state */
   114     ec_request_state_t state; /**< Sdo request state */
   115 }
   115 }
   116 ec_sdo_request_t;
   116 ec_sdo_request_t;
   117 
   117 
   118 /*****************************************************************************/
   118 /*****************************************************************************/
   119 
   119