CANopen Slave Documentation
Version 6.16.04
Loading...
Searching...
No Matches
cos_conf.h File Reference

Detailed Description

The file cos_conf.h holds all definitions for the configuration of the CANopen FD Slave protocol stack. Please set the symbols to an appropriate value in order to achieve a specific CANopen FD Slave behaviour.

Macros

#define COS_TIMER_PERIOD   1000
 
#define COS_FD_SUPPORT   0
 
#define COS_LOGICAL_PROFILE   1
 
#define COS_DS302_NV   0
 
#define COS_DS401_DI   0
 
#define COS_DS401_DO   0
 
#define COS_DS401_AI   0
 
#define COS_DS401_AO   0
 
#define COS_DS402   0
 
#define COS_DS404_AI   0
 
#define COS_DS404_AI_FILTER   1
 
#define COS_DS404_AI_SCALING   1
 
#define COS_DS404_AO   0
 
#define COS_DS404_DT_INT16   1
 
#define COS_DS404_DT_INT32   0
 
#define COS_DS404_DT_FLOAT   0
 
#define COS_DS406   0
 
#define COS_DS410   0
 
#define COS_DS417   0
 
#define COS_DS418   0
 
#define COS_DS437_TS   0
 
#define COS_DS437_DI   0
 
#define COS_DS437_DO   0
 
#define COS_DS437_AI   0
 
#define COS_DS437_AO   0
 
#define COS_DICT_MAN   0
 
#define COS_DICT_SEARCH_FAST   1
 
#define COS_DICT_OBJ_1003   4
 
#define COS_DICT_OBJ_1005   1
 
#define COS_DICT_OBJ_1006   1
 
#define COS_DICT_OBJ_1008   1
 
#define COS_DICT_OBJ_1009   1
 
#define COS_DICT_OBJ_100A   1
 
#define COS_DICT_OBJ_100C   0
 
#define COS_DICT_OBJ_1010   0
 
#define COS_DICT_OBJ_1011   0
 
#define COS_DICT_OBJ_1012   0
 
#define COS_DICT_OBJ_1013   0
 
#define COS_DICT_OBJ_1014   1
 
#define COS_DICT_OBJ_1015   0
 
#define COS_DICT_OBJ_1016   2
 
#define COS_DICT_OBJ_1019   0
 
#define COS_DICT_OBJ_1020   0
 
#define COS_DICT_OBJ_1021   0
 
#define COS_DICT_OBJ_1029   1
 
#define COS_DICT_OBJ_1F80   1
 
#define COS_SDO_SEGMENTED   1
 
#define COS_SDO_BLOCK   0
 
#define COS_SDO_CLIENT   0
 
#define COS_USDO_NUMBER   0
 
#define COS_PDO_RCV_NUMBER   4
 
#define COS_PDO_RCV_ID_CONST   0
 
#define COS_PDO_TRM_NUMBER   4
 
#define COS_PDO_TRM_ID_CONST   0
 
#define COS_PDO_INHIBIT   0
 
#define COS_PDO_SYNC_START   0
 
#define COS_PDO_MAPPING   8
 
#define COS_SRDO_NUMBER   0
 
#define COS_NMT_MASTER   0
 
#define COS_LSS_SUPPORT   0
 
#define COS_LED_SUPPORT   0
 
#define COS_NRL_SUPPORT   0
 
#define COS_BUS_EMCY   1
 
#define COS_MGR_INT   1
 
#define COS_TMR_INT   1
 

Macro Definition Documentation

◆ COS_BUS_EMCY

#define COS_BUS_EMCY   1

Emergency messages on bus errors.

With this symbol it is possible to enable the transmission of emergency messages upon bus errors. The functionality is handled inside the CosMgrCanErrorHandler() function.

  • 0 : do not send emergency messages on bus errors
  • 1 : send emergency messages on bus errors

◆ COS_DICT_MAN

#define COS_DICT_MAN   0

Include manufacturer objects.

This symbol defines if manufacturer specific objects are included in the dictionary. A value of 0 means the manufacturer objects are not included. A value of 1 means they are included.

◆ COS_DICT_OBJ_1003

#define COS_DICT_OBJ_1003   4

Implementation of index 1003h.

