Cypress CY8CKIT-064S0S2-4343W キットの開始方法 - 無料RTOS

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

Cypress CY8CKIT-064S0S2-4343W キットの開始方法

重要

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

このチュートリアルでは、CY8CKIT-064S0S2-4343W キットの使用を開始するための手順について説明します。お持ちでない場合は、リンクを使用してキットを購入できます。このリンクを使用して、キットのユーザーガイドにアクセスすることもできます。

はじめに

開始する前に、デバイスを AWS クラウドに接続するように、AWS IoT と FreeRTOS を設定する必要があります。手順については、「最初のステップ」を参照してください。前提条件を満たすと、AWS IoT Core 認証情報で FreeRTOS パッケージを入手できます。

注記

このチュートリアルでは、「最初のステップ」セクションで作成した FreeRTOS ダウンロードディレクトリへのパスを freertos とします。

開発環境のセットアップ

FreeRTOS では CMake または Make 構築フローのいずれかを使用できます。Make 構築フローには、ModusToolbox を使用できます。ModusToolbox に付属している Eclipse IDE か、IAR EW-Arm、Arm MDK、Microsoft Visual Studio Code などのパートナー IDE を使用できます。Eclipse IDE は、Windows、macOS、および Linux オペレーティングシステムと互換性があります。

始める前に、最新の ModusToolbox ソフトウェアをダウンロードして、インストールします。詳細については、ModusToolbox インストールガイドを参照してください。

ModusToolbox 2.1 以前のツールを更新する

ModusToolbox 2.1 Eclipse IDE を使用してこのキットをプログラムする場合は、OpenOCD および Firmware-loader ツールを更新する必要があります。

以下のステップでは、デフォルトの ModusToolbox パスは次のようになります。

  • Windows では C:\Users\user_name\ModusToolbox です。

  • Linux では user_home/ModusToolbox、またはアーカイブファイルを抽出する場所になります。

  • MacOS では、ウィザードで選択したボリュームの [Applications] (アプリケーション) フォルダの下です。

OpenOCD の更新

このキットでチップを正常に消去してプログラムするには、Cypress OpenOCD 4.0.0 以降が必要です。

Cypress OpenOCD を更新するには
  1. Cypress OpenOCD リリースページにアクセスします。

  2. OS (Windows/Mac/Linux) 用のアーカイブファイルをダウンロードします。

  3. ModusToolbox/tools_2.x/openocd にある既存のファイルを削除します。

  4. ModusToolbox/tools_2.x/openocd にあるファイルを前のステップでダウンロードしたアーカイブの抽出ファイルで置き換えます。

Firmware-loader の更新

このキットには、Cypress Firmware-loader 3.0.0 以降が必要です。

Cypress Firmware-loader を更新するには
  1. Cypress Firmware-loader リリースページにアクセスします。

  2. OS (Windows/Mac/Linux) 用のアーカイブファイルをダウンロードします。

  3. ModusToolbox/tools_2.x/fw-loader にある既存のファイルを削除します。

  4. ModusToolbox/tools_2.x/fw-loader にあるファイルを前のステップでダウンロードしたアーカイブの抽出ファイルで置き換えます。

または、CMake を使用して FreeRTOS アプリケーションのソースコードからプロジェクトビルドファイルを生成し、好みのビルドツールを使用してプロジェクトを構築してから、OpenOCD を使用してキットをプログラムすることもできます。CMake フローでプログラミングに GUI ツールを使用する場合は、Cypress Programmer を Cypress プログラミングソリューションウェブページからダウンロードして、インストールします。詳細については、「FreeRTOS で CMake を使用する」を参照してください。

ハードウェアの設定

キットのハードウェアをセットアップするには、次の手順を実行します。

  1. キットをプロビジョニングする

    CY8CKIT-064S0S2-4343W キットのプロビジョニングガイドの手順に従って、AWS IoT 用にキットを安全にプロビジョニングします。

    このキットには、CySecureTools 3.1.0 以降が必要です。

  2. シリアル接続を設定する

    1. キットをホストコンピュータに接続します。

    2. キットの USB シリアルポートは、ホストコンピュータに自動的に表示されます。ポート番号を指定します。Windows では、デバイスマネージャー[Ports] (ポート) (COM と LPT) を使用して指定できます。

    3. シリアルターミナルを起動し、以下の設定で接続を開きます。

      • ボーレート: 115200

      • データ: 8 ビット

      • パリティ: なし

      • ストップビット: 1

      • フロー制御: なし

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

