問題タブ [tcomport]

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.

0 投票する
1 に答える
1761 参照

delphi - Delphi 10.3 を使用したコンソール アプリケーションの Tcomport

シンプルな Delphi 10.3 コンソール アプリケーションで TComPort (4.11f) を使用していますが、以下を参照してください。しかし、データを取得できません。

VCL アプリケーションで同じコードを使用すると問題なく動作します。何かご意見は?

私の推測では、オブジェクトComDataPacket1ComPort1オブジェクトを正しく接続していません。しかし、私はそれを行う別の方法を見つけることができませんでした.

0 投票する
1 に答える
137 参照

delphi - 16 進数データ (文字列変数に格納されている) を整数値に変換する方法

編集(要約)

Char/ Stringdata をByte一度に 4 バイトずつ解釈しようとしました。これは、ストリーミングされたデータを他のデータ型としてではなく、文字列として解釈するTComportことしかできなかったためです。メソッドとイベント ハンドラを TComport で動作させる方法TDatapacketをまだ知りません。ReadOnRxBuf

問題の概要

Delphi コードを使用して、質量分析計 (MS) からデータを取得しようとしています。機器はシリアル ケーブルで接続され、RS232 プロトコルに従います。コマンドを送信し、MS からのテキストベースの出力を問題なく処理できますが、データ バッファの解釈に問題があります。

バックグラウンド

この機器のユーザーマニュアルから:

「イオン電流値を除いて、RGA の出力は、ラインフィード + キャリッジ リターン ターミネータで終了する ASCII 文字列です。イオン信号は、10^-16 アンペア単位の整数として表され、16 進形式で直接送信されます ( 4 バイト整数、2 の補数形式、最下位バイトが最初) を使用して、最大のデータ スループットを実現します。

(1) 16 進データを文字列変数に正しく格納できるかどうかはわかりません。また、 (2) Delphiで2の補数を実装する方法と(3)最下位バイトを最初に実装する方法もわかりません。