FlashArea 类 – 访问内置的 flash 存储¶
此类允许访问设备 flash 分区数据。Flash 区实体由一个全局唯一的 ID 号、分区所在的 Flash 设备的名称、起始偏移量(表示为与每个分区的 Flash 存储器起始地址相关)、以及该设备所代表的分区的大小组成。对于固定的 flash 分区,来自设备树定义的数据将被使用;但由于未启用 MCUBoot,在 MicroPython 中未强制执行固定 flash 分区。
构造器¶
- class zephyr.FlashArea(id, block_size)¶
通过指定
id
和块大小block_size
获取一个对象,用于访问 flash 分区中的闪存。id
值是与设备树中定义的固定 flash 分区相关的整数。一个公用的 flash 存储区域,是在启动时,当FLASH_AREA_LABEL_EXISTS(storage)
返回 true 后,定义为FlashArea.STORAGE
。Zephyr devicetree 中的固定闪存分区为boot_partition
、slot0_partition
、slot1_partition
和scratch_partition
。由于 MicroPython 默认未启用 MCUBoot,因此可以分别通过 ID 整数值 1、2、3 和 4 访问这些固定分区。
函数¶
- FlashArea.readblocks(block_num, buf)¶
- FlashArea.readblocks(block_num, buf, offset)
- FlashArea.writeblocks(block_num, buf)¶
- FlashArea.writeblocks(block_num, buf, offset)