CANopenNode
CANopen protocol stack
|
CANopen Process Data Object protocol. More...
Go to the source code of this file.
Data Structures | |
struct | CO_PDO_common_t |
PDO object, common properties. More... | |
struct | CO_RPDO_t |
RPDO object. More... | |
struct | CO_TPDO_t |
TPDO object. More... | |
Macros | |
#define | CO_PDO_MAX_SIZE 8 |
Maximum size of PDO message, 8 for standard CAN. | |
#define | CO_PDO_MAX_MAPPED_ENTRIES 8 |
Maximum number of entries, which can be mapped to PDO, 8 for standard CAN, may be less to preserve RAM usage. | |
#define | CO_RPDO_DEFAULT_CANID_COUNT 4 |
Number of CANopen RPDO objects, which uses default CAN indentifiers. More... | |
#define | CO_TPDO_DEFAULT_CANID_COUNT 4 |
Number of CANopen TPDO objects, which uses default CAN indentifiers. More... | |
#define | CO_RPDO_CAN_BUFFERS_COUNT 2 |
Number of buffers for received CAN message for RPDO. | |
Typedefs | |
typedef uint8_t | CO_PDO_size_t |
Variable of type CO_PDO_size_t contains data length in bytes of PDO. | |
Enumerations | |
enum | CO_PDO_transmissionTypes_t { CO_PDO_TRANSM_TYPE_SYNC_ACYCLIC = 0 , CO_PDO_TRANSM_TYPE_SYNC_1 = 1 , CO_PDO_TRANSM_TYPE_SYNC_240 = 0xF0 , CO_PDO_TRANSM_TYPE_SYNC_EVENT_LO = 0xFE , CO_PDO_TRANSM_TYPE_SYNC_EVENT_HI = 0xFF } |
PDO transmission Types. More... | |
Functions | |
CO_ReturnError_t | CO_RPDO_init (CO_RPDO_t *RPDO, OD_t *OD, CO_EM_t *em, CO_SYNC_t *SYNC, uint16_t preDefinedCanId, OD_entry_t *OD_14xx_RPDOCommPar, OD_entry_t *OD_16xx_RPDOMapPar, CO_CANmodule_t *CANdevRx, uint16_t CANdevRxIdx, uint32_t *errInfo) |
Initialize RPDO object. More... | |
void | CO_RPDO_initCallbackPre (CO_RPDO_t *RPDO, void *object, void(*pFunctSignalPre)(void *object)) |
Initialize RPDO callback function. More... | |
void | CO_RPDO_process (CO_RPDO_t *RPDO, uint32_t timeDifference_us, uint32_t *timerNext_us, bool_t NMTisOperational, bool_t syncWas) |
Process received PDO messages. More... | |
CO_ReturnError_t | CO_TPDO_init (CO_TPDO_t *TPDO, OD_t *OD, CO_EM_t *em, CO_SYNC_t *SYNC, uint16_t preDefinedCanId, OD_entry_t *OD_18xx_TPDOCommPar, OD_entry_t *OD_1Axx_TPDOMapPar, CO_CANmodule_t *CANdevTx, uint16_t CANdevTxIdx, uint32_t *errInfo) |
Initialize TPDO object. More... | |
static void | CO_TPDOsendRequest (CO_TPDO_t *TPDO) |
Request transmission of TPDO message. More... | |
void | CO_TPDO_process (CO_TPDO_t *TPDO, uint32_t timeDifference_us, uint32_t *timerNext_us, bool_t NMTisOperational, bool_t syncWas) |
Process transmitting PDO messages. More... | |
CANopen Process Data Object protocol.
This file is part of CANopenNode, an opensource CANopen Stack. Project home page is https://github.com/CANopenNode/CANopenNode. For more information on CANopen see http://www.can-cia.org/.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.