PeakCAN 플러그인 사용

PeakCAN 플러그인은 PEAK 시스템 CAN 어댑터와 함께 작동하도록 로우레벨 API를 캡슐화합니다.

이 플러그인을 사용하려면 PCAN 장치 드라이버와 Windows의 경우 PCAN-Basic 라이브러리 버전 4.4.0 이상(pcanbasic.dll), Linux의 경우 4.0.0 이상(libpcanbasic.so)이 필요합니다. macOS에서 플러그인을 사용하려면 UV Software의 PCBUSB 라이브러리 버전 0.9 이상이 필요합니다.

참고: Qt 버전 5.14~6.4는 PCBUSB 라이브러리 버전 0.8.1과만 호환되지만, Qt 버전 6.5 이상은 PCBUSB 버전 0.9 이상이 필요합니다.

참고: QCanBusDeviceInfo::alias()는 Windows 및 PCAN-Basic 4.4.0 이상에서만 지원됩니다.

CAN 버스 디바이스 생성

먼저 QCanBus 에서 원하는 플러그인을 제공하는지 확인해야 합니다:

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

여기서 peakcan은 플러그인 이름입니다.

다음으로 특정 인터페이스에 대한 연결을 설정할 수 있습니다:

QString 오류 문자열;QCanBusDevice *device = QCanBus::instance()->createDevice(    QStringLiteral("peakcan"), QStringLiteral("usb0"), &errorString);if (!device) { // 오류 처리는 여기서 진행됩니다.    qDebug << errorString;
} else {  device->connectDevice(); }

여기서 usb0은 활성 CAN 인터페이스 이름입니다. PeakCAN 플러그인은 usb0부터 usb15까지 16개의 USB 인터페이스와 pci0부터 pci15까지 16개의 PCI 인터페이스를 지원합니다. availableDevices () 메서드는 현재 사용 가능한 장치 목록을 반환합니다.

참고: 현재 이 플러그인에서는 USB 및 PCI 어댑터만 지원합니다.

참고: macOS에서는 현재 이 플러그인에서 USB 어댑터만 지원됩니다.

이제 장치가 CAN 프레임 쓰기 및 읽기를 위해 열려 있습니다:

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

읽기는 readFrame() 메서드를 사용하여 수행할 수 있습니다. framesReceived () 신호는 읽기에 사용할 수 있는 새 프레임이 하나 이상 있으면 전송됩니다:

QCanBusFrame frame = device->readFrame();

PeakCAN은 setConfigurationParameter()를 통해 제어할 수 있는 다음 구성을 지원합니다:

구성 파라미터 키설명
QCanBusDevice::CanFdKey이 구성 옵션은 CAN FD 프레임의 전송 또는 수신 여부를 결정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 이 옵션을 활성화하려면 CAN FD 호환 하드웨어가 필요합니다.
QCanBusDevice::BitRateKeyCAN 버스 연결의 비트 전송률을 결정합니다. 지원되는 비트 전송률은 다음과 같습니다: 5000, 10000, 20000, 33000, 47000, 50000, 83000, 95000, 100000, 125000, 250000, 500000, 800000, 1000000. QCanBusDevice::CanFdKey 옵션이 활성화된 경우 비트 전송률은 125000, 250000, 500000 또는 1000000으로 제한됩니다. 이 구성 매개변수는 QCanBusDevice 에 연결되지 않은 상태에서만 조정할 수 있습니다.
QCanBusDevice::DataBitRateKeyCAN FD 버스 연결의 데이터 비트 전송률을 결정합니다. 이 옵션을 설정하려면 QCanBusDevice::CanFdKey 옵션이 활성화되어 있어야 합니다. 가능한 데이터 비트 전송률은 2000000, 4000000, 8000000 또는 10000000 입니다. 이 구성 매개변수는 QCanBusDevice 이 연결되지 않은 상태에서만 조정할 수 있습니다.

PeakCAN은 다음과 같은 추가 기능을 지원합니다:

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.