翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
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 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 を更新するには
-
Cypress OpenOCD リリースページ
にアクセスします。 -
OS (Windows/Mac/Linux) 用のアーカイブファイルをダウンロードします。
-
にある既存のファイルを削除します。ModusToolbox
/tools_2.x/openocd -
にあるファイルを前のステップでダウンロードしたアーカイブの抽出ファイルで置き換えます。ModusToolbox
/tools_2.x/openocd
Firmware-loader の更新
このキットには、Cypress Firmware-loader 3.0.0 以降が必要です。
Cypress Firmware-loader を更新するには
-
Cypress Firmware-loader リリースページ
にアクセスします。 -
OS (Windows/Mac/Linux) 用のアーカイブファイルをダウンロードします。
-
にある既存のファイルを削除します。ModusToolbox
/tools_2.x/fw-loader -
にあるファイルを前のステップでダウンロードしたアーカイブの抽出ファイルで置き換えます。ModusToolbox
/tools_2.x/fw-loader
または、CMake を使用して FreeRTOS アプリケーションのソースコードからプロジェクトビルドファイルを生成し、好みのビルドツールを使用してプロジェクトを構築してから、OpenOCD を使用してキットをプログラムすることもできます。CMake フローでプログラミングに GUI ツールを使用する場合は、Cypress Programmer を Cypress プログラミングソリューション
ハードウェアの設定
キットのハードウェアをセットアップするには、次の手順を実行します。
-
キットをプロビジョニングする
CY8CKIT-064S0S2-4343W キットのプロビジョニングガイド
の手順に従って、AWS IoT 用にキットを安全にプロビジョニングします。 このキットには、CySecureTools 3.1.0 以降が必要です。
-
シリアル接続を設定する
-
キットをホストコンピュータに接続します。
-
キットの USB シリアルポートは、ホストコンピュータに自動的に表示されます。ポート番号を指定します。Windows では、デバイスマネージャーの [Ports] (ポート) (COM と LPT) を使用して指定できます。
-
シリアルターミナルを起動し、以下の設定で接続を開きます。
-
ボーレート: 115200
-
データ: 8 ビット
-
パリティ: なし
-
ストップビット: 1
-
フロー制御: なし
-
-
FreeRTOS デモプロジェクトを構築して実行する
このセクションでは、デモを構築して実行します。
-
FreeRTOS デモを構築します。
-
ModusToolbox の Eclipse IDE を開き、ワークスペースを選択するか、または作成します。
-
[File] (ファイル) メニューから [Import] (インポート) を選択します。
[General] (全般) を展開し、[Existing Projects into Workspace] (既存のプロジェクトを WorkSpace へ) を選択してから、[Next] (次へ) を選択します。
-
[Root Directory] (ルートディレクトリ) に
と入力し、プロジェクト名freertos
/projects/cypress/CY8CKIT-064S0S2-4343W/mtb/aws_demosaws_demos
を選択します。デフォルトで、このプロジェクト名が選択されています。 -
[Finish] (完了) を選択してプロジェクトをワークスペースにインポートします。
-
次のいずれかを実行して、アプリケーションを構築します。
-
[Quick Panel] (クイックパネル) から、[Build aws_demos Application] (aws_demos アプリケーションの構築) を選択します。
-
[Project] (プロジェクト) を選択して、[Build All] (すべて構築) を選択します。
プロジェクトのコンパイルにエラーがないことを確認します。
-
-
-
クラウド上の MQTT メッセージのモニタリング
デモを実行する前に、デバイスが AWS クラウドに送信するメッセージをモニタリングするために、AWS IoT コンソールで MQTT クライアントをセットアップすることができます。AWS IoT MQTT クライアントで MQTT トピックをサブスクライブするには、次の手順を実行します。
-
AWS IoT コンソール
にサインインします。 -
ナビゲーションペインで、[テスト] を選択し、[MQTT テストクライアント] を選択して MQTT クライアントを開きます。
-
[Subscription topic] (トピックのサブスクリプション) で
と入力し、[Subscribe to topic] (トピックへのサブスクライブ) を選択します。your-thing-name
/example/topic
-
-
FreeRTOS デモプロジェクトを実行する
-
ワークスペースでプロジェクト
aws_demos
を選択します。 -
[Quick Panel] (クイックパネル) から、[aws_demos Program (KitProg3)] (aws_demos プログラム (KitProg3)) を選択します。これにより、ボードがプログラムされ、プログラミングが完了した後にデモアプリケーションの実行が開始されます。
-
シリアルターミナルで実行中のアプリケーションのステータスを表示できます。次の図は、ターミナル出力の一部を示しています。
MQTT デモは、4 つの異なるトピック (
iotdemo/topic/
、n は 1~4) に関するメッセージを公開し、同じメッセージを受信するためにこれらのトピックをすべてサブスクライブします。メッセージが受信されると、デモはトピックに関する確認メッセージn
iotdemo/acknowledgements
を公開します。次のリストは、ターミナル出力に表示されるデバッグメッセージと、そのメッセージのシリアル番号を示しています。出力では、WICED Host Driver (WHD) ドライバーの詳細がシリアル番号なしで最初に表示されます。-
1~4: デバイスは設定されたアクセスポイント (AP) に接続し、設定済みのエンドポイントと証明書を使用して AWS サーバーに接続することにより、プロビジョニングされます。
-
5~13: coreMQTT ライブラリが初期化され、デバイスが MQTT 接続を確立します。
-
14~17: デバイスはすべてのトピックをサブスクライブして、公開されたメッセージを受信します。
-
18~30: デバイスは 2 つのメッセージを公開し、それらを受信するまで待機します。各メッセージが受信されると、デバイスは確認メッセージを送信します。
すべてのメッセージが公開されるまで、公開、受信、および確認の同じサイクルが続きます。設定されたサイクル数が完了するまで、サイクルごとに 2 つのメッセージが公開されます。
-
-
-
FreeRTOS で CMake を使用する
CMake を使用してデモアプリケーションを構築して実行することもできます。CMake とネイティブビルドシステムをセットアップするには、「前提条件」を参照してください。
-
ビルドファイルを生成するには、次のコマンドを使用します。
-DBOARD
オプションを使用してターゲットボードを指定します。cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S
freertos
-Bbuild_dir
Windows を使用する場合、CMake はデフォルトで Visual Studio を使用するため、
-G
オプションでネイティブビルドシステムを指定する必要があります。cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S
freertos
-Bbuild_dir
-G Ninjaシェルパス内に
arm-none-eabi-gcc
がない場合は、AFR_TOOLCHAIN_PATH
CMake 変数を設定する必要もあります。-DAFR_TOOLCHAIN_PATH=/home/user/opt/gcc-arm-none-eabi/bin
-
CMake を使用してプロジェクトを構築するには、次のコマンドを実行します。
cmake --build
build_dir
-
最後に、Cypress Programmer を使用して
に生成されたbuild_dir
cm0.hex
とcm4.hex
ファイルをプログラムします。
-
その他のデモを実行する
次のデモアプリケーションは、現在のリリースで動作することがテストされ、確認されています。これらのデモは、
ディレクトリにあります。デモの実行方法については、「FreeRTOS デモ」を参照してください。freertos
/demos
-
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 イメージが PSoC64 Standard Secure を使用してデバイスに適用された場合、AWS MCU とデバイスが AWS IoT Core と通信できないため、デバイスは元の正常なイメージに自動的にロールバックできません。そのため、さらに更新を行う場合にデバイスが AWS IoT Core から到達不能になる可能性があります。この機能は、Cypress チームによってまだ開発中です。
詳細については、AWS および CY8CKIT-064S0S2-4343W キットでの OTA 更新