This file is part of the CANopen library; it contains the implementation of the Transmit-PDO functions.
More...
|
static void | co_tpdo_init_recv (co_tpdo_t *pdo) |
| Initializes the CAN frame receiver of a Transmit-PDO service. More...
|
|
static void | co_tpdo_init_timer_event (co_tpdo_t *pdo) |
| Initializes the CAN timer for events of a Transmit-PDO service. More...
|
|
static void | co_tpdo_init_timer_swnd (co_tpdo_t *pdo) |
| Initializes the CAN timer for the synchronous time window of a Transmit-PDO service.
|
|
static co_unsigned32_t | co_1800_dn_ind (co_sub_t *sub, struct co_sdo_req *req, void *data) |
| The download indication function for (all sub-objects of) CANopen objects 1800..19FF (TPDO communication parameter). More...
|
|
static co_unsigned32_t | co_1a00_dn_ind (co_sub_t *sub, struct co_sdo_req *req, void *data) |
| The download indication function for (all sub-objects of) CANopen objects 1A00..1BFF (TPDO mapping parameter). More...
|
|
static int | co_tpdo_recv (const struct can_msg *msg, void *data) |
| The CAN receive callback function for a Transmit-PDO service. More...
|
|
static int | co_tpdo_timer_event (const struct timespec *tp, void *data) |
| The CAN timer callback function for events of a Transmit-PDO service. More...
|
|
static int | co_tpdo_timer_swnd (const struct timespec *tp, void *data) |
| The CAN timer callback function for the synchronous time window of a Transmit-PDO service. More...
|
|
static int | default_sample_ind (co_tpdo_t *pdo, void *data) |
| The default sampling indication function. More...
|
|
static int | co_tpdo_init_frame (co_tpdo_t *pdo, struct can_msg *msg) |
| Initializes a CAN frame to be sent by a Transmit-PDO service. More...
|
|
static int | co_tpdo_send_frame (co_tpdo_t *pdo, const struct can_msg *msg) |
| Sends a CAN frame from a Transmit-PDO service and invokes the indication function. More...
|
|
co_tpdo_t * | co_tpdo_create (can_net_t *net, co_dev_t *dev, co_unsigned16_t num) |
| Creates a new CANopen Transmit-PDO service. More...
|
|
void | co_tpdo_destroy (co_tpdo_t *tpdo) |
| Destroys a CANopen Transmit-PDO service. More...
|
|
int | co_tpdo_start (co_tpdo_t *pdo) |
| Starts a Transmit-PDO service. More...
|
|
void | co_tpdo_stop (co_tpdo_t *pdo) |
| Stops a Transmit-PDO service. More...
|
|
int | co_tpdo_is_stopped (const co_tpdo_t *pdo) |
| Retuns 1 if the specified Transmit-PDO service is stopped, and 0 if not. More...
|
|
can_net_t * | co_tpdo_get_net (const co_tpdo_t *pdo) |
| Returns a pointer to the CAN network of a Transmit-PDO.
|
|
co_dev_t * | co_tpdo_get_dev (const co_tpdo_t *pdo) |
| Returns a pointer to the CANopen device of a Transmit-PDO.
|
|
co_unsigned16_t | co_tpdo_get_num (const co_tpdo_t *pdo) |
| Returns the PDO number of a Transmit-PDO.
|
|
const struct co_pdo_comm_par * | co_tpdo_get_comm_par (const co_tpdo_t *pdo) |
| Returns a pointer to the PDO communication parameter record of a Transmit-PDO.
|
|
const struct co_pdo_map_par * | co_tpdo_get_map_par (const co_tpdo_t *pdo) |
| Returns a pointer to the PDO mapping parameter record of a Transmit-PDO.
|
|
void | co_tpdo_get_ind (const co_tpdo_t *pdo, co_tpdo_ind_t **pind, void **pdata) |
| Retrieves the indication function invoked when a Transmit-PDO is sent or an error occurs. More...
|
|
void | co_tpdo_set_ind (co_tpdo_t *pdo, co_tpdo_ind_t *ind, void *data) |
| Sets the indication function invoked when a Transmit-PDO is sent or an error occurs. More...
|
|
void | co_tpdo_get_sample_ind (const co_tpdo_t *pdo, co_tpdo_sample_ind_t **pind, void **pdata) |
| Retrieves the indication function invoked when a Transmit-PDO starts sampling after the reception of a SYNC event. More...
|
|
void | co_tpdo_set_sample_ind (co_tpdo_t *pdo, co_tpdo_sample_ind_t *ind, void *data) |
| Sets the indication function invoked when a Transmit-PDO starts sampling after the reception of a SYNC event. More...
|
|
int | co_tpdo_event (co_tpdo_t *pdo) |
| Triggers the transmission of an acyclic or event-driven PDO. More...
|
|
int | co_tpdo_sync (co_tpdo_t *pdo, co_unsigned8_t cnt) |
| Triggers the transmission of a synchronous PDO. More...
|
|
int | co_tpdo_sample_res (co_tpdo_t *pdo, co_unsigned32_t ac) |
| Indicates the result of the sampling step after the reception of a SYNC event. More...
|
|
void | co_tpdo_get_next (const co_tpdo_t *pdo, struct timespec *tp) |
| Retrieves the time at which the next event-driven TPDO may be sent.
|
|
int | co_dam_mpdo_event (co_tpdo_t *pdo, co_unsigned8_t id, co_unsigned16_t idx, co_unsigned8_t subidx, const co_unsigned8_t data[4]) |
| Triggers the transmission of a DAM-MPDO. More...
|
|
int | co_sam_mpdo_event (co_tpdo_t *pdo, co_unsigned16_t idx, co_unsigned8_t subidx) |
| Triggers the transmission of a DAM-MPDO. More...
|
|
This file is part of the CANopen library; it contains the implementation of the Transmit-PDO functions.
The implementation follows CiA 301 version 4.2.0. See section 7.2.2 for the definition of the PDO services and protocols. The following objects determine the behavior of TPDOs:
- 1007: Synchronous window length
- 1800..19FF: TPDO communication parameter
- 1A00..1BFF: TPDO mapping parameter See table 72 for a description of the transmission type in the communication parameters and table 73 for a description of the mapping parameters.
- See also
- lely/co/tpdo.h
- Copyright
- 2016-2022 Lely Industries N.V.
- Author
- J. S. Seldenthuis jseld.nosp@m.enth.nosp@m.uis@l.nosp@m.ely..nosp@m.com
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.
Definition in file tpdo.c.