13.4.1 既存の Keil フラッシュアルゴリズムを使用した既存のプラットフォームへのフラッシュサポートの追加

DS-5 内で Keil MDK フラッシュアルゴリズムを使用するには、アルゴリズムバイナリをターゲットコンフィギュレーションデータベース、および keil_flash.py スクリプトを参照するために作成されたフラッシュコンフィギュレーションファイルにインポートする必要があります。

この例では、「フラッシュプログラミングコンフィギュレーション」セクションの Keil MCBSTM32E ボードの例のフラッシュコンフィギュレーションをテンプレートとして使用し、MegaSoc-Co 製の Acme-Board-2000 というボードにサポートを追加します。

手順

  1. アルゴリズムバイナリ .FLM をコンフィギュレーションデータベース Flash/Algorithms ディレクトリにコピーします。
  2. フラッシュコンフィギュレーションファイルを Boards/Keil/MCBSTM32E/keil-mcbstm32e_flash.xml から Boards/MegaSoc-Co/Acme-Board-2000/flash.xml にコピーします。
  3. <flash_config>CDB://flash.xml</flash_config>platform_data エントリの下に挿入することによって、flash.xml ファイルを参照するようにプラットフォームの project_types.xml を編集します。
    <?xml  version="1.0" encoding="UTF-8" standalone="no"?>
    <!--Copyright (C) 2009-2012 ARM Limited.All rights reserved.-->
    <platform_data xmlns="http://www.arm.com/project_type"
                   xmlns:peripheral="http://com.arm.targetconfigurationeditor"
                   xmlns:xi="http://www.w3.org/2001/XInclude"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"type="HARDWARE"
                   xsi:schemaLocation="http://www.arm.com/project_type../../../Schemas/platform_data-1.xsd">
                   <flash_config>CDB://flash.xml</flash_config>
  4. デバイスセクションを編集し、ターゲット上のフラッシュデバイスごとに <device> ブロックを作成します。

    注:

    method_config 属性は、<method_configs> セクションでそのデバイス固有の <method_config> ブロックを参照する必要があります。
  5. オプションで、ボードに必要なセットアップスクリプトまたはテアダウンスクリプトを作成してから、それを参照します。ボードがそれらを必要としない場合は、コンフィギュレーションにこれらの行を追加しないでください。
    <setup script="FDB://Acme-Board-2000-Flash.py" method="setup"/>
    <teardown script="FDB://Acme-Board-2000-Flash.py" method="teardown"/>
  6. method_configs セクションを編集し、デバイスごとに <method_config> ブロックを作成します。

    注:

    • アルゴリズムパラメータの値は、手順 1 でコピーしたアルゴリズムへのパスに変更する必要があります。接頭辞 FDB:// は、ファイルがコンフィギュレーションデータベースの Flash ディレクトリにあることを示します。
    • coreName パラメータは、アルゴリズムを実行するターゲット上のコアの名前でなければなりません。これは、project_types.xml 内の <core> の定義で使用した名前と同じものにして下さい。

      例えば、<core connection_id ="Cortex-M3" core_definition ="Cortex-M3"/> などです。

    • ramAddress パラメータと ramSize パラメータは、アルゴリズムのダウンロード先となり、ワーキング RAM として使用できる RAM の領域に設定する必要があります。この領域は、アルゴリズム、アルゴリズムの実行に必要なスタックとスクラッチの領域、およびイメージデータのダウンロードに十分な大きさの領域を含めることのできる大きさである必要があります。
    • 通常、その他のパラメータを変更する必要はありません。
非機密扱いPDF file icon PDF 版ARM DUI0446ZJ
Copyright © 2010–2016 ARM.All rights reserved.