問題タブ [mbed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - カスタム BLE 特性 C++ に名前と ID 属性を追加する方法
このmbed ワークスルーを使用して、C++ でカスタム GATT サービスを作成しています。ただし、このコードは UUID を持つ特性のみを作成します。
ただし、mbed ベースのデバイスに接続するスマートフォンの C# コードでは、標準プロファイルの標準特性にはある属性Characteristic.ID
と属性にアクセスしようとしていますが、私のものにはありません。Characteristic.Name
この情報を特性に追加するにはどうすればよいですか?
私のC#コードには、次のものがあります。
c++ - カスタム C++ BLE GATT サービスへの Characteristic User Description の追加
mbed APIを使用して、いくつかの Characteristic User Descriptions をカスタム BLE GATT サービスに追加しようとしています。私のこれまでの仕事は、このコード構造に基づいていました。ただし、これらの特性に名前を付けたいと思います。これを行う方法について見つけることができる情報はあまりありません。ただし、以下はフォーラムからのコメントで、その方法を示しています。
これまでのところ、この構造が私の特性を設定しています。
これらの 3 つの特性に説明を追加するにはどうすればよいですか?
編集
私は今持っています:
Error: No instance of constructor "WriteOnlyArrayGattCharacteristic<T, NUM_ELEMENTS>::WriteOnlyArrayGattCharacteristic [with T=std::uint8_t, NUM_ELEMENTS=10U]" matches the argument list in "main.cpp"
「サイズ」行にスローされます。
c - cでpc.scanfから10進数を読み取る方法は?
私は MatLab と C の間でインターフェイスをとっています。Matlab の記述で整数を C に送信できます。
(mbed コンピューターが接続されているシリアル ポートは mbed として定義されており、C プログラムはそこから動作しています)。
次に、次の行でこれを C で受け取ります。
次に、プログラムで inputFloat を使用してみます。これは整数に対しては完全にうまく機能しますが、0.5 や 1.5 などの非整数に対して同じことを試してみるとうまくいきません。
MatLab から値を取得しようとする別の方法はありますか?
現在確認できる唯一の回避策は、2 つの整数を送信してコードを実装し、C でそれらを 1 で割って処理し、すべての数値を 2 つの整数として送信することです。
c++ - C++ 関数からカスタム型配列全体を返す
Bluetooth配列に情報を入力するために、C++アプリケーションに取り組んでいます。これは mbed プラットフォームの BLE_API に基づいていますが、関連する必要はないと思います。関数にリファクタリングしようとしている次のコードがあります。
私はこれまでのところこれを持っています:
ただし、予想通り、エラーが発生します。
エラー: "GattAttribute *[1]" から "GattAttribute" に変換するための適切なコンストラクターが存在しません
これがスローされている理由はわかりますが、「PercentageFill」コンストラクターで必要な形式であるため、配列全体を返す方法がわかりません。
ありがとう。
アップデート:
完全なコンテキストを提供するために、ここに私が設定している他のCharacteristcisがあります(それぞれ異なる名前が付いています):
c++ - C コールバックから C++ オブジェクトにアクセスする
mbed フレームワークを使用して、組み込みプラットフォーム (ARM CORTEX4) 用の C++ アプリケーションを作成しています。新しい Paho Embedded C++/C クライアントライブラリを使用しています。これがライブラリのコードです。サブスクライブのコールバックを除いて、すべてが期待どおりに機能します。
これは subscribe メソッドの定義です:
messageHandler を次のように定義します。
および MessageData として:
およびメッセージとして:
私のソフトウェアは C++ で書かれているため、コンテキスト変数をコールバックに渡す方法が見つかりません。そのため、現在、コールバック内からオブジェクトにアクセスする方法がありません。
別の MQTT クライアント ( Unix / Mac / Windows 用の Paho MQTT C クライアント) の API で、たとえば void* を受け入れてコンテキストをコールバックに渡すことを見てきました。
何か不足していますか、またはコールバックの外部にあるオブジェクトにアクセスするための最良の戦略は何ですか?
私が考えることができる唯一のことは、クラス内のいくつかの静的変数です。これも私には少し「醜い」ようです。
どんなヒントでも大歓迎です!