1. Summary
  2. Files
  3. Support
  4. Report Spam
  5. Create account
  6. Log in

root/trunk/iCub/firmware/emBODY/arch-armcmx/body/embobj/embobj/embobj-icub/endpoints/mc/eOcfg_nvsEP_mc_leftleg_con.h @ 16985

Revision 16985, 6.2 KB (checked in by marcoaccame, 13 months ago)

removed not used nvids

Line 
1/*
2 * Copyright (C) 2011 Department of Robotics Brain and Cognitive Sciences - Istituto Italiano di Tecnologia
3 * Author:  Marco Accame
4 * email:   marco.accame@iit.it
5 * website: www.robotcub.org
6 * Permission is granted to copy, distribute, and/or modify this program
7 * under the terms of the GNU General Public License, version 2 or any
8 * later version published by the Free Software Foundation.
9 *
10 * A copy of the license can be found at
11 * http://www.robotcub.org/icub/license/gpl.txt
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
16 * Public License for more details
17*/
18
19// - include guard ----------------------------------------------------------------------------------------------------
20
21#ifndef _EOCFG_NVSEP_MC_LEFTLEG_CON_H_
22#define _EOCFG_NVSEP_MC_LEFTLEG_CON_H_
23
24
25
26
27/** @file       eOcfg_nvsEP_mc_leftleg_con.h
28        @brief      This header file gives the constant configuration for the NVs in the endpoint left leg
29        @author     marco.accame@iit.it
30        @date       04/05/2012
31**/
32
33/** @defgroup eo_asfdgr234 Configuation of the NVs for the updater
34    Tcecece
35   
36    @{         
37 **/
38
39
40
41// - external dependencies --------------------------------------------------------------------------------------------
42
43#include "EOconstvector.h"
44#include "EOarray.h"
45#include "EOnv.h"
46
47#include "EoMotionControl.h"
48#include "eOcfg_nvsEP_mc_any_con_bodypart.h"
49#include "eOcfg_nvsEP_mc_any_con_jxx.h"
50#include "eOcfg_nvsEP_mc_any_con_mxx.h"
51
52 
53
54// - public #define  --------------------------------------------------------------------------------------------------
55
56#define EOK_cfg_nvsEP_mc_leftleg_NUMofJOINTS                                        (6)
57#define EOK_cfg_nvsEP_mc_leftleg_NUMofMOTORS                                        (6)
58
59
60// the 16bit value to use to identify the endpoint
61#define EOK_cfg_nvsEP_mc_leftleg_EP                                                 (0x0010)
62
63// the total number of nv in the endpoint
64#define EOK_cfg_nvsEP_leftleg_NUMofVARS                                             ((EOK_cfg_nvsEP_mc_any_con_jxx_jnvindex_TOTALnumber*EOK_cfg_nvsEP_mc_leftleg_NUMofJOINTS)+(EOK_cfg_nvsEP_mc_any_con_mxx_mnvindex_TOTALnumber*EOK_cfg_nvsEP_mc_leftleg_NUMofMOTORS))
65
66#if 0
67#warning --> so far we prefer using the names coming from eOcfg_nvsEP_mc_any_con_bodypart.h, however we could add in here more specific names for the kneee, ankle, etc.
68// the 16bit used to identify the network variable inside the endpoint. they are function of the joint or motor number (jth or mth)
69#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig(jth)                                  EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig(jth)
70#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__pidposition(jth)                     EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__pidposition(jth)                       
71#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__pidvelocity(jth)                     EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__pidvelocity(jth)                     
72#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__pidtorque(jth)                       EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__pidtorque(jth)       
73#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__minpositionofjoint(jth)              EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__minpositionofjoint(jth)       
74#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__maxpositionofjoint(jth)              EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__maxpositionofjoint(jth)       
75#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__velocitysetpointtimeout(jth)         EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__velocitysetpointtimeout(jth)   
76#define EOK_cfg_nvsEP_mc_leftleg_NVID_jconfig__upto02descrforchameleon02(jth)       EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx_jconfig__upto02descrforchameleon02(jth)       
77#define EOK_cfg_nvsEP_mc_leftleg_NVID__jstatus(jth)                                 EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx__jstatus(jth)                 
78#define EOK_cfg_nvsEP_mc_leftleg_NVID__calibrator(jth)                              EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx__calibrator(jth)                             
79#define EOK_cfg_nvsEP_mc_leftleg_NVID__setpoint(jth)                                EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx__setpoint(jth)                               
80#define EOK_cfg_nvsEP_mc_leftleg_NVID__controlmode(jth)                             EOK_cfg_nvsEP_mc_any_con_bodypart_NVID_jxx__controlmode(jth)                           
81#endif
82
83
84
85
86// - declaration of public user-defined types -------------------------------------------------------------------------
87
88
89
90// - very important information: on ARM alignment is done using "#pragma pack(8)", thus ... there are rules to follow
91
92typedef struct               
93{
94    eOmc_joint_t                joints[EOK_cfg_nvsEP_mc_leftleg_NUMofJOINTS]; 
95    eOmc_motor_t                motors[EOK_cfg_nvsEP_mc_leftleg_NUMofMOTORS];
96} eo_cfg_nvsEP_mc_leftleg_t;    EO_VERIFYsizeof(eo_cfg_nvsEP_mc_leftleg_t, 864);
97
98   
99// - declaration of extern public variables, ... but better using use _get/_set instead -------------------------------
100
101//extern const eo_cfg_nvsEP_mc_leftleg_t eo_cfg_nvsEP_mc_leftleg_default;
102
103// EOconstvector where each element is a EOtreenode whose data field is a EOnv_con_t object (id, capacity, valuedef, offset)
104extern const EOconstvector* const eo_cfg_nvsEP_mc_leftleg_constvector_of_treenodes_EOnv_con;
105
106// if not NULL it contains a mapping from IDs to index inside eo_cfg_nvsEP_mc_leftleg_constvector_of_treenodes_EOnv_con
107extern const eOuint16_fp_uint16_t eo_cfg_nvsEP_mc_leftleg_fptr_hashfunction_id2index;
108
109
110
111// - declaration of extern public functions ---------------------------------------------------------------------------
112
113extern uint16_t eo_cfg_nvsEP_mc_leftleg_hashfunction_id2index(uint16_t id);
114
115
116
117
118
119/** @}           
120    end of group eo_asfdgr234 
121 **/
122
123#endif  // include-guard
124
125
126// - end-of-file (leave a blank line after)----------------------------------------------------------------------------
127
128
129
130
131
132
133
Note: See TracBrowser for help on using the browser.