

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

# Microchip Curiosity PIC32MZ EF の開始方法
<a name="getting_started_mch"></a>

**重要**  <a name="deprecation-message"></a>
このリファレンス統合は、非推奨の Amazon-FreeRTOS リポジトリでホストされています。新しいプロジェクトを作成するときは、[ここから始める](freertos-getting-started-modular.md)ことをお勧めします。現在非推奨の Amazon-FreeRTOS リポジトリをベースにした既存の FreeRTOS プロジェクトが既にある場合は、「[Amazon FreeRTOS Github リポジトリ移行ガイド](github-repo-migration.md)」を参照してください。

**注記**  
Microchip との合意に基づき、Curiosity PIC32MZEF (DM320104) は FreeRTOS Reference Integration リポジトリのメインブランチから削除されるため、新しいリリースには搭載されません。Microchip は PIC32MZEF (DM320104) が新しい設計に推奨されなくなったことを[公式に発表](https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/DM320104)しました。PIC32MZEF プロジェクトとソースコードには、以前のリリースタグから引き続きアクセスできます。Microchip では、新しい設計に Curiosity [ PIC32MZ-EF-2.0 Development board (DM320209)](https://devices.amazonaws.com/detail/a3G0h0000077I69EAE/Curiosity-PIC32MZ-EF-2-0-Development-Board) を使用するよう推奨しています。Pic32mzv1 プラットフォームは、FreeRTOS リファレンス統合リポジトリの [v202012.00](https://github.com/aws/amazon-freertos/tree/202012.00) に引き続き用意されています。ただし、プラットフォームは FreeRTOS リファレンスの [v202107.00](https://github.com/aws/amazon-freertos/tree/202107.00) によってサポートされなくなりました。

このチュートリアルでは、Microchip Curiosity PIC32MZ EF の使用を開始するための手順について説明します。Microchip Curiosity PIC32MZ EF バンドルがない場合は、 AWS Partner Device Catalog にアクセスして[当社のパートナー](https://devices.amazonaws.com/detail/a3G0L00000AANscUAH/Curiosity-PIC32MZ-EF-Amazon-FreeRTOS-Bundle)から購入してください。

このバンドルには、次の項目が含まれます。
+ [Curiosity PIC32MZ EF Development Board](https://www.microchip.com/Developmenttools/ProductDetails/DM320104)
+ [MikroElectronika USB UART click Board](https://www.mikroe.com/usb-uart-click)
+ [MikroElectronika WiFi 7 click Board](https://www.mikroe.com/wifi-7-click) 
+ [PIC32 LAN8720 PHY daughter board](http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=ac320004-3)

デバッグのため、以下も必要です。
+ [MPLAB Snap In-Circuit Debugger](https://www.microchip.com/Developmenttools/ProductDetails/PG164100)
+ (オプション) [PICkit 3 プログラミングケーブルキット](https://www.microchip.com/TPROG001)

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

**重要**  
このトピックでは、FreeRTOS ダウンロードディレクトリへのパスを `freertos` とします。
`freertos` パスにスペース文字が含まれていると、構築が失敗する可能性があります。リポジトリをクローンまたはコピーするときは、作成するパスにスペース文字が含まれていないことを確認してください。
Microsoft Windows でのファイルパスの最大長は 260 文字です。FreeRTOS のダウンロードディレクトリパスが長くなると、構築が失敗する可能性があります。
ソースコードにはシンボリックリンクが含まれている可能性があるため、Windows を使用してアーカイブを抽出する場合は、次の操作を行う必要があります。  
[開発者モード](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development)を有効にするか、または、
管理者としてコンソールを使用します。
この操作を行えば、Windows でアーカイブを抽出する際にシンボリックリンクを適切に作成できます。この操作を行わないと、シンボリックリンクは、そのパスがテキストとして含まれる、または空白の通常ファイルとして書き込まれます。詳細については、ブログの投稿「[Symlinks in Windows 10\$1](https://blogs.windows.com/windowsdeveloper/2016/12/02/symlinks-windows-10/)」を参照してください。  
Windows で Git を使用する場合は、開発者モードを有効にするか、以下を実行する必要があります。  
次のコマンドを使用して、`core.symlinks` を true に設定します。  

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

## 概要:
<a name="getting_started_mch_overview"></a>

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

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

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

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

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

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

## Microchip Curiosity PIC32MZ EF ハードウェアの設定
<a name="setup-hw-mch"></a>

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

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

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

1. ボードをインターネットに接続するには、次のいずれかのオプションを使用します。
   + **Wi-Fi** を使用するには、MikroElectronika Wi-Fi 7 click Board を Microchip Curiosity PIC32MZ EF の microBUS 2 コネクタに接続します。「[FreeRTOS デモを設定する](freertos-prereqs.md#freertos-configure)」を参照してください。
   + **イーサネット**を使用するには、Microchip Curiosity PIC32MZ EF Board をインターネットに接続し、PIC32 LAN8720 PHY daughter board を Microchip Curiosity PIC32MZ EF の J18 ヘッダーに接続します。イーサネットケーブルの一端を LAN8720 PHY ドーターボードに接続します。他方をルーターまたはその他のインターネットに接続します。プリプロセッサマクロ `PIC32_USE_ETHERNET` も定義する必要があります。

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

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

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

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

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

   MPLAB Snap Debugger の詳細については、[MPLAB Snap In-Circuit Debugger 情報シート](http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB%20Snap%20In-Circuit%20Debugger%20IS%20DS50002787A.pdf)を参照してください。

## PICkit On Board (PKOB) を使用した Microchip Curiosity PIC32MZ EF ハードウェアのセットアップ
<a name="setup-env_mch-pkob"></a>

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

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

1. ボードをインターネットに接続するには、次のいずれかの操作を実行します。
   + **Wi-Fi** を使用するには、MikroElectronika Wi-Fi 7 click Board を Microchip Curiosity PIC32MZ EF の microBUS 2 コネクタに接続します。(「[FreeRTOS デモを設定する](freertos-prereqs.md#freertos-configure)」の「Wi-Fi を設定するには」の手順に従います)。
   + **イーサネット**を使用するには、Microchip Curiosity PIC32MZ EF Board をインターネットに接続し、PIC32 LAN8720 PHY daughter board を Microchip Curiosity PIC32MZ EF の J18 ヘッダーに接続します。イーサネットケーブルの一端を LAN8720 PHY ドーターボードに接続します。他方をルーターまたはその他のインターネットに接続します。プリプロセッサマクロ `PIC32_USE_ETHERNET` も定義する必要があります。

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

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

## 開発環境をセットアップする
<a name="setup-env_mch"></a>

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

1. [Python バージョン 3.x](https://www.python.org/downloads/) 以降をインストールします。

1. MPLAB X IDE をインストールします。
**注記**  
FreeRTOS AWS リファレンス統合 v202007.00 は現在、MPLabv5.35 でのみサポートされています。FreeRTOS AWS リファレンス統合の以前のバージョンは、MPLabv5.40.

**MPLabv5.35 ダウンロード**
   + [MPLAB X Integrated Development Environment for Windows](http://ww1.microchip.com/downloads/en/DeviceDoc/MPLABX-v5.35-windows-installer.exe)
   + [MPLAB X Integrated Development Environment for macOS](http://ww1.microchip.com/downloads/en/DeviceDoc/MPLABX-v5.35-osx-installer.dmg)
   + [MPLAB X Integrated Development Environment for Linux](http://ww1.microchip.com/downloads/en/DeviceDoc/MPLABX-v5.35-linux-installer.tar)

**最新の MPLab ダウンロード (MPLabv5.40)**
   + [MPLAB X Integrated Development Environment for Windows](http://www.microchip.com/mplabx-ide-windows-installer)
   + [MPLAB X Integrated Development Environment for macOS](http://www.microchip.com/mplabx-ide-osx-installer)
   + [MPLAB X Integrated Development Environment for Linux](http://www.microchip.com/mplabx-ide-linux-installer)

1. MPLAB XC32 コンパイラをインストールします。
   + [MPLAB XC32/32\$1\$1 Compiler for Windows](http://www.microchip.com/mplabxc32windows)
   + [MPLAB XC32/32\$1\$1 Compiler for macOS](http://www.microchip.com/mplabxc32osx)
   + [MPLAB XC32/32\$1\$1 Compiler for Linux](http://www.microchip.com/mplabxc32linux)

1. UART ターミナルエミュレーターを起動し、以下の設定で接続を開きます。
   + ボーレート: 115200
   + データ: 8 ビット
   + パリティ: なし
   + ストップビット: 1
   + フロー制御: なし

## クラウドの MQTT メッセージのモニタリング
<a name="getting_started_mch_monitor_mqtt"></a>

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

**MQTT クライアントで AWS IoT MQTT トピックをサブスクライブするには**

1. [AWS IoT コンソール](https://console.aws.amazon.com/iotv2/) にサインインします。

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

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

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

## FreeRTOS デモプロジェクトを構築して実行する
<a name="mch-build-and-run-example"></a>

### MPLAB IDE で FreeRTOS デモを開く
<a name="mch-freertos-import-project"></a><a name="mch-load-project"></a>

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

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

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

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

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

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

**MPLAB IDE を使用してイーサネットで接続するには**

1. MPLAB IDE でプロジェクトを右クリックし、**[Properties]** (プロパティ) を選択します。

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

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

### FreeRTOS デモプロジェクトを実行する
<a name="mch-run-example"></a>

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

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

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

### CMake で FreeRTOS デモを構築する
<a name="microchip-cmake"></a>

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

**CMake で FreeRTOS デモを構築するには**

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

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

   ```
   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\bin`、`C:\Program Files\Microchip\xc32\v2.40\bin` パスなど) を指定する必要があります。

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

詳細については、「[FreeRTOS で CMake を使用する](getting-started-cmake.md)」を参照してください。

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

## トラブルシューティング
<a name="getting_started_mch_troubleshooting"></a>

トラブルシューティング情報については、「[トラブルシューティングの開始方法](gsg-troubleshooting.md)」を参照してください。