This symbol defines the maximum number of errors that can be stored by the device. Please note that the errors are kept in RAM and require 4 byte for each entry. A value of 0 means that this object is not supported. The maximum size of the list is 254.

◆ COS_DICT_OBJ_1005

#define COS_DICT_OBJ_1005   1

Implementation of index 1005h.

This symbol defines if the object 1005h (SYNC identifier) is supported by the device.

  • 0 : do not support index 1005h
  • 1 : support index 1005h

◆ COS_DICT_OBJ_1006

#define COS_DICT_OBJ_1006   1

Implementation of index 1006h.

This symbol defines if the object 1006h (communication cycle period) is supported by the device. If the object is supported, the device can also be used as SYNC producer.

  • 0 : do not support index 1006h
  • 1 : support index 1006h

◆ COS_DICT_OBJ_1008

#define COS_DICT_OBJ_1008   1

Implementation of index 1008h.

This symbol defines if the object 1008h (Manufacturer device name) is supported by the device.

  • 0 : do not support index 1008h
  • 1 : support index 1008h

◆ COS_DICT_OBJ_1009

#define COS_DICT_OBJ_1009   1

Implementation of index 1009h.

This symbol defines if the object 1009h (Manufacturer hardware version) is supported by the device.

  • 0 : do not support index 1009h
  • 1 : support index 1009h

◆ COS_DICT_OBJ_100A

#define COS_DICT_OBJ_100A   1

Implementation of index 100Ah.

This symbol defines if the object 100Ah (Manufacturer software version) is supported by the device.

  • 0 : do not support index 100Ah
  • 1 : support index 100Ah

◆ COS_DICT_OBJ_100C

#define COS_DICT_OBJ_100C   0

Implementation of index 100Ch and 100Dh.

Every CANopen slave must support the Heartbeat protocol. It is optional possible to use Node Guarding. It is recommended not to support Node Guarding for new implementations because of its technical drawbacks.

  • 0 : do not support Node Guarding
  • 1 : support node guarding

◆ COS_DICT_OBJ_1010

#define COS_DICT_OBJ_1010   0

Store Parameters.

The symbol defines if the object 1010h is supported and how many sub-indices are used. A value of 0 means the object is not supported, i.e. the device can not store parameters. A value greater 0 denotes the highest supported sub-index. The value must be in the range from 0 to 4.

◆ COS_DICT_OBJ_1011

#define COS_DICT_OBJ_1011   0

Restore Parameters.

The symbol defines if the object 1011h is supported and how many sub-indices are used. A value of 0 means the object is not supported, i.e. the device can not restore parameters. A value greater 0 denotes the highest supported sub-index. The value must be in the range from 0 to 4.

◆ COS_DICT_OBJ_1012

#define COS_DICT_OBJ_1012   0

COB-ID time stamp object.

The symbol defines if the object 1012h is supported. A value of 0 means the object is not supported, i.e. the device has no Real-Time-Clock (RTC). A value of 1 denotes the device supports the TIME object.

◆ COS_DICT_OBJ_1013

#define COS_DICT_OBJ_1013   0

High resolution time stamp.

This object shall indicate the configured high resolution time stamp. It may be mapped into a PDO in order to exchange a high resolution time stamp message. Further application specific use is encouraged. The value of index 1013h is given in multiples of 1 microsecond.

  • 0 : do not support index 1013h
  • 1 : support index 1013h

◆ COS_DICT_OBJ_1014

#define COS_DICT_OBJ_1014   1

Emergency message.

The symbol defines if the object 1014h is supported and how many emergency messages can be queued.

◆ COS_DICT_OBJ_1015

#define COS_DICT_OBJ_1015   0

Emergency inhibit time.

This symbol defines if the object 1015 is supported by the device.

  • 0 : do not support index 1015h
  • 1 : support index 1015h

◆ COS_DICT_OBJ_1016

#define COS_DICT_OBJ_1016   2

Consumer heartbeat.

The symbol defines if the object 1016h is supported and how many sub-indices are used. A value of 0 means the object is not supported, i.e. the device has no consumer heartbeat. A value greater 0 denotes the highest supported sub-index. The maximum number of entries is limited to 4.

◆ COS_DICT_OBJ_1019

#define COS_DICT_OBJ_1019   0

Implementation of index 1019h.

