Infineon XMC4800 IoT Connectivity Kit の開始方法 - 無料RTOS

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

Infineon XMC4800 IoT Connectivity Kit の開始方法

重要

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

このチュートリアルでは、Infineon XMC4800 IoT Connectivity Kit の使用を開始する手順について説明します。Infineon XMC4800 IoT Connectivity Kit がない場合は、 AWS Partner Device Catalog にアクセスして当社のパートナーから購入してください。

ボードとのシリアル接続を開いてログ記録とデバッグ情報を表示する場合は、Adafruit の CP2104 Friend などのボードで広く利用可能な 3.3V USB/Serial converter, in addition to the XMC4800 IoT Connectivity Kit. The CP2104 is a common USB/Serialコンバータが必要です。

開始する前に、 AWS IoT と無料RTOSダウンロードを設定して、デバイスを AWS クラウドに接続する必要があります。手順については、「最初のステップ」を参照してください。このチュートリアルでは、無料RTOSダウンロードディレクトリへのパスを と呼びますfreertos

概要

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

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

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

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

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

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

無料RTOS は、Infineon DAVEの開発環境を使用して XMC4800 をプログラムします。開始する前に、オンボードデバッガーと通信するために、 DAVE といくつかの J-Link ドライバーをダウンロードしてインストールする必要があります。

DAVE をインストールする

  1. Infineon のDAVEソフトウェアダウンロードページに移動します。

  2. オペレーティングシステムのDAVEパッケージを選択し、登録情報を送信します。Infineon での登録後、.zip ファイルをダウンロードするためのリンクが記載された確認メールを受け取ります。

  3. DAVE パッケージの .zip ファイル (DAVE_version_os_date.zip) をダウンロードし、インストールする場所に解凍します DAVE (例: C:\DAVE4)。

    注記

    一部の Windows ユーザーから、ファイルの解凍に Windows エクスプローラーを使用する際の問題が報告されています。7-Zip などのサードパーティー製のプログラムを使用することをお勧めします。

  4. を起動するにはDAVE、解凍されたDAVE_version_os_date.zipフォルダにある実行可能ファイルを実行します。

詳細については、DAVE「 クイックスタートガイド」を参照してください。

XMC4800 Relax EtherCAT ボードのオンボードデバッグプローブと通信するには、J-Link ソフトウェアとドキュメントパックに含まれているドライバーが必要です。Segger の J-Link software download ページから、J-Link ソフトウェアとドキュメントパックをダウンロードできます。

シリアル接続の確立

シリアル接続の設定はオプションですが、推奨されています。シリアル接続により、開発マシンで表示可能な形式でボードからログとデバッグ情報を送信できるようになります。

XMC4800 デモアプリケーションはピン P0.0 と P0.1 でUARTシリアル接続を使用します。ピンは XMC4800 Relax EtherCAT ボードのスクリーンにラベル付けされています。シリアル接続の設定方法は、以下の通りです。

  1. 「RX<P0.0」というラベルのピンを USB/シリアルコンバータの「TX」ピンに接続します。

  2. 「TX>P0.1」というラベルのピンを USB/シリアルコンバータの「RX」ピンに接続します。

  3. シリアルコンバータの Ground ピンをボードのGND「」というラベルの付いたピンの 1 つに接続します。デバイスは、共通の接地を持っている必要があります。

USB デバッグポートから電力が供給されるため、シリアルアダプターの正電圧ピンをボードに接続しないでください。

注記

一部のシリアルケーブルは、5V シグナルレベルを使用します。XMC4800 ボードと Wi-Fi Click モジュールには 3.3V が必要です。ボードのIOREFジャンパーを使用してボードのシグナルを 5V に変更しないでください。

ケーブルを接続すると、GNUスクリーンなどのターミナルエミュレータでシリアル接続を開くことができます。ボーレートはデフォルトで 115200 に設定されており、8 データビット、パリティなし、1 ストップビットです。

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

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

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

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

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

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

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

