クラス Flash -- 内蔵フラッシュストレージへのアクセス

Flash クラスを使うと、 pyboard 上のプライマリフラッシュデバイスに直接アクセスできます。

ほとんどの場合、永続データをデバイスに保存するには高レベルの抽象化インタフェースを使うでしょう。たとえば、Python の標準ファイル API を介したファイルシステムなどです。この Flash クラスは、 ファイルシステム構成をカスタマイズ したり、特定のアプリケーションのための低レベルストレージシステムを実装するのに役立ちます。

コンストラクタ

class pyb.Flash

USB マスストレージインタフェースのあるフラッシュデバイスを表すブロックデバイスを作成して返します。

開始時に仮想パーティションテーブルができ、実際のフラッシュはブロック 0x100 から開始されます。

このコンストラクターは非推奨であり、MicroPython の将来のバージョンで削除される予定です。

class pyb.Flash(*, start=-1, len=-1)

指定したオフセットでフラッシュにアクセスするブロックデバイスを作成して返します。長さはデフォルトでデバイスの残りのサイズになります。

startlen オフセットはバイト単位であり、ブロックサイズ(内蔵フラッシュでは典型的に 512)の倍数でなければなりません。

メソッド

Flash.readblocks(block_num, buf)
Flash.readblocks(block_num, buf, offset)
Flash.writeblocks(block_num, buf)
Flash.writeblocks(block_num, buf, offset)
Flash.ioctl(cmd, arg)

これらのメソッドは os.AbstractBlockDev によって定義されたシンプルで:ref:extended <block-device-interface> ブロックプロトコルを実装します。

ハードウェアに関する注記

外部 spiflash を備えたボード(Pyboard Dなど)において、MicroPython ファームウェアはそれをプライマリフラッシュストレージとして使うように構成されます。他のすべてのボードでは MCU 内の内部フラッシュが使われます。