This symbol defines if the object 1019h (SYNC counter) is supported by the device.

  • 0 : do not support index 1019h
  • 1 : support index 1019h

◆ COS_DICT_OBJ_1020

#define COS_DICT_OBJ_1020   0

Verify Configuration.

The symbol defines if the object 1020h is supported. If this object is supported, the device must be capable to store configuration data, i.e. object 1010 must also be supported.

  • 0 : do not support index 1020h
  • 1 : support index 1020h

◆ COS_DICT_OBJ_1021

#define COS_DICT_OBJ_1021   0

Support EDS store.

The symbol defines if the objects 1021h (EDS store) and 1022h (Store format) are supported. The storage format of the EDS may be compliant to ISO10646 (not compressed) or any manufacturer- specific format.

  • 0 : do not support index 1021h and 1022h
  • 1 : EDS is not compressed, 1022h:00h = 00h
  • 2 : EDS has manufacturer specific format, 1022h:00h = 80h

◆ COS_DICT_OBJ_1029

#define COS_DICT_OBJ_1029   1

Error behaviour object.

The symbol defines if the object 1029h is supported. A value greater 0 denotes the highest supported sub-index. The maximum number of entries is limited to 4.

  • 0 : do not support index 1029h
  • N : support index 1029h, sub-indices 1 - N

◆ COS_DICT_OBJ_1F80

#define COS_DICT_OBJ_1F80   1

NMT Startup.

The symbol defines if the object 1F80h is supported.

  • 0 : do not support index 1F80h
  • 1 : support index 1F80h
  • 2 : support index 1F80h, backward compatibility mode

The backwards compatibility mode allows additional (obsolete) values for setting the startup behaviour. For new CANopen devices, use the value '1' for support of index 1F80h.

◆ COS_DICT_SEARCH_FAST

#define COS_DICT_SEARCH_FAST   1

Use fast search algorithm.

This symbol defines if a fast search algorithm is used for the dictionary. The fast search algorithm increases the code size. A value of 0 means a linear search method is used. A value of 1 means the fast search algorithm is used.

◆ COS_DS302_NV

#define COS_DS302_NV   0

Support CiA 302 Network Variables.

This symbol defines if objects from CiA 302 are included in the dictionary.

  • 0 : do not support CiA 302 Network variables
  • 1 : support CiA 302 Network variables

◆ COS_DS401_AI

#define COS_DS401_AI   0

Support CiA 401, analog inputs.

This symbol defines if objects for analog inputs from the device profile for I/O modules (CiA 401) are included in the dictionary.

The add-on CANopen Device Profile CiA 401 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 401, analog inputs
  • N : support CiA 401, N is number of analog input blocks

◆ COS_DS401_AO

#define COS_DS401_AO   0

Support CiA 401, analog outputs.

This symbol defines if objects for analog outputs from the device profile for I/O modules (CiA 401) are included in the dictionary.

The add-on CANopen Device Profile CiA 401 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 401, analog outputs
  • N : support CiA 401, N is number of analog outputs

◆ COS_DS401_DI

#define COS_DS401_DI   0

Support CiA 401, digital inputs.

This symbol defines if objects for digital inputs from the device profile for I/O modules (CiA 401) are included in the dictionary.

The add-on CANopen Device Profile CiA 401 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 401, digital inputs
  • N : support CiA 401, N is number of digital input blocks

◆ COS_DS401_DO

#define COS_DS401_DO   0

Support CiA 401, digital outputs.

This symbol defines if objects for digital outputs from the device profile for I/O modules (CiA 401) are included in the dictionary.

The add-on CANopen Device Profile CiA 401 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 401, digital outputs
  • N : support CiA 401, N is number of digital output blocks

◆ COS_DS402

#define COS_DS402   0

Support CiA 402.

This symbol defines if objects for drives device profile (CiA 402) are included in the dictionary.

The add-on CANopen Device Profile CiA 402 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 402
  • 1 : support CiA 402

◆ COS_DS404_AI

#define COS_DS404_AI   0

Support CiA 404, analog inputs.

This symbol defines if objects for analog inputs from the device profile for Sensors and Closed-loop Control (CiA 404) are included in the dictionary.

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 404, analog inputs
  • N : support CiA 404, N is number of analog inputs

