Microchip Curiosity PIC32MZ EF の開始方法 - FreeRTOS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Microchip Curiosity PIC32MZ EF の開始方法

重要

このリファレンス統合は、非推奨の Amazon-FreeRTOS リポジトリでホストされています。新しいプロジェクトを作成するときは、ここから始めることをお勧めします。現在非推奨の Amazon-FreeRTOS リポジトリをベースにした既存の FreeRTOS プロジェクトが既にある場合は、「Amazon FreeRTOS Github リポジトリ移行ガイド」を参照してください。

注記

Microchip との合意に基づき、Curiosity PIC32MZEF (DM320104) は FreeRTOS Reference Integration リポジトリのメインブランチから削除されるため、新しいリリースには搭載されません。Microchip は PIC32MZEF (DM320104) が新しい設計に推奨されなくなったことを公式に発表しました。PIC32MZEF プロジェクトとソースコードには、以前のリリースタグから引き続きアクセスできます。Microchip では、新しい設計に Curiosity PIC32MZ-EF-2.0 Development board (DM320209) を使用するよう推奨しています。Pic32mzv1 プラットフォームは、FreeRTOS リファレンス統合リポジトリの v202012.00 に引き続き用意されています。ただし、プラットフォームは FreeRTOS リファレンスの v202107.00 によってサポートされなくなりました。

このチュートリアルでは、Microchip Curiosity PIC32MZ EF の使用を開始するための手順について説明します。Microchip Curiosity PIC32MZ EF バンドルがない場合は、AWS Partner Device Catalog にアクセスして当社のパートナーから購入してください。

このバンドルには、次の項目が含まれます。

デバッグのため、以下も必要です。

開始する前に、デバイスを AWS クラウドに接続するように、AWS IoT と FreeRTOS ダウンロードを設定する必要があります。手順については、「最初のステップ」を参照してください。

重要
  • このトピックでは、FreeRTOS ダウンロードディレクトリへのパスを freertos とします。

  • freertos パスにスペース文字が含まれていると、構築が失敗する可能性があります。リポジトリをクローンまたはコピーするときは、作成するパスにスペース文字が含まれていないことを確認してください。

  • Microsoft Windows でのファイルパスの最大長は 260 文字です。FreeRTOS のダウンロードディレクトリパスが長くなると、構築が失敗する可能性があります。

  • ソースコードにはシンボリックリンクが含まれている可能性があるため、Windows を使用してアーカイブを抽出する場合は、次の操作を行う必要があります。

    • 開発者モードを有効にするか、または、

    • 管理者としてコンソールを使用します。

    この操作を行えば、Windows でアーカイブを抽出する際にシンボリックリンクを適切に作成できます。この操作を行わないと、シンボリックリンクは、そのパスがテキストとして含まれる、または空白の通常ファイルとして書き込まれます。詳細については、ブログの投稿「Symlinks in Windows 10!」を参照してください。

    Windows で Git を使用する場合は、開発者モードを有効にするか、以下を実行する必要があります。

    • 次のコマンドを使用して、core.symlinks を true に設定します。

      git config --global core.symlinks true
    • システムへの書き込みを行う git コマンド (git pullgit clonegit submodule update --init --recursive など) を使用する場合は、管理者としてコンソールを使用します。

概要

このチュートリアルには、使用開始のための以下の手順が含まれています。

  1. ボードをホストマシンに接続します。

  2. マイクロコントローラーボード用の組み込みアプリケーションを開発およびデバッグするためのソフトウェアをホストマシンにインストールします。

  3. FreeRTOS デモアプリケーションをバイナリイメージにクロスコンパイルします。

  4. アプリケーションバイナリイメージをボードにロードし、アプリケーションを実行します。

  5. モニタリングおよびデバッグの目的で、シリアル接続経由でボード上で実行されているアプリケーションに接続します。

