12.5.1 デフォルト実装 FlashMethodv1 の使用について

フラッシュプログラミングメソッドは、com.arm.debug.flashprogrammer.IFlashMethod インタフェースの実装に必要な Python クラスとして記述されます。このインタフェースは、DS-5デバッガのフラッシュプログラミング層が呼び出す可能性のあるメソッドを定義します。

com.arm.debug.flashprogrammer.FlashMethodv1 のデフォルト実装の詳細については、<Install folder>\sw\debugger\configdb\Flash\flashprogrammer にある flash_method_v1.py ファイルを参照して下さい。これにはすべての関数の空の実装が含まれます。これにより、このオブジェクトから派生した Python クラスは、必要な関数のみを実装することができます。
フラッシュプログラミングメソッドの実行は次の 3 つのフェーズに分けることができます。
  1. セットアップ - setup() 関数はフラッシュプログラミングの実行のためにターゲットを準備します。これには、以下の動作が含まれます。
    • コンフィギュレーションファイルから渡されたパラメータを読み出し、検証する。
    • ターゲットへの接続を開く。
    • 例えば、フラッシュコントローラを初期化するなど、ターゲットの状態を準備する。
    • ターゲットにフラッシュプログラミングアルゴリズムをロードする。
  2. プログラミング - 書き込むデータのセクションごとに program() 関数が呼び出されます。イメージには複数のロード領域がある場合があるため、program() 関数は複数回呼び出されることがあります。書き込むデータはこの関数に渡され、メソッドはこの段階でフラッシュにデータを書き込みます。
  3. テアダウン - すべてのセクションがプログラムされた後、teardown() 関数が呼び出されます。この段階で、ターゲットの状態を復元して (例えば、フラッシュコントローラの書き込みモードをオフにしたり、ターゲットをリセットしたりして)、すべてのデバッグ接続を閉じることができます。

    setup() 関数と teardown() 関数はターゲットプラットフォームのオプションの setup() スクリプトおよび teardown() スクリプトと混同しないようにしてください。フラッシュメソッドクラスで定義された setup() 関数と teardown() 関数は、ボードではなくメソッド自体のためのものです。
非機密扱いPDF file icon PDF 版ARM DUI0446VJ
Copyright © 2010-2015 ARM.All rights reserved.