フォーラムへの返信

15件の投稿を表示中 - 1 - 15件目 (全28件中)
  • 投稿者
    投稿

  • zen135
    参加者

    御確認ありがとうございます。
    GPIO(LED)によりイレースコマンド実行(完了しているかは不明)まで進んでいるのを確認できてます。

    プロジェクトですが、カスタムされた基板ありきのプロジェクトなので、お試し頂くのは難しいと思いますが、プロジェクト送付は可能です。

    返信先: LiveFirmwareUpdateについて #13750

    zen135
    参加者

    ありがとうございます。
    F021_API_F2837xS_FPU32.libのRAM展開のみの件承知しました。

    返信先: LiveFirmwareUpdateについて #13747

    zen135
    参加者

    ありがとうございます。
    FLASHを書き換える動作をしているプログラムになります。
    RAM展開の件承知いたしました。
    それはデバッグモードでも同様でしょうか?
    (意図としてはこちらで質問させて頂いている内容になります。https://emb.macnica.co.jp/forums/topic/13740/)

    返信先: LiveFirmwareUpdateについて #13731

    zen135
    参加者

    確認になります。
    今回LiveFirmwareUpdateについて色々とご質問させて頂きましたが、プロジェクトを一つで行う場合はブートに伴うプログラムはRAMに展開する必要がある。
    プロジェクトをブート用とアプリ用に分けて作成し、FLASHの領域も分けて作成した場合は、アプリ用側のアップデートに限りブートに伴うプログラムをRAMに展開する必要はない。(展開せずにアップデートできていました。)
    上記認識で問題ございませんでしょうか?

    返信先: LiveFirmwareUpdateについて #13720

    zen135
    参加者

    上記質問ですが、解決いたしました。
    プロジェクトプロパティのDebug->FlashSettingのNecessarySectorsOnlyにチェック。

    返信先: LiveFirmwareUpdateについて #13716

    zen135
    参加者

    ありがとうございます。
    初期起動の件承知しました。
    また、プロジェクトを2つに分けると.outも2つになるかと思います。
    一方を書き込むと他方の領域がイレースされます。
    これを回避する方法はございますでしょうか?
    行いたいことは使用している領域のみイレースして書込みです。

    返信先: LiveFirmwareUpdateについて #13710

    zen135
    参加者

    ありがとうございます。

    ブートプロジェクトのBEGINを0x080000
    アプリプロジェクトのBEGINを0x088000
    とした場合、ブートからアプリに移動する際は((void (*)())0x088000)(); アプリからブートに移動する際は((void (*)())0x080000)(); という認識でよろしいでしょうか?
    また、起動はどちらのプロジェクトから起動しますでしょうか?

    返信先: LiveFirmwareUpdateについて #13702

    zen135
    参加者

    ありがとうございます。
    ブート用プロジェクトとアプリ用プロジェクトを作成する件承知いたしました。
    干渉しないようにというのは、cmdファイルにてFLASH領域及びRAM領域が干渉しないという理解でよろしいでしょうか?
    起動時はブート用プロジェクトから起動しその後アプリ用プロジェクトで動作と考えております。
    その際、アプリ用プロジェクトの開始アドレスにはどのようにジャンプすればよろしいでしょうか?
    また、開始アドレスはどのように指定しますでしょうか?(cmdファイル内のcodestart?)

    返信先: LiveFirmwareUpdateについて #13694

    zen135
    参加者

    ブートに関わるプログラムのRAM展開からのLiveFirmアップデートが一通り確認できました。
    しかし、現在下記懸念点がございます。
    解決方法等ございましたらご教授の程宜しくお願いいたします。
    datファイルの転送中(FLASH書込み中)に断線及び電圧低下(電源オフ)がおこるとデバッガ等で正常データを上書きしないといけないかと思います。
    そこで、ブート用に関わるプログラムとアップデートされるであろうプログラムの領域をFLASHのセクターで分離し、動作させることは可能でしょうか?

    返信先: Flashへの書込みについて #13692

    zen135
    参加者

    ありがとうございます。
    解決いたしました。


    zen135
    参加者

    ありがとうございます。
    上記方法でRAM展開できました。

    返信先: LiveFirmwareUpdateについて #13675

    zen135
    参加者

    ありがとうございます。

    新たな問題を抱えております。アドバイスお願いいたします。
    F021_API_F2837xS_FPU32.lib を使用してFLASHのイレースを行っているですが、特定のセクターをイレースすると動作がとまります。
    そのセクターを.mapファイルで確認すると上記.libが使用されている場所のようです。
    動作に必要な関数はCODE_SECTIONにてRAM展開しているのですが、.libはRAM展開の仕方がわからずケアしておりません。
    そのせいで動作が止まっているのではと考えております。
    .libもRAM展開する必要御座いますでしょうか?
    必要な場合はどのようにするかご教授願います。

    返信先: LiveFirmwareUpdateについて #13658

    zen135
    参加者

    ありがとうございます。
    一括で定義する方法等はございますでしょうか?
    やはり個別に定義しないといけないでしょうか?

    返信先: LiveFirmwareUpdateについて #13656

    zen135
    参加者

    作成したdatファイルを読み込みFLASHに書き込んでいる箇所をモニタすると、書込み開始アドレスが80002からではなくエントリポイントのアドレス設定されている次のセクター88000からとなります。
    これは正しいのでしょうか?
    開始アドレスは何によって決まるのでしょうか?

    と記載しましたが、エントリポイントのアドレスは無関係でした。

    また、RAM展開する関数ですが、こちらは関数内で使用しているサブ関数も定義する必要がございますでしょうか?

    返信先: LiveFirmwareUpdateについて #13655

    zen135
    参加者

    サンプルプロジェクトのSCI部を独自プロトコルに変更するようにしてデバッグを行っているのですが、動作がいまいちつかめない状況です。
    何かお心当たりがあればアドバイスを御願いいたします。
    作成したdatファイルを読み込みFLASHに書き込んでいる箇所をモニタすると、書込み開始アドレスが80002からではなくエントリポイントのアドレス設定されている次のセクター88000からとなります。
    これは正しいのでしょうか?
    開始アドレスは何によって決まるのでしょうか?
    また、mapファイルで確認したusedサイズと出力したdatファイルのサイズを比べるとdatファイルがかなり大きいサイズとなっております。(datファイルはバイナリエディタで確認)
    これも正しいのでしょうか?
    以上よろしくお願いいたします。

15件の投稿を表示中 - 1 - 15件目 (全28件中)