Microchip Curiosity PIC32MZ EF ハードウェアの設定

  1. MikroElectronika USB UART click Board を Microchip Curiosity PIC32MZ EF の microBUS 1 コネクタに接続します。

  2. PIC32 LAN8720 PHY daughter board を Microchip Curiosity PIC32MZ EF の J18 ヘッダーに接続します。

  3. USB A to USB mini-B ケーブルを使用して、MikroElectronika USB UART click Board をコンピュータに接続します。

  4. ボードをインターネットに接続するには、次のいずれかのオプションを使用します。

    • Wi-Fi を使用するには、MikroElectronika Wi-Fi 7 click Board を Microchip Curiosity PIC32MZ EF の microBUS 2 コネクタに接続します。「FreeRTOS デモを設定する」を参照してください。

    • イーサネットを使用するには、Microchip Curiosity PIC32MZ EF Board をインターネットに接続し、PIC32 LAN8720 PHY daughter board を Microchip Curiosity PIC32MZ EF の J18 ヘッダーに接続します。イーサネットケーブルの一端を LAN8720 PHY ドーターボードに接続します。他方をルーターまたはその他のインターネットに接続します。プリプロセッサマクロ PIC32_USE_ETHERNET も定義する必要があります。

  5. まだ行っていない場合は、Microchip Curiosity PIC32MZ EF の ICSP ヘッダーにアングルコネクタをはんだ付けします。

  6. ICSP ケーブルの一端を PICkit 3 Programming Cable Kit から Microchip Curiosity PIC32MZ EF に接続します。

    PICkit 3 Programming Cable Kit がない場合は、M-F Dupont ワイヤージャンパーを使用して代わりに接続を配線できます。白い円は、ピン 1 の位置を示していることに注意してください。

  7. ICSP ケーブル (またはジャンパー) のもう一方の端を MPLAB Snap Debugger に接続します。8 ピン SIL プログラミングコネクタのピン 1 は、ボードの右下の黒い三角形でマークされています。

    Microchip Curiosity PIC32MZ EF のピン 1 へのケーブル (白い円で示す) が、MPLAB Snap Debugger のピン 1 に合っていることを確認します。

    MPLAB Snap Debugger の詳細については、MPLAB Snap In-Circuit Debugger 情報シートを参照してください。

PICkit On Board (PKOB) を使用した Microchip Curiosity PIC32MZ EF ハードウェアのセットアップ

前のセクションのセットアップ手順に従うことをお勧めします。ただし、次の手順に従って、統合された PICkit On Board (PKOB) プログラマー/デバッガーを使用して、基本的なデバッグで FreeRTOS デモを評価および実行できます。

  1. MikroElectronika USB UART click Board を Microchip Curiosity PIC32MZ EF の microBUS 1 コネクタに接続します。

  2. ボードをインターネットに接続するには、次のいずれかの操作を実行します。

    • Wi-Fi を使用するには、MikroElectronika Wi-Fi 7 click Board を Microchip Curiosity PIC32MZ EF の microBUS 2 コネクタに接続します。(「FreeRTOS デモを設定する」の「Wi-Fi を設定するには」の手順に従います)。

    • イーサネットを使用するには、Microchip Curiosity PIC32MZ EF Board をインターネットに接続し、PIC32 LAN8720 PHY daughter board を Microchip Curiosity PIC32MZ EF の J18 ヘッダーに接続します。イーサネットケーブルの一端を LAN8720 PHY ドーターボードに接続します。他方をルーターまたはその他のインターネットに接続します。プリプロセッサマクロ PIC32_USE_ETHERNET も定義する必要があります。

  3. USB type A to USB micro-B ケーブルを使用して、Microchip Curiosity PIC32MZ EF Board の「USB DEBUG」という名前の USB micro-B ポートをコンピュータに接続します。

  4. USB A to USB mini-B ケーブルを使用して、MikroElectronika USB UART click Board をコンピュータに接続します。

開発環境をセットアップする

注記

このデバイスの FreeRTOS プロジェクトは、MPLAB Harmony v2 に基づいています。プロジェクトをビルドするには、Harmony v2 と互換性のある MPLAB ツールのバージョン (MPLAB XC32 コンパイラの v2.10、MPLAB Harmony Configurator (MHC) のバージョン 2.X.X など) を使用する必要があります。

  1. Python バージョン 3.x 以降をインストールします。

  2. MPLAB X IDE をインストールします。

    注記

    FreeRTOS AWS リファレンス統合 v202007.00 は現在 MPLabv5.35 でのみサポートされています。以前のバージョンの FreeRTOS AWS リファレンス統合は MPLabv5.40 でサポートされています。

  3. MPLAB XC32 コンパイラをインストールします。

  4. UART ターミナルエミュレーターを起動し、以下の設定で接続を開きます。

    • ボーレート: 115200

    • データ: 8 ビット

    • パリティ: なし

    • ストップビット: 1

    • フロー制御: なし