◆ COS_DS404_AI_FILTER

#define COS_DS404_AI_FILTER   1

Support filter within CiA 404, analog inputs.

This symbol defines if objects (index 61A0h and 61A1h) for filtering analog inputs from the device profile for sensors and closed-loop control (CiA 404) are included in the dictionary.

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 404, analog input filters
  • 1 : support CiA 404, analog input filters

◆ COS_DS404_AI_SCALING

#define COS_DS404_AI_SCALING   1

Support filter within CiA 404, analog inputs.

This symbol defines if objects (index 6126h and 6127h) for scaling of analog inputs from the device profile for sensors and closed-loop control (CiA 404) are included in the dictionary.

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 404, analog input filters
  • 1 : support CiA 404, analog input filters

◆ COS_DS404_AO

#define COS_DS404_AO   0

Support CiA 404, analog outputs.

This symbol defines if objects for analog outputs from the device profile for sensors and closed-loop control (CiA 404) are included in the dictionary.

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 404, analog outputs
  • N : support CiA 404, analog outputs

◆ COS_DS404_DT_FLOAT

#define COS_DS404_DT_FLOAT   0

CiA 404 data type.

This symbol defines if the data type float is supported for the device profile for sensors and closed-loop Control (CiA 404).

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : not supported
  • 1 : support data type float

◆ COS_DS404_DT_INT16

#define COS_DS404_DT_INT16   1

CiA 404 data type.

This symbol defines if the data type int16_t is supported for the device profile for sensors and closed-loop Control (CiA 404).

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : not supported
  • 1 : support data type int16_t

◆ COS_DS404_DT_INT32

#define COS_DS404_DT_INT32   0

CiA 404 data type.

This symbol defines if the data type int32_t is supported for the device profile for sensors and closed-loop control (CiA 404).

The add-on CANopen Device Profile CiA 404 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : not supported
  • 1 : support data type int32_t

◆ COS_DS406

#define COS_DS406   0

Support CiA 406.

This symbol defines if objects for the device profile CiA 406 (Encoder) are included in the dictionary.

The add-on CANopen Device Profile CiA 406 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 406
  • 1 : support CiA 406, Single turn encoder
  • 2 : support CiA 406, Multi turn encoder

◆ COS_DS410

#define COS_DS410   0

Support CiA 410.

This symbol defines if objects for the device profile CiA 410 (Inclinometer) are included in the dictionary.

The add-on CANopen Device Profile CiA 410 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 410
  • 1 : support CiA 410

◆ COS_DS417

#define COS_DS417   0

Support CiA 417.

This symbol defines if objects for the application profile CiA 417 (Lift) are included in the dictionary.

The add-on CANopen Application Profile CiA 417 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 417
  • 1 : support CiA 417, Lift

◆ COS_DS418

#define COS_DS418   0

Support CiA 418.

This symbol defines if objects for the device profile CiA 418 (battery modules) are included in the dictionary.

The add-on CANopen Device Profile CiA 418 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support CiA 418
  • 1 : support CiA 418, Battery modules

◆ COS_DS437_AI

#define COS_DS437_AI   0

Support CiA 437, analog input module.

This symbol defines if the virtual device analog input module is included in the dictionary.

The add-on CANopen Application Profile CiA 437 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support virtual device analog input module
  • N : support virtual device analog input module, N is the number of analog inputs

◆ COS_DS437_AO

#define COS_DS437_AO   0

Support CiA 437, analog output module.

This symbol defines if the virtual device analog output module is included in the dictionary.

The add-on CANopen Application Profile CiA 437 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support virtual device analog output module
  • N : support virtual device analog output module, N is the number of analog outputs

◆ COS_DS437_DI

#define COS_DS437_DI   0

Support CiA 437, digital input module.

This symbol defines if the virtual device digital input module is included in the dictionary.

The add-on CANopen Application Profile CiA 437 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support virtual device digital input module
  • N : support virtual device digital input module, N is the number of digital input module blocks

◆ COS_DS437_DO

#define COS_DS437_DO   0

Support CiA 437, digital output module.

This symbol defines if the virtual device digital output module is included in the dictionary.

The add-on CANopen Application Profile CiA 437 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support virtual device digital output module
  • N : support virtual device digital output module, N is the number of digital output module blocks

