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 8U |
Maximum size of PDO message, 8 for standard CAN. | |
#define | CO_PDO_MAX_MAPPED_ENTRIES 8U |
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 4U |
Number of CANopen RPDO objects, which uses default CAN indentifiers. | |
#define | CO_TPDO_DEFAULT_CANID_COUNT 4U |
Number of CANopen TPDO objects, which uses default CAN indentifiers. | |
#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 = 0U , CO_PDO_TRANSM_TYPE_SYNC_1 = 1U , CO_PDO_TRANSM_TYPE_SYNC_240 = 0xF0U , CO_PDO_TRANSM_TYPE_SYNC_EVENT_LO = 0xFEU , CO_PDO_TRANSM_TYPE_SYNC_EVENT_HI = 0xFFU } |
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. | |
void | CO_RPDO_initCallbackPre (CO_RPDO_t *RPDO, void *object, void(*pFunctSignalPre)(void *object)) |
Initialize RPDO callback function. | |
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. | |
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. | |
static void | CO_TPDOsendRequest (CO_TPDO_t *TPDO) |
Request transmission of TPDO message. | |
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. | |
CANopen Process Data Object protocol.
This file is part of https://github.com/CANopenNode/CANopenNode, a CANopen Stack.
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.