hideakitai / ESP32DMASPI

SPI library for ESP32 which use DMA buffer to send/receive transactions
MIT License
181 stars 37 forks source link

Compilation issues for the example code "master_simple". #36

Closed MonisRaza123 closed 9 months ago

MonisRaza123 commented 9 months ago

Running the code on Arduino IDE 2.0.3 using the latest version of your library ESP32DMASPI 0.3.0

Following errors are raised:

In file included from C:\Users\tusha\AppData\Local\Temp.arduinoIDE-unsaved202403-23284-s3e1aa.eh0me\master_simple\master_simple.ino:1:0: d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:51:5: sorry, unimplemented: non-trivial designated initializers not supported }; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:51:5: sorry, unimplemented: non-trivial designated initializers not supported d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:53:29: error: 'SPI2_HOST' was not declared in this scope spi_host_device_t host {SPI2_HOST}; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:53:38: error: cannot convert '' to 'spi_host_device_t' in initialization spi_host_device_t host {SPI2_HOST}; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:55:19: error: 'SPI_DMA_CH_AUTO' was not declared in this scope int dma_chan {SPI_DMA_CH_AUTO}; // must be 1, 2 or SPI_DMA_CH_AUTO ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:55:34: error: cannot convert '' to 'int' in initialization int dma_chan {SPI_DMA_CH_AUTO}; // must be 1, 2 or SPI_DMA_CH_AUTO ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h: In member function 'void arduino::esp32::spi::dma::Master::setDMAChannel(uint8_t)': d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:296:24: error: 'SPI_DMA_CH_AUTO' was not declared in this scope dma_chan = SPI_DMA_CH_AUTO; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h: In member function 'spi_host_device_t arduino::esp32::spi::dma::Master::hostFromBusNumber(uint8_t) const': d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:305:24: error: 'SPI1_HOST' was not declared in this scope return SPI1_HOST; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:311:24: error: 'SPI2_HOST' was not declared in this scope return SPI2_HOST; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:317:24: error: 'SPI3_HOST' was not declared in this scope return SPI3_HOST; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h: In member function 'void arduino::esp32::spi::dma::Master::addTransaction(uint8_t, uint8_t, uint8_t, uint32_t, uint16_t, uint64_t, size_t, const uint8_t, uint8_t)': d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:360:43: error: 'SPI_TRANS_VARIABLE_DUMMY' was not declared in this scope transactions.back().base.flags |= SPI_TRANS_VARIABLE_DUMMY; ^ d:\arduino\libraries\ESP32DMASPI/ESP32DMASPIMaster.h:372:29: error: '__gnu_cxx::__alloc_traits<std::allocator >::value_type {aka struct spi_transaction_ext_t}' has no member named 'dummy_bits' transactions.back().dummy_bits = dummy_bits; ^

exit status 1

Compilation error: exit status 1

hideakitai commented 9 months ago

As shown in REAEDME, this library requires arduino-esp32 platform version >= 2.0.0. NOT Arduino IDE. Please update your esp32 platform to the latest version. https://github.com/espressif/arduino-esp32/releases