◆ COS_DS437_TS

#define COS_DS437_TS   0

Support CiA 437, temperature sensor.

This symbol defines if the virtual device temperature sensor is included in the dictionary.

The add-on CANopen Application Profile CiA 437 must be installed to support this option (refer to CANopen Slave Add-on modules).

  • 0 : do not support virtual device temperature sensor
  • N : support virtual device temperature sensor, N is the number of analog inputs

◆ COS_FD_SUPPORT

#define COS_FD_SUPPORT   0

Support CANopen FD.

This symbol defines if the protocol stack supports CANopen FD functionality defined by the CiA 1301 specification. Support for CANopen FD also requires a CAN FD capable hardware, hence the symbol CP_CAN_FD provided by the CANpie driver must be set to 1.

Possible values for this symbol are:

  • 0 : do not support CANopen FD
  • 1 : support CANopen FD

If CANopen FD support is configured during compile time, it has to be enabled during run-time as depicted in the following example.

@ eCP_CHANNEL_1
Definition canpie.h:732
uint8_t CosMgrInit(uint8_t ubCanIfV, uint16_t uwConfigV)
Initialise the CANopen Slave.
#define COS_CONF_FD
Definition cos_mgr.h:118

◆ COS_LED_SUPPORT

#define COS_LED_SUPPORT   0

Support of LEDs.

With this symbol the LED support can be enabled. There are two bi-color LEDs supported:

  • a Network LED
  • a Module LED

The Network LED denotes the state of the CANopen status machine (Operational, Stopped, Bus-Off, etc.). The optional Module LED denotes the physical state of the device (running, hardware failure, etc).

  • 0 : do not support LEDs
  • 1 : support Network LED
  • 2 : support Network and Module LEDs

◆ COS_LOGICAL_PROFILE

#define COS_LOGICAL_PROFILE   1

Number of logical device profiles.

This symbol defines the number of logical device profiles. The value must be in the range from 1 to 8.

◆ COS_LSS_SUPPORT

#define COS_LSS_SUPPORT   0

Implementation of Layer Setting Services and Protocol.

LSS offers the possibility to inquire and change the settings of certain parameters of the local layers on a CANopen module with LSS Slave capabilities. This switch is used to enable/disable the LSS capability. If enabled, the file cos_lss.c must be included to the project.

  • 0 : do not support LSS
  • 1 : support LSS slave
  • 2 : support LSS master

◆ COS_MGR_INT

#define COS_MGR_INT   1

Run CAN message handler in Poll/IRQ mode.

With this symbol it is possible to switch the CAN message handler (message reception) between Polling- and IRQ-mode. In Polling mode the messages are read from the buffer during the main loop. The default mode is the IRQ-mode: received CAN messages are processed inside the CAN IRQ-handler.

  • 0 : Run CAN message handler in Poll-Mode
  • 1 : Run CAN message handler in IRQ-Mode

◆ COS_NMT_MASTER

#define COS_NMT_MASTER   0

CANopen Slave device can also be NMT master.

This option provides NMT master functionality for the device.

The add-on Mini-Master must be installed to support this option (refer to CANopen Slave Add-on modules).

◆ COS_NRL_SUPPORT

#define COS_NRL_SUPPORT   0

Support of Network Redundancy Layer.

With this symbol the Network Redundancy Layer (NRL) support can be enabled.

  • 0 : do not support NRL
  • 1 : support NRL

◆ COS_PDO_INHIBIT

#define COS_PDO_INHIBIT   0

Support Inhibit time for transmit PDOs.

This symbol defines if an inhibit time is supported for transmit PDOs.

◆ COS_PDO_MAPPING

#define COS_PDO_MAPPING   8

Implementation of PDO mapping.

This symbol defines how the PDO mapping is implemented. The fixed PDO mapping consumes less memory space and computation time. The variable PDO mapping offers the most flexibility for the PDO service.

  • 0 : use fixed PDO mapping
  • N : use variable PDO mapping with a maximum of N mappable entries for each PDO.

For Classical CANopen applications, the maximum allowed value of 8 is sufficient to map up to 8 bytes into a PDO. For CANopen FD applications the maximum value is 64.

◆ COS_PDO_RCV_ID_CONST

#define COS_PDO_RCV_ID_CONST   0