クラウドの MQTT メッセージのモニタリング

FreeRTOS デモプロジェクトを実行する前に、デバイスが AWS クラウドに送信するメッセージをモニタリングするために、AWS IoT コンソールで MQTT クライアントをセットアップすることができます。

AWS IoT MQTT クライアントで MQTT トピックをサブスクライブするには
  1. AWS IoT コンソールにサインインします。

  2. ナビゲーションペインで、[テスト] を選択し、[MQTT テストクライアント] を選択して MQTT クライアントを開きます。

  3. [Subscription topic] (トピックのサブスクリプション) で your-thing-name/example/topic と入力し、[Subscribe to topic] (トピックへのサブスクライブ) を選択します。

デバイス上でデモプロジェクトが正常に実行されると、「Hello World!」が 購読しているトピックに複数回送信されたことを確認できます。

FreeRTOS デモプロジェクトを構築して実行する

MPLAB IDE で FreeRTOS デモを開く

  1. MPLAB IDE を開きます。複数のバージョンのコンパイラをインストールしている場合は、IDE 内から使用するコンパイラを選択する必要があります。

  2. [File] (ファイル) メニューで、[Open Project] (プロジェクトを開く) を選択します。

  3. projects/microchip/curiosity_pic32mzef/mplab/aws_demos に移動して開きます。

  4. [Open project] (プロジェクトを開く) を選択します。

注記

プロジェクトを初めて開く場合は、コンパイラに関するエラーメッセージが表示される可能性があります。IDE で、[Tools] (ツール)、[Options] (オプション)、[Embedded] (埋め込み) に移動して、プロジェクトに使用しているコンパイラを選択します。

イーサネットを使用して接続するには、プリプロセッサマクロ PIC32_USE_ETHERNET を定義する必要があります。

MPLAB IDE を使用してイーサネットで接続するには
  1. MPLAB IDE でプロジェクトを右クリックし、[Properties] (プロパティ) を選択します。

  2. [Project Properties] (プロジェクトプロパティ) ダイアログボックスで、compiler-name (グローバルオプション) を選択して展開し、compiler-name-gcc を選択します。

  3. [Options categories] (オプションのカテゴリ) で、[Preprocessing and messages] (前処理とメッセージ) を選択し、[Preprocessor macros] (プリプロセッサマクロ) に PIC32_USE_ETHERNET 文字列を追加します。

FreeRTOS デモプロジェクトを実行する

  1. プロジェクトを再構築します。

  2. [Projects] (プロジェクト) タブで、aws_demos の最上位フォルダを右クリックし、[Debug] (デバッグ) を選択します。

  3. デバッガーが main() のブレークポイントで停止したら、[Run] (実行) メニューから [Resume] (再開) を選択します。

CMake で FreeRTOS デモを構築する

FreeRTOS 開発に IDE を使用しない場合は、代わりに CMake を使用して、サードパーティのコードエディタおよびデバッグツールを使用して開発したデモアプリケーションまたはアプリケーションを構築して実行できます。

CMake で FreeRTOS デモを構築するには
  1. 次のような生成されたビルドファイルを格納するディレクトリ (build-directory など) を作成します。

  2. ソースコードからビルドファイルを生成するには、次のコマンドを使用します。

    cmake -DVENDOR=microchip -DBOARD=curiosity_pic32mzef -DCOMPILER=xc32 -DMCHP_HEXMATE_PATH=path/microchip/mplabx/version/mplab_platform/bin -DAFR_TOOLCHAIN_PATH=path/microchip/xc32/version/bin -S freertos -B build-folder
    注記

    Hexmate およびツールチェーンバイナリへの適切なパス (C:\Program Files (x86)\Microchip\MPLABX\v5.35\mplab_platform\binC:\Program Files\Microchip\xc32\v2.40\bin パスなど) を指定する必要があります。

  3. ディレクトリをビルドディレクトリ (build-directory) に変更して、そのディレクトリから make を実行します。

詳細については、「FreeRTOS で CMake を使用する」を参照してください。

イーサネットを使用して接続するには、プリプロセッサマクロ PIC32_USE_ETHERNET を定義する必要があります。

トラブルシューティング

トラブルシューティング情報については、「トラブルシューティングの開始方法」を参照してください。