このセクションでは、デモを構築して実行します。

  1. CY8CKIT-064S0S2-4343W キットのプロビジョニングガイドの手順に従います。

  2. FreeRTOS デモを構築します。

    1. ModusToolbox の Eclipse IDE を開き、ワークスペースを選択するか、または作成します。

    2. [File] (ファイル) メニューから [Import] (インポート) を選択します。

      [General] (全般) を展開し、[Existing Projects into Workspace] (既存のプロジェクトを WorkSpace へ) を選択してから、[Next] (次へ) を選択します。

    3. [Root Directory] (ルートディレクトリ) に freertos/projects/cypress/CY8CKIT-064S0S2-4343W/mtb/aws_demos と入力し、プロジェクト名 aws_demos を選択します。デフォルトで、このプロジェクト名が選択されています。

    4. [Finish] (完了) を選択してプロジェクトをワークスペースにインポートします。

    5. 次のいずれかを実行して、アプリケーションを構築します。

      • [Quick Panel] (クイックパネル) から、[Build aws_demos Application] (aws_demos アプリケーションの構築) を選択します。

      • [Project] (プロジェクト) を選択して、[Build All] (すべて構築) を選択します。

      プロジェクトのコンパイルにエラーがないことを確認します。

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

    デモを実行する前に、デバイスが 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] (トピックへのサブスクライブ) を選択します。

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

    1. ワークスペースでプロジェクト aws_demos を選択します。

    2. [Quick Panel] (クイックパネル) から、[aws_demos Program (KitProg3)] (aws_demos プログラム (KitProg3)) を選択します。これにより、ボードがプログラムされ、プログラミングが完了した後にデモアプリケーションの実行が開始されます。

    3. シリアルターミナルで実行中のアプリケーションのステータスを表示できます。次の図は、ターミナル出力の一部を示しています。

      aws_demo プロジェクトのビルド後のターミナル出力のスクリーンショット。

      MQTT デモは、4 つの異なるトピック (iotdemo/topic/n、n は 1~4) に関するメッセージを公開し、同じメッセージを受信するためにこれらのトピックをすべてサブスクライブします。メッセージが受信されると、デモはトピックに関する確認メッセージ iotdemo/acknowledgements を公開します。次のリストは、ターミナル出力に表示されるデバッグメッセージと、そのメッセージのシリアル番号を示しています。出力では、WICED Host Driver (WHD) ドライバーの詳細がシリアル番号なしで最初に表示されます。

      1. 1~4: デバイスは設定されたアクセスポイント (AP) に接続し、設定済みのエンドポイントと証明書を使用して AWS サーバーに接続することにより、プロビジョニングされます。

      2. 5~13: coreMQTT ライブラリが初期化され、デバイスが MQTT 接続を確立します。

      3. 14~17: デバイスはすべてのトピックをサブスクライブして、公開されたメッセージを受信します。

      4. 18~30: デバイスは 2 つのメッセージを公開し、それらを受信するまで待機します。各メッセージが受信されると、デバイスは確認メッセージを送信します。

      すべてのメッセージが公開されるまで、公開、受信、および確認の同じサイクルが続きます。設定されたサイクル数が完了するまで、サイクルごとに 2 つのメッセージが公開されます。

  5. FreeRTOS で CMake を使用する

    CMake を使用してデモアプリケーションを構築して実行することもできます。CMake とネイティブビルドシステムをセットアップするには、「前提条件」を参照してください。

    1. ビルドファイルを生成するには、次のコマンドを使用します。-DBOARD オプションを使用してターゲットボードを指定します。

      cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S freertos -B build_dir

      Windows を使用する場合、CMake はデフォルトで Visual Studio を使用するため、-G オプションでネイティブビルドシステムを指定する必要があります。

      cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S freertos -B build_dir -G Ninja

      シェルパス内に arm-none-eabi-gcc がない場合は、AFR_TOOLCHAIN_PATH CMake 変数を設定する必要もあります。

      -DAFR_TOOLCHAIN_PATH=/home/user/opt/gcc-arm-none-eabi/bin
    2. CMake を使用してプロジェクトを構築するには、次のコマンドを実行します。

      cmake --build build_dir
    3. 最後に、Cypress Programmer を使用して build_dir に生成された cm0.hexcm4.hex ファイルをプログラムします。

その他のデモを実行する

次のデモアプリケーションは、現在のリリースで動作することがテストされ、確認されています。これらのデモは、freertos/demos ディレクトリにあります。デモの実行方法については、「FreeRTOS デモ」を参照してください。

  • Bluetooth Low Energy デモ

  • 無線通信経由更新デモ

  • セキュアソケットエコークライアントのデモ

  • AWS IoT Device Shadow デモ

Debugging

キットの KitProg3 は SWD プロトコルでのデバッグをサポートしています。

  • FreeRTOS アプリケーションをデバッグするには、ワークスペースで [aws_demos project] (aws_demos プロジェクト) を選択し、[Quick Panel] (クイックパネル) から [aws_demos Debug (KitProg3)] (aws_demos デバッグ (KitProg3)) を選択します。

OTA の更新

PSoC 64 MCU は、必要なすべての FreeRTOS 認定テストに合格しています。ただし、PSoC 64 Standard Secure AWS ファームウェアライブラリで実装されているオプションの無線通信経由 (OTA) 機能は、まだ評価中です。実装されている OTA 機能は、aws_ota_test_case_rollback_if_unable_to_connect_after_update.py を除き、現在 OTA 認定テストのすべてに合格しています。

正常に検証された OTA イメージが PSoC64 Standard Secure を使用してデバイスに適用された場合、AWS MCU とデバイスが AWS IoT Core と通信できないため、デバイスは元の正常なイメージに自動的にロールバックできません。そのため、さらに更新を行う場合にデバイスが AWS IoT Core から到達不能になる可能性があります。この機能は、Cypress チームによってまだ開発中です。

詳細については、AWS および CY8CKIT-064S0S2-4343W キットでの OTA 更新を参照してください。その他の質問がある場合、またはテクニカルサポートが必要な場合は、Cypress Developer Community にお問い合わせください。