SPIMemory library - Formerly SPIFlash - now supports SPI FRAM as well! :)

Just pushed an update through to v3.4.0 with the following changes:

Bugs squashed:

  • FastRead works properly now. All previous versions of the library has a FastRead bug that prevent it from doing what it was supposed to.

Enhancements:

-An alternate version of the constructor SPIFlash flash(int8_t *SPIPinsArray); can be used (only with ESP32 boards as of now) to enable the use of custom SPI pins. SPIPinsArray has to be a 4 element array containing the custom SPI pin numbers (as signed integers - int8_t) in the following order - sck, miso, mosi, ss. Refer to the wiki for more information. Resolves issue #113

  • Created new error code NOCHIPSELECTDECLARED for errors with declaring custom SPI pins.

  • Using other SPI ports (HSPI, VSPI, SPI1, SPI2 etc.) is now also supported on ESP32 boards - along with SAMD and STM32 boards (supported since v3.0.0). Resolves issue #177

  • The new version changes the way [setClock()](http://(Library instantiation functions · Marzogh/SPIMemory Wiki · GitHub) works and allows for the definition of clock speed before the SPI Bus is instantiated. Refer to wiki for further details. Thanks @rambo.(PR #156)

  • Reduce SRAM footprint when running Diagnostics.ino. Thanks @rambo

  • Officially supports the ESP32 (tested on the ESP32 Feather)

  • Now supports FRAM memory chips via the SPIFram constructor

  • Changed Diagnostics output in _chipID() to match situation better.

  • Fixed _chipID() to run more efficiently.

New µCs supported:

  • nRF52832 ARM Cortex M4F (Adafruit nRF52 Feather)
  • STM32L0 ARM Cortex M0+ (Nucleo-L031K6)

New flash memory chips supported:

  • MX25L4005 & MX25L4005 from Macronix

Work on proper documentation continues. As polaroi8d pointed out here, the old ReadMe was getting far too unwieldy and the Github Wiki is not the easiest thing to poke around. I hope to have the documentation done soon - (Rst + Sphinx). Check out the progress of the documentation here! Any recommendations are welcome 8)