>開発者向けFAQ|小型無線多機能センサ(TSND121/151)開発者向けFAQ|小型無線多機能センサ(TSND121/151)小型無線多機能センサ(TSND121/151)のページへ戻る開発者向けFAQTSND121/TSND151用プログラムの開発はどのようにすればよいですか?プログラムの開発環境は何がよいですか?シリアルポートの通信設定について教えて下さい。...」のような文字を送信しても何も反応しません。コマンドを送信出来たが、受信データがおかしい。壊れたデータをたくさん受信します。受信したパラメータがおかしな値になります。重い処理をするとデータを取りこぼします。サンプルプログラムはありませんか?TSND121/TSND151用プログラムの開発はどのようにすればよいですか?TSND121/TSND151を操作する際には、シリアル通信でコマンドの送受信を行います。自由にプログラムの開発を行うことが可能です。開発者向けFAQの目次へ戻るプログラムの開発環境は何がよいですか?BluetoothもしくはUSBシリアルでTSND121/TSND151に接続可能であり、また、シリアル通信が可能な環境であれば問題ありません。X、Linux等の環境で実績があります。開発言語にも特に制限はなく、C、VisualBasic、C#、C++、JAVA、Objective-C、Python、Perl等様々な言語が利用可能です。開発者向けFAQの目次へ戻るシリアルポートの通信設定について教えて下さい。シリアルポートの設定は、以下を推奨しています。...」のような文字を送信しても何も反応しません。データの送受信はバイナリデータで行います。16進数の"9A"をバイナリデータとして送信することを意味しています。開発者向けFAQの目次へ戻るコマンドを送信出来たが、受信データがおかしい。壊れたデータをたくさん受信します。コマンドに対する反応はイベント、もしくは、レスポンスという一塊のデータ列としてセンサから送られて来ます。各データ列は、ヘッダからBCCまでのデータで1つのデータ単位になっています。受信のタイミングによっては、この1つのデータ単位が一括で受信出来ない場合があります。.Netの場合、シリアルデータを受信した際に"SerialPort.DataReceived"イベントが届きます。複数に分割された状態で受信する場合があります。この場合、バッファに格納されているデータを全て取り出しても、正しいレスポンスを表すデータ列になりません。複数回呼ばれる"SerialPort.DataReceived"で受信したバッファの内容を連結した際に、初めて1つのレスポンスデータになります。その一方で、複数のレスポンスが送信された場合、これらが連結した状態で一度に受信する場合もあります。このようなことを考慮し、データ受信用のFIFOのキューを作成し、受信したデータは一度このキューに格納するようにして下さい。キューの中から適時有効なデータ列を取り出して処理(*)するようにして下さい。Codeからパラメータ長を求め、当該バイト長のBCCを計算し、合致したら有効なデータ列として処理してキューから削除。開発者向けFAQの目次へ戻る受信したパラメータがおかしな値になります。複数バイトのデータは、基本的にリトルエンデアンのデータとして送受信します。負の数は二の補数として表現しています。3byteのデータをエンコードする際には、特にご注意下さい。開発者向けFAQの目次へ戻る重い処理をするとデータを取りこぼします。プログラムをマルチスレッド化してみて下さい。開発者向けFAQの目次へ戻るサンプルプログラムはありませんか?以下のサンプルプログラムを用意しております。適宜ダウンロードして下さい。