![](/media/cache/profiles/79f56e5e3e0e999b3c139f225838d41f.50x50_q85.jpg)
CANfestival - an open source CANopen framework
Diff: framework/include/canopen_can.h
- Revision:
- 0:6219434a0cb5
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/framework/include/canopen_can.h Mon May 30 07:14:41 2011 +0000 @@ -0,0 +1,55 @@ +/* +This file is part of CanFestival, a library implementing CanOpen Stack. + +Copyright (C): Edouard TISSERANT and Francis DUPIN + +See COPYING file for copyrights details. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +#ifndef __can_h__ +#define __can_h__ + +#include "applicfg.h" + +/* +union SHORT_CAN { + struct { UNS8 b0,b1; } b; + UNS32 w; +}; +*/ +/* +typedef struct { + UNS32 w; +} SHORT_CAN; +*/ + +/** + * @brief The CAN message structure + * @ingroup can + */ +typedef struct { + UNS16 cob_id; /**< message's ID */ + UNS8 rtr; /**< remote transmission request. (0 if not rtr message, 1 if rtr message) */ + UNS8 len; /**< message's length (0 to 8) */ + UNS8 data[8]; /**< message's datas */ +} Message; + +#define Message_Initializer {0,0,0,{0,0,0,0,0,0,0,0}} + +typedef UNS8 (*canSend_t)(Message *); + +#endif /* __can_h__ */