TinyCANプラグインの使用

TinyCANプラグインは、MHS ElektronikCANアダプタで動作するための低レベルAPIをカプセル化します。

注: TinyCANアダプタは仮想シリアルポートを使用します。LinuxでTinyCANアダプタと通信するには、適切なアクセス権限が必要です。通常、これらの権限は「dialout」グループに属するすべてのユーザーに与えられています。

CANバスデバイスの作成

最初に、QCanBus 、目的のプラグインが提供されていることを確認する必要がある:

if (QCanBus::instance()->plugins().contains(QStringLiteral("tinycan"))) {
    // plugin available
}

tinycanはプラグイン名です。

次に、特定のインターフェースへの接続を確立します:

QCanBusDevice *device = QCanBus::instance()->createDevice(
    QStringLiteral("tinycan"), QStringLiteral("can0.0"));
device->connectDevice();

can0.0はアクティブなCANインターフェース名です。TinyCANは現在、インターフェイスcan0.0のみを提供しており、これはTinyCANプラグインのINDEX_CAN_KANAL_Aにマッピングされます。

: 利用可能なCANアダプターを検出する方法が今のところないため、availableDevices()関数は現在、常に1つのデバイス「can0.0」を返します。

注意 : 現在、このプラグインでサポートされているのはUSBアダプターのみです。

このデバイスは、CANフレームの書き込みと読み出しが可能です:

QCanBusFrame frame;
frame.setFrameId(8);
QByteArray payload("A36E");
frame.setPayload(payload);
device->writeFrame(frame);

読み込みは、readFrame() メソッドを使用して行うことができます。framesReceived() シグナルは、少なくとも1つの新しいフレームが読み込み可能になったときに出力されます:

QCanBusFrame frame = device->readFrame();

TinyCANは、setConfigurationParameter() から制御できる以下のコンフィギュレーションをサポートしています:

設定パラメータ・キー説明
QCanBusDevice::BitRateKeyCANバス接続のビットレートを決定します。以下のビットレートがサポートされています:10000, 20000, 50000, 100000, 125000, 250000, 500000, 800000, 1000000.

TinyCANは、以下の追加機能をサポートしています:

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。