From d9b9e8a7fc6121bcf60eb9ac63541143458c74a6 Mon Sep 17 00:00:00 2001 From: Bernhard Kirchen Date: Sun, 6 Oct 2024 20:50:33 +0200 Subject: [PATCH] Huawei CAN: use SpiManager to claim SPI bus (#1311) --- src/Huawei_can.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Huawei_can.cpp b/src/Huawei_can.cpp index ba7ede5c..c215ddb1 100644 --- a/src/Huawei_can.cpp +++ b/src/Huawei_can.cpp @@ -9,7 +9,7 @@ #include "PowerLimiter.h" #include "Configuration.h" #include "Battery.h" -#include +#include "SpiManager.h" #include #include @@ -35,7 +35,12 @@ void HuaweiCanCommunicationTask(void* parameter) { bool HuaweiCanCommClass::init(uint8_t huawei_miso, uint8_t huawei_mosi, uint8_t huawei_clk, uint8_t huawei_irq, uint8_t huawei_cs, uint32_t frequency) { - SPI = new SPIClass(HSPI); + + auto spi_bus = SpiManagerInst.claim_bus_arduino(); + if (!spi_bus) { return false; } + + SPI = new SPIClass(*spi_bus); + SPI->begin(huawei_clk, huawei_miso, huawei_mosi, huawei_cs); pinMode(huawei_cs, OUTPUT); digitalWrite(huawei_cs, HIGH);