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::BitRateKey | CANバス接続のビットレートを決定します。以下のビットレートがサポートされています: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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。