File syn_cia401.h¶
FileList > proto > syn_cia401.h
Go to the source code of this file
CANopen CiA 401 Device Profile for Generic I/O Modules. More...
#include "../common/syn_defs.h"#include "syn_canopen.h"#include <stdbool.h>#include <stddef.h>#include <stdint.h>
Classes¶
| Type | Name |
|---|---|
| struct | SYN_CiA401_Device CiA 401 Generic I/O Device State Instance. |
Public Functions¶
| Type | Name |
|---|---|
| bool | syn_cia401_check_analog_delta (SYN_CiA401_Device * dev, uint8_t * channel) Check if any analog input has exceeded its delta threshold for event-driven TPDO. |
| void | syn_cia401_init (SYN_CiA401_Device * dev, uint8_t dig_in_bytes, uint8_t dig_out_bytes, uint8_t analog_in_ch, uint8_t analog_out_ch) Initialize a CiA 401 device state instance. |
| size_t | syn_cia401_populate_od (SYN_CiA401_Device * dev, SYN_CANOpenODEntry * od_table, size_t max_entries) Populate a standard CANopen Object Dictionary array with CiA 401 entries. |
Macros¶
| Type | Name |
|---|---|
| define | SYN_CIA401_MAX_ANALOG_16BIT 8 |
| define | SYN_CIA401_MAX_DIGITAL_8BIT 4Maximum channel capacities for CiA 401 instance. |
| define | SYN_CIA401_OD_ANALOG_INPUT_16BIT 0x6401U |
| define | SYN_CIA401_OD_ANALOG_INPUT_DELTA 0x6421U |
| define | SYN_CIA401_OD_ANALOG_INPUT_LIMIT_H 0x6425U |
| define | SYN_CIA401_OD_ANALOG_INPUT_LIMIT_L 0x6424U |
| define | SYN_CIA401_OD_ANALOG_OUTPUT_16BIT 0x6411U |
| define | SYN_CIA401_OD_DIGITAL_INPUT_8BIT 0x6000UCiA 401 Standard Object Dictionary Indices. |
| define | SYN_CIA401_OD_DIGITAL_OUTPUT_8BIT 0x6200U |
Detailed Description¶
Implements CiA 401 Object Dictionary definitions and helper binding state for 8-bit digital inputs/outputs and 16-bit analog inputs/outputs.
Public Functions Documentation¶
function syn_cia401_check_analog_delta¶
Check if any analog input has exceeded its delta threshold for event-driven TPDO.
Parameters:
devPointer to CiA 401 device instance.channelOutput channel index (0..analog_in_count-1) that changed.
Returns:
True if a change occurred exceeding delta.
function syn_cia401_init¶
Initialize a CiA 401 device state instance.
void syn_cia401_init (
SYN_CiA401_Device * dev,
uint8_t dig_in_bytes,
uint8_t dig_out_bytes,
uint8_t analog_in_ch,
uint8_t analog_out_ch
)
Parameters:
devPointer to CiA 401 device handle.dig_in_bytesNumber of 8-bit digital input blocks (1..4).dig_out_bytesNumber of 8-bit digital output blocks (1..4).analog_in_chNumber of 16-bit analog input channels (1..8).analog_out_chNumber of 16-bit analog output channels (1..8).
function syn_cia401_populate_od¶
Populate a standard CANopen Object Dictionary array with CiA 401 entries.
size_t syn_cia401_populate_od (
SYN_CiA401_Device * dev,
SYN_CANOpenODEntry * od_table,
size_t max_entries
)
Parameters:
devPointer to initialized CiA 401 device instance.od_tableOutput array of SYN_CANOpenODEntry elements.max_entriesCapacity of od_table array.
Returns:
Number of OD entries populated.
Macro Definition Documentation¶
define SYN_CIA401_MAX_ANALOG_16BIT¶
Maximum 16-bit analog I/O channels
define SYN_CIA401_MAX_DIGITAL_8BIT¶
Maximum channel capacities for CiA 401 instance.
Maximum 8-bit digital I/O ports
define SYN_CIA401_OD_ANALOG_INPUT_16BIT¶
Read 16-bit Analog Inputs
define SYN_CIA401_OD_ANALOG_INPUT_DELTA¶
Analog Input Delta Interrupt Threshold
define SYN_CIA401_OD_ANALOG_INPUT_LIMIT_H¶
Analog Input High Limit Alarm
define SYN_CIA401_OD_ANALOG_INPUT_LIMIT_L¶
Analog Input Low Limit Alarm
define SYN_CIA401_OD_ANALOG_OUTPUT_16BIT¶
Write 16-bit Analog Outputs
define SYN_CIA401_OD_DIGITAL_INPUT_8BIT¶
CiA 401 Standard Object Dictionary Indices.
Read 8-bit Digital Inputs
define SYN_CIA401_OD_DIGITAL_OUTPUT_8BIT¶
Write 8-bit Digital Outputs
The documentation for this class was generated from the following file src/syntropic/proto/syn_cia401.h