問題タブ [serial-port]
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.
compact-framework - CompactFrameworkのシリアルポートとバランス
したがって、シリアルポートを開き、シリアルポートを介して天びんからデータを正常に送信するには、serialPortオブジェクトの設定が天びんの実際の設定と一致していることを確認する必要があります。
さて、問題は、設定が異なるために接続が確立されていないことをどのように検出するかです。接続が確立されたことを示すために、serialPort.Openによって例外がスローされることはありません。はい、設定は有効ですが、デバイス(バランス)設定と一致しない場合。なぜ天びんからの重量が捕らえられないのか、私は暗闇の中にいます。
ここに何か入力はありますか?
embedded - エプソンのレシートプリンターでArduinoから印刷する
Arduino と Epson TM-T88II レシート/ POSプリンターを使用してマイクロプリンターを構築しようとしています。プリンターはEpson Esc/POSシステムを使用していますが、Arduino からはまったく何もできません。私は次のようなことをしています:
プリンターがまったく反応しません。プリンタの電源が入り、セルフ テストが問題なく印刷されます。これはシリアル ( RS-232 ) プリンターで、MAX233チップを介して Arduino に接続しています。チップを介して接続を確認して再確認しましたが、同様のセットアップが機能している友人に基づいていると思います。TM-T88 プリンタにはヌルモデム シリアル ケーブルが必要だとどこかで読んだので、アダプタを購入しましたが、違いはないようです。
電化製品初心者ですので、完全に戸惑っています。何かを印刷したいだけなので、楽しい部分であるプログラミングに取り掛かることができます:)。テスト/試行することについて何か考えはありますか? 配線などについて詳しく説明できますが、これが長くなりすぎないようにしたいだけです。
compact-framework - Compact フレームワークのシリアル ポート - RTSEnable および DtrEnable
どのようRTSEnable
にDtrEnable
使用されていますか?アプリと通信できる天びんと、設定が一致していてもできない天びんがあります。(ボーレート、パリティ、データビット、ストップビット、ハンドシェイク)
シリアルポートの設定は構成ファイルに保存され、必要に応じて、可能な設定のさまざまな組み合わせをサポートすることを目的としています。通常、私たちのデバイスは を持つようにプログラムされていますがhandshake = NONE
、奇妙なデバイスが を持つことができない場合はhandshake=NONE
、次のような条件を挿入する必要があります。
というか、他のハンドシェイク ( 以外) は、に設定NONE
せずに機能しますか?RTSEnable
DtrEnable
true
java - Vista および Freebsd 用の Javax.comm サードパーティ ソリューションはありますか?
Windows Vista で Java を使用してシリアル ポートにアクセスする必要がありますが、FreebSD でそれを行うためのサード パーティ製のソリューションはありますか? 私はSunがその解決策を持っていないことを理解しています
delphi - Delphi でのシステム Com ポートのリストの列挙
目的: Delphi のシステムで利用可能な COM ポートを一覧表示できるようにしたいと考えています。
宿題:レジストリを使用したシステムの LPT ポートの列挙に関するこのSO スレッド
を読みました。また、COM ポートがレジストリにリストされていることもわかりましたが、同じスレッドHKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
で未回答のジェスチャーが見つかりました。これは、異なるマシンや異なるバージョンの Windows では信頼できない可能性があります。
QueryDosDevice() の使用について言及している記事も見つけましたが、このサンプル コードを試してみると、COM ポートがまったくリストされていないように見えました。
質問: Windows マシンの COM ポートを一覧表示する最も信頼できる方法 (Windows のバージョンが不明な場合) は何ですか?
c# - 56k モデムからダイヤルトーンを作成する
よし、みんなウェイバックマシンに乗れ。コンピュータの 56k モデムに電話をダイヤルする必要があります。モデムを「オン」にし、アクティブなダイヤルトーンを備えたコンピュータが必要です。理由は次のとおりです。ポンプの故障時に私に電話するサンプポンプアラームがあります。固定電話でのみ機能します。お金を節約するために固定電話の料金を支払うのをやめて、自分の携帯電話だけを持ちたいです。私の考えは、私の PC の 56k v90 モデムの油溜めアラームからのアウトバウンド コールを傍受することです。その後、テキスト メッセージ、メールなどを無料で送信できます。
始める方法を知っている人はいますか?PC から電話をかける方法はたくさんありますが、PC にダイヤルする電話 (デバイス) が必要です。ダイヤルトーンが聞こえない限り、サンプアラームはダイヤルされないと思います。
私は C# または vb6 プログラムを好みますが、何でも喜んで使用します。私はシリアル通信デバイスを扱った経験があるので、正しい方向に向ける必要があります。
ありがとう!!!
php - Windows での PHP によるシリアル通信
Windows で RS232 シリアル COM ポートと通信する方法を探しています。ネット上で 2 つのソリューションを見つけました。1 つは完全に無料ではない (機能に意図的な遅延を導入する) もので、もう 1 つは Windows での機能が制限されているものです。後者は、Windows の COM ポートへの書き込みのみが可能で、読み取りはできません。
最初のソリューションのコードは.dllにコンパイルされているため見ることができません(意味があります。そうしないと、遅延を編集して購入することはできません...)、2番目のソリューションは fopen() のみを使用しているようですストリームに対して行うのと同じように、ポートを開き、後で fwrite() を使用して書き込みます。しかし、明らかにそれを恐れても何も返されません。
最初のソリューションと同じように可能であることはわかっていますが、Apache で php5module の代わりに php-cgi モジュールを使用する必要があります。
何か案は?
.net - System.IO.Ports.SerialPort-IOCTL_SERIAL_SET_WAIT_MASKを構成できますか?
私はSystem.IO.Ports.SerialPorts
、古い外部モデムから発信者の表示データを収集する小さなWindowsフォームアプリケーションを作成することにより、.Net(3.5)がクラスを介してシリアルポートとどのように相互作用するかについて少し学ぼうとしています。
モデムが発信者表示をサポートしていることをテストしました。Puttyまたはハイパーターミナルを使用して(ここAT#CID=1
で見つけたコマンドを使用して)発信者の表示データを収集するようにモデムを構成でき、電話が鳴るとデータが表示されます。ターミナルウィンドウでは、次のようになります。
私のC#アプリケーションはモデムを正常に構成しているように見えRING
、電話が鳴るとメッセージを表示します。ただし、発信者IDデータは表示されません。
これがなぜであるかを理解するために、SysinternalsPortmonを使用してさまざまなクライアントが実行したアクションを比較しました。
主な違いは接続構成にあります。私のC#アプリケーションには、PuttyとHyperterminalにはない次の行が含まれています。
私が理解しているように、これIOCTL_SERIAL_SET_WAIT_MASK
はフィルタリングするメッセージタイプの包括的なリストです。
したがって、3つの質問:
発信者ID情報がによって抑制されている可能性はありIOCTL_SERIAL_SET_WAIT_MASK
ますか?
その場合、発信者ID情報を表示するように設定するにはどうすればよいですか?クラスのプロパティからはアクセスできないようです。
構成できない場合、これを回避して、シリアルポートを制御する下位レベルのシステム関数に独自のラッパーを作成する唯一のオプションはありますか?
シリアルポート通信についての私の理解は非常に基本的であるため、診断にはかなりの時間がかかると思います。どんな指導もありがたく受けました。
python - ファイルアクセスのためのWeb環境での権限昇格
シリアル デバイスにアクセスできるように、Web 環境で持っている権限を昇格させたい状況があります。
特定のケースは、 で起動するモデムを構成するための Web インターフェイスがある場合です/dev/ttyUSB[0-9]
。
エンド ユーザーによって 0 個以上のモデムが接続されます。/sys/devices
ATコマンドを使用してモデムを読み取って通信することにより、USBワイヤレスモデムを識別できるソフトウェアを作成しています。
デバイスを開いて、次のようなことができるようにしたいと思います。
問題は、それpyserial
がこれを行うことです: self.fd = os.open(self.portstr, os.O_RDWR|os.O_NOCTTY|os.O_NONBLOCK)
portstr が であるシリアルポートを開きますが、権限のないユーザー/dev/ttyUSB0
としてそれを行います。nobody
このシステムのシリアル ポートは root:uucp が所有しており、0660 (つまりrw-rw----
) として設定されています。
nobody
開発者でファイルを開くための権限をできるだけ少なくする必要があるユーザーにとって、最善の方法は何ですか?
私が検討するアイデア:
- を使用してサブプロセスで物事を行う
sudo
。 - 内のファイルのパーミッションを変更します
/dev/
(udev を使用してこれを適切に行う方法についての説明を歓迎します!) - 考慮していない別の API またはソフトウェアの使用。