大家好!请教一个关于用CC2640读写flash问题。
我用osal_snv_write(osalSnvId_t id, osalSnvLen_t len, void *pBuf)可以写入数据,也可以用uint8 osal_snv_read(osalSnvId_t id, osalSnvLen_t len, void *pBuf)正确读出。例如:
char buffer[20];
osal_snv_write(START_ID, 16, "Hello the world!");
osal_snv_read(START_ID, 16, buffer);
我的问题是,如果再次写入flash新的内容,读出来的仍然是原来的内容,flash不能被更细。例如:
osal_snv_write(START_ID, 16, "Greetings to ya!");
osal_snv_read(START_ID, 16, buffer);
读出来的内容还是"Hello the world!"。我怀疑是否在重新写入之前需要erase,但是没有找到osal_snv_erase()函数,手册中也没有看到怎样能够erase。我相信flash是能够重写的。请教各位大神有什么办法?多谢!