10. USBホストプログラムの作成(その2)  ちゃんとUSBメモリが動く Harmony CONFIG 設定の紹介

POSC設定の問題がわかってから、一気に作業が進み、アタッチ検出もOK、無事にUSBメモリにアクセスできるようになりました。
以下、ちゃんとUSBメモリが動く、USBホストプログラムの作成方法を紹介します。( PIC32 USB Starter Kit III 用です)



まず、Harmony を使用したプロジェクトを新規作成します。
作成方法は、先の「7. USBホストプログラムの作成(その1) とりあえず Harmony でプロジェクトを作る」 を参考にしてください。
(この時、CPUの型番を正確に指定しておかないと、以下のCONFIG設定がおかしくなります。)

プロジェクトを新規作成したら、以下のように Harmony CONFIG 設定を行います。

CONFIG設定、その1


CONFIG設定、その2: CLOCKのCONFIG設定


CONFIG設定、その3


CONFIG設定、その4


CONFIG設定、その5



以上、設定済みの CONFIG ファイルを公開します。( PIC32 USB Starter Kit 3 用です )

  ・HM_CONFIG_SAMPLE01.mhc Download

なお、ダウンロードしたCONFIGファイルをプロジェクトに読み込むには、 新規作成したプロジェクトからCONFIG画面を呼び出し( TOOLS -> Embedded -> MPLAB Harmony Configurator )、 デフォルトのファイルを読み込んだ後、図のように

1) [Configuration] ボタンを押す
2) [Load Coonfiguration] にダウンロードしたファイルを指定
3) [Open] ボタンを押す。
4) 一度 [Save] し、[Generate] を実行。




プロジェクト作成とCONFIG設定ができたら、USBホスト/ファイルシステムの Harmony ライブラリィが組み込まれたプロジェクトが生成されます。
しかしライブラリィが使えるだけで、本体プログラムはまだ空っぽなので、このままでは動きません。
そこで APP.C と APP.H を修正して、実際にUSBメモリをアクセスするプログラムにします。

プログラム自体は、先のサンプル MSD_BASIC の APP.C と APP.H を参考に制作(というよりコピペ)しています。
以下のファイルをダウンロードし、ファイル名を APP.C APP.H に変更し、自動生成された APP.C APP.H と入れ替えてください。

  ・PIC32USB_TEST_app.c (APP.C) Download
  ・PIC32USB_TEST_app.h (APP.h) Download

あとはコンパイルして PIC32 USB Starter Kit 3 に書き込みます。

USBメモリに電源を供給するために、基板上のJP1をショートし、余裕のあるUSB電源を基板に供給します。
ちなみに筆者の基盤の消費電流は、基盤のみ:0.35A、基盤+USBメモリ:0.45A程度でした。



正しく動けば、先のサンプル MSD_BASIC と同じく、サンプルファイルがUSBメモリに書き込まれます。
PCでUSBメモリの中身を見ると、ファイルが生成されています。