無料RTOSデモを にインポートする DAVE

  1. DAVE を起動します。

  2. DAVE で、[File]、[Import] の順に選択します。インポートウィンドウで、Infineon フォルダを展開し、DAVEプロジェクトを選択し、次を選択します。

  3. DAVE プロジェクトのインポートウィンドウで、ルートディレクトリの選択を選択し、参照を選択してから、XMC4800 デモプロジェクトを選択します。

    無料RTOSダウンロードを解凍したディレクトリで、デモプロジェクトは にありますprojects/infineon/xmc4800_iotkit/dave4/aws_demos

    [Copy Projects Into Workspace] (プロジェクトをワークスペースにコピー) がオフになっていることを確認します。

  4. [Finish] (終了) を選択します。

    aws_demos プロジェクトは、WorkSpace にインポートされ、アクティブ化されます。

  5. [Project] (プロジェクト) メニューから [Build Active Project] (アクティブなプロジェクトを構築) を選択します。

    プロジェクトがエラーなしでビルドされていることを確認します。

無料RTOSデモプロジェクトを実行する

  1. USB ケーブルを使用して、XMC4800 IoT Connectivity Kit をコンピュータに接続します。ボードには 2 つのマイクロUSBコネクタがあります。「X101」とラベル付けされたものを使用します。ボードのシルクスクリーン上で、デバッグがその横に表示されています。

  2. [Project] (プロジェクト) メニューから、[Rebuild Active Project] (アクティブなプロジェクトの再構築) を選択して、aws_demos を再構築し、設定変更が取得されたことを確認します。

  3. Project Explorer で を右クリックしaws_demosデバッグ名を選択し、DAVEC/C++ アプリケーションを選択します。

  4. GDB SEGGER J-Link デバッグをダブルクリックしてデバッグ確認を作成します。[Debug] (デバッグ) を選択します。

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

AWS IoT コンソールでは、ステップ 4~5 のMQTTクライアントに、デバイスによって送信されたMQTTメッセージが表示されます。シリアル接続を使用すると、UART出力に次のような内容が表示されます。

0 0 [Tmr Svc] Starting key provisioning... 1 1 [Tmr Svc] Write root certificate... 2 4 [Tmr Svc] Write device private key... 3 82 [Tmr Svc] Write device certificate... 4 86 [Tmr Svc] Key provisioning done... 5 291 [Tmr Svc] Wi-Fi module initialized. Connecting to AP... .6 8046 [Tmr Svc] Wi-Fi Connected to AP. Creating tasks which use network... 7 8058 [Tmr Svc] IP Address acquired [IP Address] 8 8058 [Tmr Svc] Creating MQTT Echo Task... 9 8059 [MQTTEcho] MQTT echo attempting to connect to [MQTT Broker]. ...10 23010 [MQTTEcho] MQTT echo connected. 11 23010 [MQTTEcho] MQTT echo test echoing task created. .12 26011 [MQTTEcho] MQTT Echo demo subscribed to iotdemo/# 13 29012 [MQTTEcho] Echo successfully published 'Hello World 0' .14 32096 [Echoing] Message returned with ACK: 'Hello World 0 ACK' .15 37013 [MQTTEcho] Echo successfully published 'Hello World 1' 16 40080 [Echoing] Message returned with ACK: 'Hello World 1 ACK' .17 45014 [MQTTEcho] Echo successfully published 'Hello World 2' .18 48091 [Echoing] Message returned with ACK: 'Hello World 2 ACK' .19 53015 [MQTTEcho] Echo successfully published 'Hello World 3' .20 56087 [Echoing] Message returned with ACK: 'Hello World 3 ACK' .21 61016 [MQTTEcho] Echo successfully published 'Hello World 4' 22 64083 [Echoing] Message returned with ACK: 'Hello World 4 ACK' .23 69017 [MQTTEcho] Echo successfully published 'Hello World 5' .24 72091 [Echoing] Message returned with ACK: 'Hello World 5 ACK' .25 77018 [MQTTEcho] Echo successfully published 'Hello World 6' 26 80085 [Echoing] Message returned with ACK: 'Hello World 6 ACK' .27 85019 [MQTTEcho] Echo successfully published 'Hello World 7' .28 88086 [Echoing] Message returned with ACK: 'Hello World 7 ACK' .29 93020 [MQTTEcho] Echo successfully published 'Hello World 8' .30 96088 [Echoing] Message returned with ACK: 'Hello World 8 ACK' .31 101021 [MQTTEcho] Echo successfully published 'Hello World 9' 32 104102 [Echoing] Message returned with ACK: 'Hello World 9 ACK' .33 109022 [MQTTEcho] Echo successfully published 'Hello World 10' .34 112047 [Echoing] Message returned with ACK: 'Hello World 10 ACK' .35 117023 [MQTTEcho] Echo successfully published 'Hello World 11' 36 120089 [Echoing] Message returned with ACK: 'Hello World 11 ACK' .37 122068 [MQTTEcho] MQTT echo demo finished. 38 122068 [MQTTEcho] ----Demo finished----