Receive PDO identifier is constant.

Depending on the device profile or application it may be required that the identifier of the receive PDO is constant. This symbol defines if index 140xh, sub 1 is read-only:

  • 0 : PDO identifier is read-write
  • 1 : PDO identifier is read-only

◆ COS_PDO_RCV_NUMBER

#define COS_PDO_RCV_NUMBER   4

Number of Receive PDOs.

This symbol defines the number of receive PDOs supported by the CANopen slave. The number may vary between 0 (no receive PDO) and 32.

Please note that the maximum number of PDOs is limited by the number of mailboxes provided by the CANpie driver (i.e. the CAN silicon). A compiler error will be thrown if the number of receive PDOs exceeds the number of available mailboxes for this service.

◆ COS_PDO_SYNC_START

#define COS_PDO_SYNC_START   0

Support SYNC start value for transmit PDOs.

This symbol defines if a SYNC start value is supported for transmit PDOs.

◆ COS_PDO_TRM_ID_CONST

#define COS_PDO_TRM_ID_CONST   0

Transmit PDO identifier is constant.

Depending on the device profile or application it may be required that the identifier of the transmit PDO is constant. This symbol defines if index 180xh, sub 1 is read-only:

  • 0 : PDO identifier is read-write
  • 1 : PDO identifier is read-only

◆ COS_PDO_TRM_NUMBER

#define COS_PDO_TRM_NUMBER   4

Number of Transmit PDOs.

This symbol defines the number of transmit PDOs supported by the CANopen slave. The number may vary between 0 (no transmit PDO) and 32.

Please note that the maximum number of PDOs is limited by the number of mailboxes provided by the CANpie driver (i.e. the CAN silicon). A compiler error will be thrown if the number of transmit PDOs exceeds the number of available mailboxes for this service.

◆ COS_SDO_BLOCK

#define COS_SDO_BLOCK   0

SDO Block Transfer.

The symbol defines if the SDO Block transfer is supported. A value of 0 denotes that SDO Block transfer is not supported. A value greater 0 denotes the maximum number of blocks that can be transferred between master and slave. The maximum value is 127 blocks.

◆ COS_SDO_CLIENT

#define COS_SDO_CLIENT   0

SDO client functionality.

The symbol defines if SDO client functionality is supported. A value of 0 denotes that SDO client functionality is not supported.

The add-on Mini-Master must be installed to support this option (refer to CANopen Slave Add-on modules).

◆ COS_SDO_SEGMENTED

#define COS_SDO_SEGMENTED   1

Segmented SDO Transfer.

The symbol defines if the segmented SDO transfer is supported. If segmented SDOs are not supported, the code size can be reduced. However, segmented SDOs are required if the data type STRING must be supported with string length greater than 4.

  • 0 : do not support segmented SDOs
  • 1 : support segmented SDOs

◆ COS_SRDO_NUMBER

#define COS_SRDO_NUMBER   0

Number of SRDOs.

This symbol defines the number of SRDOs used by the CANopen slave. The number may vary between 0 (no SRDOs) and 8.

The add-on Safety must be installed to support this option (refer to CANopen Slave Add-on modules).

◆ COS_TIMER_PERIOD

#define COS_TIMER_PERIOD   1000

Period of timer interrupt.

This symbol defines the period of the timer interrupt. The value is a multiple of 1 microsecond. It is used for timing services. Please set this value to the timer interrupt period of the target system.

Please note that the value must be at least 1000 [microseconds], because all CANopen services use a multiple of 1 millisecond.

◆ COS_TMR_INT

#define COS_TMR_INT   1

Run timer events in Poll/IRQ mode.

With this symbol it is possible to switch the timer function (CosTmrEvent) between Polling- and IRQ-mode. In Polling mode the timer value is checked within the main loop. The default mode is the IRQ-mode: the function CosTmrEvent() is called within the timer interrupt.

  • 0 : Run timer events in Poll-Mode
  • 1 : Run timer events in IRQ-Mode

◆ COS_USDO_NUMBER

#define COS_USDO_NUMBER   0

Number of parallel USDO requests.

This symbol defines the number of parallel USDO requests that can be handled by the protocol stack. If the number is exceeded the USDO server aborts further requests by means of the USDO abort service.