diff options
Diffstat (limited to 'src/serialbus/doc/src/systeccan.qdoc')
-rw-r--r-- | src/serialbus/doc/src/systeccan.qdoc | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/src/serialbus/doc/src/systeccan.qdoc b/src/serialbus/doc/src/systeccan.qdoc new file mode 100644 index 0000000..08ecfce --- /dev/null +++ b/src/serialbus/doc/src/systeccan.qdoc @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Andre Hartmann <aha_1980@gmx.de> +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ +/*! + \page qtserialbus-SystecCAN-overview.html + \title Using SystecCAN Backend + + \brief Overview of how to use the SystecCAN backend. + + The SystecCAN backend encapsulates the low-level API to work with the + \l{http://www.systec-electronic.com/}{SYS TEC} CAN adapters. + + \section1 Creating CAN Bus Devices + + At first it is necessary to check that QCanBus provides the desired backend: + + \code + if (QCanBus::instance()->plugins().contains(QStringLiteral("systeccan"))) { + // backend available + } + \endcode + + Where \e systeccan is the backend name. + + Next, a connection to a specific interface can be established: + + \code + QCanBusDevice *device = QCanBus::instance()->createDevice( + QStringLiteral("systeccan"), QStringLiteral("can0.0")); + device->connectDevice(); + \endcode + + Where, \e can0.0 is the active CAN interface name (interface 0, channel 0). + The SystecCAN backend supports 64 USB interfaces (so called modules) from + \e can0.0 to \e can63.1. Each module can have one or two channels, they can + be accessed by the index canX.0 or canX.1. + + \note SYS TEC also provides 8 or 16 channel CAN interfaces. These units + consist of an USB hub and multiple two-channel modules internally. + + The device is now open for writing and reading CAN frames: + + \code + QCanBusFrame frame; + frame.setFrameId(8); + QByteArray payload("A36E"); + frame.setPayload(payload); + device->writeFrame(frame); + \endcode + + The reading can be done using the \l {QCanBusDevice::}{readFrame()} method. + The \l {QCanBusDevice::}{framesReceived()} signal is emitted when at least + one new frame is available for reading: + + \code + QCanBusFrame frame = device->readFrame(); + \endcode + + SystecCAN supports the following configurations that can be controlled through + \l {QCanBusDevice::}{setConfigurationParameter()}: + + \table + \header + \li Configuration parameter key + \li Description + \row + \li QCanBusDevice::BitRateKey + \li Determines the bit rate of the CAN bus connection. The following bit rates + are supported: 10000, 20000, 50000, 100000, 125000, 250000, 500000, 800000, + and 1000000. Note that this configuration parameter can only be adjusted + while the QCanBusDevice is not connected. + \row + \li QCanBusDevice::ReceiveOwnKey + \li The reception of CAN frames on the same channel that was sending the CAN frame + is disabled by default. + \endtable +*/ |