Всем здрастье. Понадобилось создать БМС-ку на основе esp32. Нашел в интернете код для ардуино. Немного его перелопатил думал что сейчас все запуститься в итоге выдает такую ошибку. Код (C++): #include <stdint.h> #include <Arduino.h> #include "Linduino.h" #include "LT_SPI.h" #include "LTC68042.h" #include <SPI.h> const int CELL_NUM = 12; const int TOTAL_IC = 1; uint8_t tx_cfg[TOTAL_IC][6]; uint8_t error; int input; uint16_t cell_codes[TOTAL_IC][12]; void init_cfg(){ for(int i = 0; i<TOTAL_IC;i++){ tx_cfg[i][0] = 0x04; tx_cfg[i][1] = 0x00; tx_cfg[i][2] = 0x00; tx_cfg[i][3] = 0x00; tx_cfg[i][4] = 0x00; tx_cfg[i][5] = 0x10; } } void print_cells() { for (int current_ic = 0 ; current_ic < TOTAL_IC; current_ic++) { Serial.print(" IC "); Serial.print(current_ic+1,DEC); for(int i=0; i<CELL_NUM; i++) { Serial.print(" C"); Serial.print(i+1,DEC); Serial.print(":"); Serial.print(cell_codes[current_ic][i]*.0001, 4); Serial.print(","); } Serial.println(); } } /*********************************************************************************************/ void setup() { Serial.begin(115200); LTC6804_initialize(); init_cfg(); } void loop() { Serial.println("Starting voltage loop. Transmit 'm' to quit."); wakeup_sleep(); LTC6804_wrcfg(TOTAL_IC,tx_cfg); while (input != 'm') { if (Serial.available() > 0) { input = Serial.available(); } wakeup_idle(); LTC6804_adcv(); delay(10); wakeup_idle(); error = LTC6804_rdcv(1, TOTAL_IC,cell_codes); if (error == 255) { Serial.println("Была обнаружена ошибка"); while (error == 255) { error = LTC6804_rdcv(1, TOTAL_IC,cell_codes); Serial.println("ошибка"); } } else { Serial.print(error); print_cells(); Serial.println(); } delay(50); } } причем на ардуино все прогоняет. А вот на esp не хочет. В чем может быть ошибка?
Как я понял он ругается на строку библиотеки для микросхемы LTC6804. Но я точно уверен что в библиотеке все правильно так как брал её от производителя.
в своем коде попробуйте переставить строчку Код (C++): #include <SPI.h> до соответсвующих инклюдов библиотек "LT_..."
SPIClass' - это новый интерфейс для SPI Толи у вас ядро для ЕСП очень старое, то ли в нем вообще этого нет - точно сказать не могу