で無料RTOSデモを構築する CMake

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

注記

このセクションでは、ネイティブビルドシステムとして MingW を使用する Windows CMakeでの の使用について説明します。他のオペレーティングシステムおよびオプションCMakeで を使用する方法の詳細については、「」を参照してくださいFreeRTOS で CMake を使用する。(MinGW は、ネイティブ Microsoft Windows アプリケーション用の最小限の開発環境です。)

で無料RTOSデモを構築するには CMake
  1. GNU Arm Embedded Toolchain をセットアップします。

    1. Arm Embedded Toolchain ダウンロードページから Windows バージョンのツールチェーンをダウンロードします。

      注記

      「8-2018-q4-major」のバージョンの「objcopy」ユーティリティでバグが報告されているため、「8-2018-q4-major」以外のバージョンをダウンロードすることをお勧めします。

    2. ダウンロードしたツールチェーンインストーラーを開き、インストーラインストールウィザードの手順に従ってツールチェーンをインストールします。

      重要

      インストールウィザードの最後のページで、[Add path to environment variable] (パスを環境変数に追加) を選択してツールチェーンパスをシステムのパス環境変数に追加します。

  2. CMake と MingW をインストールします。

    手順については、CMake「前提条件」を参照してください。

  3. 生成されたビルドファイル (build-folder).

  4. ディレクトリを無料RTOSダウンロードディレクトリ (freertos) に変更し、次のコマンドを使用してビルドファイルを生成します。

    cmake -DVENDOR=infineon -DBOARD=xmc4800_iotkit -DCOMPILER=arm-gcc -S . -B build-folder -G "MinGW Makefiles" -DAFR_ENABLE_TESTS=0
  5. ディレクトリをビルドディレクトリ (build-folder) を使用し、次のコマンドを使用してバイナリを構築します。

    cmake --build . --parallel 8

    このコマンドにより、ビルドディレクトリにバイナリ出力 aws_demos.hex がビルドされます。

  6. でイメージをフラッシュして実行しますJLINK

    1. ビルドディレクトリ (build-folder) で、次のコマンドを使用してフラッシュスクリプトを作成します。

      echo loadfile aws_demos.hex > flash.jlink
      echo r >> flash.jlink
      echo g >> flash.jlink
      echo q >> flash.jlink
    2. JLNIK 実行可能ファイルを使用してイメージをフラッシュします。

      JLINK_PATH\JLink.exe -device XMC4800-2048 -if SWD -speed auto -CommanderScript flash.jlink

      ボードで確立したシリアル接続を介してアプリケーションログが表示されます。

トラブルシューティング

デバイスを AWS クラウドに接続するための AWS IoT と無料RTOSダウンロードをまだ設定していない場合は、必ず を設定してください。手順については、「最初のステップ」を参照してください。

無料使用開始に関する一般的なトラブルシューティング情報についてはRTOS、「」を参照してくださいトラブルシューティングの開始方法