擦除flash的API函数esp_partition_erase_range(),擦除的扇区大小能否设置?

joseph_ji
Posts: 68
Joined: Thu Jun 17, 2021 1:26 am

擦除flash的API函数esp_partition_erase_range(),擦除的扇区大小能否设置?

Postby joseph_ji » Tue Oct 26, 2021 9:26 am

前提:如题,esp_partition_erase_range()函数擦除flash要求偏移offset与大小size必须对齐4KByte,即整片扇区擦除;
使用场景:我需要使用esp_partition_write()函数保存一条条名单(每条名单128Byte)到分区表中,然后esp_partition_write()函数要求写之前需要先擦除该区域;我的程序一些情况下需要修改某条名单的内容,这时候如果执行擦除再写入就会连其余名单也一起被擦除;
需求:有没有什么方法,可以修改每次擦除的扇区的大小?我想每次只擦除128Byte。

ESP_ICY
Posts: 404
Joined: Mon Aug 23, 2021 11:10 am

Re: 擦除flash的API函数esp_partition_erase_range(),擦除的扇区大小能否设置?

Postby ESP_ICY » Fri Oct 29, 2021 8:50 am

擦除的扇区大小是由flash硬件本身决定的,是每次擦除的最小单位,没有办法更改。

Who is online

Users browsing this forum: No registered users and 43 guests