Hi nickwallis,
I think you can refer to the other SEMC IP read commander, eg.
SEMC_IPCommandNorRead in fsl_semc.c
You will find the IP command SEMC_SendIPCommand with read method.
while (size_bytes >= SEMC_IPCOMMANDDATASIZEBYTEMAX)
{
result =
SEMC_SendIPCommand(base, kSEMC_MemType_NOR, address, (uint16_t)kSEMC_NORDBICM_Read, 0, tmpData.u32Data);
if (result != kStatus_Success)
{
break;
}
data += SEMC_IPCOMMANDDATASIZEBYTEMAX;
size_bytes -= SEMC_IPCOMMANDDATASIZEBYTEMAX;
}
You can find :
SEMC_SendIPCommand(base, kSEMC_MemType_NOR, address, (uint16_t)kSEMC_NORDBICM_Read, 0, tmpData.u32Data);
You can replace the kSEMC_NORDBICM_Read to your kSEMC_SRAMCM_ArrayRead
About how much data, it determined by your code, you can consider each IP read just read 4Bytes, then if you need more, you just call more IP read.
Wish it helps you!
If you still have questions about it, please kindly let me know.
Best Regards,
Kerry