IgH EtherCAT Master
1.6.2
sdo.h
Go to the documentation of this file.
1
/*****************************************************************************
2
*
3
* Copyright (C) 2006-2008 Florian Pose, Ingenieurgemeinschaft IgH
4
*
5
* This file is part of the IgH EtherCAT Master.
6
*
7
* The IgH EtherCAT Master is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU General Public License version 2, as
9
* published by the Free Software Foundation.
10
*
11
* The IgH EtherCAT Master is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
14
* Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License along
17
* with the IgH EtherCAT Master; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19
*
20
****************************************************************************/
21
27
/****************************************************************************/
28
29
#ifndef __EC_SDO_H__
30
#define __EC_SDO_H__
31
32
#include <linux/list.h>
33
34
#include "
globals.h
"
35
#include "
sdo_entry.h
"
36
37
/****************************************************************************/
38
41
struct
ec_sdo
{
42
struct
list_head
list
;
43
ec_slave_t
*
slave
;
44
uint16_t
index
;
45
uint8_t
object_code
;
46
char
*
name
;
47
uint8_t
max_subindex
;
48
struct
list_head
entries
;
49
};
50
51
/****************************************************************************/
52
53
void
ec_sdo_init
(
ec_sdo_t
*,
ec_slave_t
*, uint16_t);
54
void
ec_sdo_clear
(
ec_sdo_t
*);
55
56
ec_sdo_entry_t
*
ec_sdo_get_entry
(
ec_sdo_t
*, uint8_t);
57
const
ec_sdo_entry_t
*
ec_sdo_get_entry_const
(
const
ec_sdo_t
*, uint8_t);
58
59
/****************************************************************************/
60
61
#endif
ec_sdo_clear
void ec_sdo_clear(ec_sdo_t *)
SDO destructor.
Definition:
sdo.c:59
ec_sdo_get_entry_const
const ec_sdo_entry_t * ec_sdo_get_entry_const(const ec_sdo_t *, uint8_t)
Get an SDO entry from an SDO via its subindex.
Definition:
sdo.c:108
ec_sdo_entry_t
CANopen SDO entry.
Definition:
sdo_entry.h:46
ec_sdo_get_entry
ec_sdo_entry_t * ec_sdo_get_entry(ec_sdo_t *, uint8_t)
Get an SDO entry from an SDO via its subindex.
Definition:
sdo.c:83
ec_sdo_init
void ec_sdo_init(ec_sdo_t *, ec_slave_t *, uint16_t)
Constructor.
Definition:
sdo.c:39
ec_sdo::list
struct list_head list
List item.
Definition:
sdo.h:42
ec_sdo
CANopen SDO.
Definition:
sdo.h:41
ec_sdo::index
uint16_t index
SDO index.
Definition:
sdo.h:44
ec_sdo::slave
ec_slave_t * slave
Parent slave.
Definition:
sdo.h:43
globals.h
Global definitions and macros.
ec_sdo::object_code
uint8_t object_code
Object code.
Definition:
sdo.h:45
ec_slave
EtherCAT slave.
Definition:
slave.h:168
sdo_entry.h
EtherCAT CANopen SDO entry structure.
ec_sdo::name
char * name
SDO name.
Definition:
sdo.h:46
ec_sdo::entries
struct list_head entries
List of entries.
Definition:
sdo.h:48
ec_sdo::max_subindex
uint8_t max_subindex
Maximum subindex.
Definition:
sdo.h:47
Documentation automatically created by
. - IgH EtherCAT Master developed by
Ingenieurgemeinschaft IgH GmbH
. All rights reserved.