sdk:simplelink_cc13xx_cc26xx_sdk_6_10_00_29
請問使用NVS_write是否無法部分erase?
我的buffer是uint8_t[16], 但我只想要寫入前面4個byte, 所以bufferSize = 4, flag = NVS_WRITE_ERASE | NVS_WRITE_POST_VERIFY
int_fast16_t status = NVS_write(nvsHandle, 0, (void *) buffer, 4,
NVS_WRITE_ERASE | NVS_WRITE_POST_VERIFY);
但我發現前面4個byte確實有寫入成功, 但是其他12個byte全部被erase了.
請問這是正確的嗎? 我原本以為只有要寫入的byte會erase而已
* @param buffer A buffer containing data to write to
* the NVS region.
*
* @param bufferSize The size of the buffer (number of bytes to write).
*
* @param flags Write flags (#NVS_WRITE_ERASE, #NVS_WRITE_PRE_VERIFY,
* #NVS_WRITE_POST_VERIFY).
extern int_fast16_t NVS_write(NVS_Handle handle, size_t offset, void *buffer,
size_t bufferSize, uint_fast16_t flags);