ホーム フォーラム Texas Instruments マイコン C2000 TMS320F2807x USBマスストレージのサンプルソフトについて

このトピックには3件の返信が含まれ、4人の参加者がいます。6 年、 3 ヶ月前Ge Ge さんが最後の更新を行いました。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #1206 返信

    einoe
    参加者

    TMS320F2807x USBマスストレージのサンプルソフトについて

    デバイス型番:TMS320F28075;TMS320F28074

    USBマスストレージのサンプルソフト 
    C:\\ti\\controlSUITE\\device_support\\F2807x\\v210\\F2807x_examples_Cpu1\\usb_host_mscusb_host_msc_cpu01 
    をRAM上で動作しますが、
    FLASHに書き込む場合は、コマンドファイルを定義する以外に何か _FLASH などを定義すれば追加コードなしで再配置できますか、

    #1212 返信
    Ge
    Ge
    従業員

    以下画像のように、プロジェクト名を右クリックし、
    Build Configurations → Set Active → CPU1_FLASH
    を選択すると、FLASHに書き込むためのプロジェクトに変更可能です。

    CCS画面

    #1351 返信

    mickey.mouse
    参加者

    コンパイルは正常にできました。

    しかし、ダウンロードした直後は正常に動作しますが、

    デバッガをランチせずに再起動(電源ON-OFF-ON)しますとつ次のように

    リセットを繰り返します。なにか、RAMに転送できていないコードがあると思えます。

    コンソールのコピー

    Type ‘help’ for help.

    NODEV>

    USB Mass Storage Host program
    Type ‘help’ for help.

    NODEV>

    USB Mass Storage Host program
    Type ‘help’ for help.

    NODEV>

    以上、

    #1354 返信
    Yojiro
    Yojiro
    従業員

    USBのサンプルプロジェクトでは、ウォッチドッグ機能をディセーブルする処理および、ウォッチドッグタイマのクリア処理が実装されておりません。そのため、ウォッチドッグによるリセットが発生しているものと考えます。

    デバッガをランチすると、ランチ時にウォッチドッグ機能はディセーブルされますので、デバッグ時は正常に動作しますが、デバッガを終了し、再起動すると、ウォッチドッグ機能はデフォルトの有効状態で起動します。

    最終的には、ウォッチドッグ・タイマをクリアする処理を追加していただくのですが、デバッグや評価におきましては、以下の様にmain関数にてRAMFUNCセクションのコピー前に、ウォッチドッグ禁止処理(DisableDog())を追加してご確認いただけますでしょうか。

     

    int
    main(void)
    {
    int iStatus;

        DisableDog();

    #ifdef _FLASH
    // Copy time critical code and Flash setup code to RAM
    // This includes the following functions: InitFlash();
    // The RamfuncsLoadStart, RamfuncsLoadSize, and RamfuncsRunStart
    // symbols are created by the linker. Refer to the device .cmd file.
    memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
    #endif

     

    ご確認のほど、よろしくお願いします。

    • この返信は6 年、 4 ヶ月前に Yojiro Yojiro さんが編集しました。
4件の投稿を表示中 - 1 - 4件目 (全4件中)