問題タブ [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.
delphi - Delphi 10.2 で TComPort を使用してカスタマー ディスプレイをクリアするにはどうすればよいですか?
TComPort
Winsoft の v6.0 を使用して、 OxhooCOM5
のカスタマー ディスプレイであるデバイスに接続しています (Prolific PL2303 USB-to-Serial Comm Port)。
ボタンを押すと、単純にテキストを表示してから、表示全体をクリアしたいと思います。すでに明確なコマンドを検索しましたが、そのようには機能しないようです。
今のところ、使用して表示するテキストを正常に送信できますが、表示をComport1.WriteString()
クリアしたり、テキストを表示したりすることはできません。
また、スペースの長い文字列を送信すると、表示が視覚的にクリアされますが、次に表示されるテキストはランダムな位置になります。(最後のテキストの長さ + 追加されたスペース)。
製造元によると、ESC/POS コマンドをサポートするはずですが、Delphi コードでどのコマンドをどのように使用すればよいかわかりません。
表示は 2 行 20 文字で構成されます。
表示をクリアして、最初の行からテキストを書き直すにはどうすればよいですか?
delphi - 最後の AT コマンド (Delphi - TComport) をキャンセルするには?
このコマンド「AT+CUSD=1,"*511#",15」を送信すると、答えは次のようになります。
'+CUSD: 1,"ポイント Noudjoum
1: Mes ポイント
2: Convertir en Units
3: Convertir en cadeaux physiques
4: ポイント ボーナス
5: カタログ
6: Conso
Tapez 1-6",15'
ここで、必要なオプションに応じて、整数 1、2、3、4、5、または 6 を再度送信する必要がありますが、この時点では、別の AT コマンド「AT+CUSD=1,"*113#」を送信できません。たとえば、15" の場合、オプションの番号を送信することが想定されているため、エラーが表示されます。
別の AT コマンドを送信できるように、それを中断またはキャンセルするにはどうすればよいですか?
serial-port - DelphiでRS232経由でデータカウントを受信するコードを作成するには?
Delphi 7 を使用して、RS232 経由でコンピュータと通信するための簡単なデバイスを作成したいと思います。その回路は単純で、220 オームの抵抗器、0.1uF コンデンサ、+5VDC 電源、RS232 コネクタ、および USB から RS232 へのアダプタを備えたボタンです。簡単な回路の出力は、コンピュータ側のピン 2 (Rx ピン) に接続されます。ボタンを押すたびに、カウンターが 1 ずつインクリメントされます。比較として、Arduino ではタスクを実行するために数行のコードしか必要ありません。
必要になる可能性のある別の情報: CPortLib と CiaComPort が Delphi 7 にインストールされています。どちらもテスト済みで、データを受信するために動作しています。ComPort (CPortLib の 1 つのモジュール) を使用して、RS232 の Pin2 (Rx) と Pin3 (Tx) をループバックして、自分のコンピューターにデータを送受信できます。受信するには、コマンドComPort1.ReadStr(Str, Count);を使用します。(データを送信するには、コマンドを使用します: ComPort1.WriteStr(Str); ) つまり、AddOn ComPort モジュールは正常に動作しています。