競争の激しい Bluetooth低エネルギー チップ、 STマイクロエレクトロニクス 独自の開発ツールと、アプリケーションが組み込まれていないマイクロコントローラを備えたスタンドアロン ソリューションにより、競合他社との差別化を図っています。外部マイクロコントローラが必要であり、SPIバスを介してBLUENRG-MSと通信します。
関連商品を見る
BlueNRG Current Consumptionは優れたツールで、これを使用すると、どのパラメータが電力消費に最も影響を与えるかを視覚化できます。たとえば、100ミリ秒ごとに10バイトの長さのデータをアドバタイズする場合、または200ミリ秒ごとに20バイトのデータをアドバタイズする場合、同じデータ レートで電流消費量の差は約40% になります。
しかし、データがほとんど変更されず、10秒で十分な場合は、電流消費は98% 減少します。
このアプリケーションを使用すると、スキャン、アドバタイズ、スレーブまたはマスター モードでの接続、アドバタイズ用のチャネル数、水晶の精度、Special Interest Group (SIG) によって指定されたすべてのタイミングなど、すべての構成をシミュレートできます。したがって、 マイクロコントローラを最適化するためのプログラミングの詳細を入力する前に、アプリケーション要件を適切に指定し、各仕様に対する電流消費の結果を理解することが重要です。このツールは、最終的に設計された製品が何であっても、トレードオフを決定するのに役立ちます。
組み込みプログラミング ファームウェアを作成する場合、シリコンの開発とテストは面倒な作業になる可能性があるため、 STMicroelectronics はPythonを使用するオプションを提供しています。BlueNRG GUIと呼ばれるソフトウェアは、P/N STEVAL-IDB006V1Mとして注文できるUSBドングルと連携して動作します。
タブ スクリプトを使用すると、Pythonスクリプトを起動できます。
特定のPythonコマンドはすべて、ユーザー マニュアルUM2058で説明されています。
BlueNRG GUIソフトウェアをインストールすると、Pythonスクリプトの例が多数提供されます。以下に示すスクリプトについて説明します。
プログラムの始まりはセットアップです。ハードウェアがリセットされ、その後にモード構成が行われます。4つのモードが利用可能です。スレーブとして必要な接続は1つだけなので、モード2を選択する必要があります。パブリック アドレスは一般的な広告と同様に定義する必要があり、ペイロードには常に6バイトの広告デバイス アドレスが含まれます。アドレスはパラメータとして入力できますが、これはオプションです。パラメータがない場合、Pythonスクリプトは自動的にアドレスを決定します。下部のウィンドウを使用すると、生のパケットと各バイトの意味にアクセスできます。ダブルクリックすると、生のパケットを表示するウィンドウがポップアップ表示されます。この場合、アドレスは0x0280E1008BC5です。
送信電力レベルは、高電力有効化、PAレベル、送信電力間の対応表に示されているように、-2 dBmに等しくなります。
GATTとGAPが初期化され、GAPは周辺機器として使用されます。次に、サービス ハンドルを返すプライマリ サービスとしてサービスを設定し、サービス内に特性を追加します。各関数のパラメータは一目瞭然です。すべての詳細は、以下の追加特性に示すように、BlueNRG GUIまたはユーザー マニュアルUM1865から入手できます。
オプションのスキャン応答があり、広告検出可能なパラメータはローカル名「test」で書き込まれます。
スクリプトの実行中、スニファーを使用してBLEデバイスから送信されたパケットを監視できます。
AdvDataセクションでは、送信されたデータがコードと一致するかどうかが検証されます。ペイロードには次の意味があります。
- 02 01 06: 2バイト; フラグ01クラシックBluetoothはサポートされておらず、BLEの一般的な検出可能モード
- 05 08 74 65 73 74: 5バイト; 短縮名は「test」
- 05 12 06 00 08 00 : 5バイト。スレーブ接続の内部範囲のフラグ12、最小値と最大値はACI_GAP_SET-DISCOVERABLE関数を呼び出した際のパラメータに等しい
- 02 0A FE: フラグ0A(送信電力)の2バイト、FEは-2dbmを意味する
これらがコードに入力された値であることを確認します。
最後に接続を待機し、無限ループで乱数が生成され、特性値が更新され、システムが1秒間スリープします。スクリプトをBlue NRG GUIにアップロードするだけで、「スクリプトを実行」ボタンを押すことができます。
Pythonスクリプトが要件を満たしたら、組み込みプログラムを記述してSTエコシステムを活用する準備が整います。実際、BlueNRGには、 STM32ボードに直接接続できるArduinoシールドも付属しています。 STMicroelectronics は、大規模なSTM32ファミリにより、Cortex Mマイクロコントローラのリーダーとなっています。
Pythonスクリプト、USBドングル、マイクロコントローラ ボードに簡単に接続できるArduinoボード、および電流消費シミュレーションは、 STMicroelectronics の主要なツールであり、これらを使用すると、 Bluetooth Low Energy アプリケーションを迅速かつ効率的に開発できます。