CO_LSSmaster.h File Reference
CANopen_305 » LSS

CANopen Layer Setting Service - master protocol. More...

`#include "305/CO_LSS.h"`

Go to the source code of this file.

## Data Structures

struct | CO_LSSmaster_t
| LSS master object. More...
struct | CO_LSSmaster_fastscan_t
| Parameters for LSS fastscan CO_LSSmaster_IdentifyFastscan. More...

## Macros

#define | CO_LSSmaster_DEFAULT_TIMEOUT 1000U /* ms */
| Default timeout for LSS slave in ms. More...

## Enumerations

enum | CO_LSSmaster_return_t { CO_LSSmaster_SCAN_FINISHED = 2, CO_LSSmaster_WAIT_SLAVE = 1, CO_LSSmaster_OK = 0, CO_LSSmaster_TIMEOUT = -1, CO_LSSmaster_ILLEGAL_ARGUMENT = -2, CO_LSSmaster_INVALID_STATE = -3, CO_LSSmaster_SCAN_NOACK = -4, CO_LSSmaster_SCAN_FAILED = -5, CO_LSSmaster_OK_ILLEGAL_ARGUMENT = -101, CO_LSSmaster_OK_MANUFACTURER = -102 }
| Return values of LSS master functions. More...
enum | CO_LSSmaster_scantype_t { CO_LSSmaster_FS_SCAN = 0, CO_LSSmaster_FS_SKIP = 1, CO_LSSmaster_FS_MATCH = 2 }
| Scan type for CO_LSSmaster_fastscan_t scan. More...

## Functions

CO_ReturnError_t | CO_LSSmaster_init (CO_LSSmaster_t *LSSmaster, uint16_t timeout_ms, CO_CANmodule_t *CANdevRx, uint16_t CANdevRxIdx, uint32_t CANidLssSlave, CO_CANmodule_t *CANdevTx, uint16_t CANdevTxIdx, uint32_t CANidLssMaster)
| Initialize LSS object. More...
void | CO_LSSmaster_changeTimeout (CO_LSSmaster_t *LSSmaster, uint16_t timeout_ms)
| Change LSS master timeout. More...
void | CO_LSSmaster_initCallbackPre (CO_LSSmaster_t *LSSmaster, void *object, void(*pFunctSignal)(void *object))
| Initialize LSSmasterRx callback function. More...
CO_LSSmaster_return_t | CO_LSSmaster_switchStateSelect (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, CO_LSS_address_t *lssAddress)
| Request LSS switch state select. More...
CO_LSSmaster_return_t | CO_LSSmaster_switchStateDeselect (CO_LSSmaster_t *LSSmaster)
| Request LSS switch state deselect. More...
CO_LSSmaster_return_t | CO_LSSmaster_configureBitTiming (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, uint16_t bit)
| Request LSS configure Bit Timing. More...
CO_LSSmaster_return_t | CO_LSSmaster_configureNodeId (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, uint8_t nodeId)
| Request LSS configure node ID. More...
CO_LSSmaster_return_t | CO_LSSmaster_configureStore (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us)
| Request LSS store configuration. More...
CO_LSSmaster_return_t | CO_LSSmaster_ActivateBit (CO_LSSmaster_t *LSSmaster, uint16_t switchDelay_ms)
| Request LSS activate bit timing. More...
CO_LSSmaster_return_t | CO_LSSmaster_InquireLssAddress (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, CO_LSS_address_t *lssAddress)
| Request LSS inquire LSS address. More...
CO_LSSmaster_return_t | CO_LSSmaster_Inquire (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, CO_LSS_cs_t lssInquireCs, uint32_t *value)
| Request LSS inquire node ID or part of LSS address. More...
CO_LSSmaster_return_t | CO_LSSmaster_IdentifyFastscan (CO_LSSmaster_t *LSSmaster, uint32_t timeDifference_us, CO_LSSmaster_fastscan_t *fastscan)
| Select a node by LSS identify fastscan. More...

## Detailed Description

CANopen Layer Setting Service - master protocol.

Author
  Martin Wagner

Copyright
  2017 - 2020 Neuberger Gebaeudeautomation GmbH

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.