Array read functions¶
-
bool
readByteArray
(uint32_t _addr, uint8_t *data_buffer, size_t bufferSize, bool fastRead = false)
- Reads an
array of bytes
from the address specified, and saves the values to thedata_buffer
array provided.
-
bool
readCharArray
(uint32_t _addr, char *data_buffer, size_t buffer_size, bool fastRead = false)
- Reads an
array of chars
from the address specified, and saves the values to thedata_buffer
array provided.
Parameters Mandatory & Optional
¶
-
uint32_t
_addr
¶
Address in memory where the data is to be read from. Mandatory
-
uint8_t *
data_buffer
¶
Pointer to data buffer to write the array to. Mandatory
-
size_t
buffer_size
¶
Size of the array to be read out from flash memory. Mandatory
-
bool
fastRead
¶
Refer to Advanced use Optional
What they do¶
Return the array of values of the datatype and size specified by the user, that is stored (starting) at the address provided
Returns boolean
¶
Returns TRUE
if data read successfully, else returns FALSE
Example code:¶
#include <SPIMemory.h>
SPIFlash flash;
#define _bufferSize 8
uint8_t dataIn[_bufferSize];
// This data type should be changed depending on the type of data being read from the flash memory
uint32_t _address;
void setup() {
flash.begin();
_address = flash.getAddress(sizeof(dataIn));
Serial.print(F("Address = "));
Serial.println(_address);
dataIn = flash.readByteArray(_address, dataIn, _bufferSize);
// This function should be changed depending on the type of data being read from the flash memory
Serial.print(F("Data read: "));
for (uint8_t i = 0; i < _bufferSize; i++) {
Serial.print(dataIn[i]);
Serial.print(F(", "));
}
Serial.println();
}
void loop() {
}