• 締切済み

RS-232の ボーレイト変更ができません

WindowsXP上で Visual Basic ver.6にて RS232による通信プログラムを 作っておりますが 232C制御用の OCXとして  ・シンプル通信(Rs-232c)Ver1.4 r1 (青山技術) ・HKSerial.OCX(VB6用) 上記の両方試してみますが、フォームオープン時に 通信パラメーターを 38400bps 偶数パリティにセットしますが 全く反映されません。 標準の232ポートも 追加したUSBでの232ポートも不可、 デバイスマネージャーでの通信設定しても なおも不可 ただし、一旦他の通信ソフト(ハイパーターミナル)で設定すると それ以降は ちゃんと指定速度のまま使用できます。 (VBの設定は 効かないけど  前ソフトの設定が保持) これは OCXやVBの問題では 無い気がしますが どなたか 解決方法を ご存じの方 いらっしゃいませんでしょうか どうぞ 御指南願います。

みんなの回答

  • kiki_s
  • ベストアンサー率59% (147/248)
回答No.2

フォームオープン時との事ですが、Form_Loadではなく、 Show メソッドを使っているのでしょうか? サンプルコードではプロパティで設定されていますが、 Form_LoadでもShowでも変更は可能だと思います。 通信する相手が手元に無いので通信まで確認出来ませんが、 各プロパティの設定値はコードが実行された時点で変わる様です。 コードの書き方の問題じゃないかと思います。 本当に通信パラメータが変わっているか、 参照されると一目瞭然でしょう。 サンプルコードにForm_Loadなどを追加して、 A = Rs1.Bps B = Rs1.Parity 'サンプルコードそのままなら 'Aに9600 Bに0が入る 'ボーレート、パリティ変更 Rs1.Bps = 38400 Rs1.Parity = 2 A = Rs1.Bps B = Rs1.Parity '変更後なので 'Aに38400 Bに2が入る という風に確認出来るかと。 Showでも同じです。 サンプルコードにはOption Explicitステートメントがありますので、 適当な変数を使う場合コメント化しておくのが簡単でしょう。 Showメソッドでフォームを表示する時に、 オブジェクトの指定は合っていますか?

  • stiffels
  • ベストアンサー率34% (25/72)
回答No.1

昔RS232C使ってたけどそういう事は起きなかったなぁ。 で、実機が無いのでなんとも言えないのですが、 ボーレートとbpsを混同してらっしゃってませんか? もしそうであれば、ボーレート値=bps値/2(かな?) で設定してみてはいかがでしょうか?

maruZ80
質問者

補足

ご回答ありがとうございます ボーレイトは 私の勘違いですね モデムなどでの 変調速度でしたね 失礼しました でも今事案では ボーレイト値=bps値となります OCXの 設定プロパティも 38400を 直接設定間違いはないのです ちなみに 複数のPCでも 同じ結果となります

関連するQ&A

  • VB6のRS232C通信で75bpsは可能ですか?

    WinXP VB6 にて開発をしています。 RS232Cで通信する必要があり、相手側のボーレートが75bpsとのことです。 しかし標準COMポートでは、最低は110bpsしかサポートされておりません。 デバイスマネージャのCOMポートを確認したところ、75bpsにて設定が出来ますので、 WinXP自体は対応されていると思います。 この状況でどうすれば通信が可能でしょうか? たとえば。 このソフトをインストールしたらVBでCOM通信ツールが使える? DLLを作ればいい?? API関数がある?? もしくはこの質問サイトにはプログラミングの猛者がいる。そっちで聞いてみれば? というようなサイト、ご存知でしたら教えて下さい。

  • RS232 通信方法

    パソコン(以下 PC_a) ⇔RS232c⇔ パソコン(以下 PC_b) port:comm1 port:comm3 ハイパーターミナル           VB で通信をしたいと考えております PC_a と PC_b のポート番号に関してはデバイスマネージャにて確認 致しました  またPC_aで用いておりますハイパーターミナルの設定は  (1)ビット/秒  9600  (2)データビット  8 (3)パリティ   なし  (4)ストップビット 1  (5)フロー制御  ハードウェア にしております  次にPC_bでございますが ActiveComm(ツール)を用いて [RS232通信方法(2)(参照)]を実行しておりますが、  送信、受信共に出来ません。どうしでしょうか? 教えてください。よろしくお願い申し上げます

  • PC9801のRS232Cについて教えてください。

    古いパソコンの事で申し訳ありませんが、PC9801シリーズのRS232Cの設定の事で教えていただきたいと思っています。 RS232Cに接続するオプションの設定で、データ:8bit、パリティ指定:偶数 等の設定が必要なのですが、古いPC98やepsonでは設定があるのですが、PC9801シリーズの最後のほうの機種では”HELP”を押しディップスイッチの設定を出しても、RS232Cの設定がありません。また、Win95が入っているのですが、この事もなにか関係があるのでしょうか。 申し訳ありませんが、知っている方がいらっしゃいましたらご回答お願い致します。

  • VB EXPRESSで RS-232C扱えますか

    趣味でPICを使って色々小物を作って楽しんでいます。 パソコンとPICをつないでいろいろやりたいんですが、いまのところ RS-232C経由でハイパーターミナルで送受信するだけでいまいちです。 そこで質問ですがVB EXPRESSで作ったプログラムで RS-232C通信経由でPICと送受信できるんでしょうか? 尚、VB EXPRESSはつい最近はじめたばっかりで入門段階です。

  • RS232C通信ポート(COM1)が開かない

    Windows2000をシステムとする、旧型 IBM Think Padを使って通信ポート(9ピン)に、RS232C クロスケーブルで 富士電機プロコン(シーケンサー)と接続し、ONLINEにしたいのですが、<通信ポートをオープンできません>というメッセージが表示され、接続されません。 それで、Windowsのデバイスマネイジャーで、パソコン側の通信ポート(COM1)のプロバティをみると、<このデバイスは正常に作動しています。>とあります。 富士電機のサポートセンターに状況を問い合わせた所、パソコン本体側にエラーと思われるとの回答でした。 復旧の仕方がわかりません。 どなたさまかご教示くだされたく、お願い申しあげます。 使用状態 パソコンの使用状況、ウィルスチェッカー:ESET Smart Security 4 インストール。インターネットは、ドコモFomaの データ通信をUSBに接続してアクセス。 RS232C通信ポートは、富士プロコンのみで使用しています。 その他設定  1.アプリケーションソフトの<通信ポート設定>     PCとのポート(P): COM 1    ポートの設定(M): ビット/秒(B) 19200   データビット(D): 8     パリティ(P): なし               ストップビット(S): 1    フロー制御(F): なし    2.ローダアダプタのディップSW設定 ⇒ 1,2,3,4,5,6 OFF 7,8 ON 即ち ☆パソコンローダモード     ☆データビット: 8   ☆パリティビット有無: 無           ☆パリティビット奇偶: 奇数  ☆ボーレート: 19200    

  • XPでVBを使いRS232Cから5bpsでデータを出力する方法を教えて下さい。

    VBの初心者です。 VBを使いRS2322Cから5bpsでデータを出力したいと思っています。 98MEにてAPIのWriteFile()を使い成功したのですが、XPへ移行したとたんNGとなってしまいました。 MSComm1.Outputを使おうかとも思ったのですが最低ボーレイト110bpsまでで使えません。 何方かXPでRS2322Cから5bpsでデータを出力する方法をご存知の方がおられれば教えて下さい。

  • RS232C通信ポート(COM1)が開かない

    カテゴリー <その他>でアップした質問を <Windows2000、NT>のカテゴリーに 再アップさせていただきます。 Windows2000をシステムとする、旧型 IBM Think Padを使って通信ポート(9ピン)に、RS232C クロスケーブルで、 富士電機プロコン(シーケンサー)と接続し、ONLINEにしたいのですが、<通信ポートをオープンできません>というメッセージが表示され、接続されません。 それで、Windowsのデバイスマネイジャーで、パソコン側の通信ポート(COM1)のプロバティをみると、<このデバイスは正常に作動しています。>とあります。 富士電機のサポートセンターに状況を問い合わせた所、パソコン本体側にエラーと思われるとの回答でした。 通信ポートのパラメータが変わったのか、それとも別の理由なのか、復旧の仕方がわかりません。 どなたさまかご教示くだされたく、お願い申しあげます。 <ThikPadパソコン使用状態> システム : Windows 2000 Service Pack4 ウィルスチェッカー:ESET Smart Security 4 インストール。 インターネットはドコモFomaのデータ通信アダプタを、USBに接続してアクセス。 RS232C通信ポートは、富士プロコンのみで使用しています。 <プロコン PLC 通信設定>  1.アプリケーションソフトの<通信ポート設定>       PCとのポート(P): COM 1     ポートの設定(M): ビット/秒(B) 19200  データビット(D): 8    パリティ(P): なし  ストップビット(S): 1   フロー制御(F): なし    2.ローダアダプタのディップSW設定 ⇒ 1,2,3,4,5,6 OFF 7,8 ON      即ち ☆パソコンローダモード     ☆データビット: 8   ☆パリティビット有無: 無       ☆パリティビット奇偶: 奇数  ☆ボーレート: 19200 <ケーブル>   パソコン~ローダアダプタ : 9ピン、25ピン RS232Cクロスケーブル、                   富士からは市販クロスケーブル使用のこととされ、通信データの接続                   ピン番号のみ公開。    ローダアダプタ~PLC  : 富士電機提供 専用ケーブル <PLCアプリ 使い勝手>   2ヶ月前までは、今回不具合のパソコン、RS232Cケーブル接続で、問題なくPLCとオンラインにな  っていた。

  • FANUC LADDER ? の通信

    先日FANUC LADDER ? のソフトを購入してPMCのデータをバックアップ、編集するためにCNCのRS232Cポートに接続したのですが、ソフト選択欄にあるツール→通信→接続を選択してもCNC(PMC)と通信できずに『COM1に接続しています→切断されました』となってしまいます。 設定等調べましたが行き詰まってしまい質問させていただきました。 条件ですが パソコン側 通信設定 ボーレート:19200 パリティ:NONE ストップビット:2 CNC側 FANUC 18iM-C 通信設定 ボーレート:9600 パリティ:NONE ストップビット:2 PMCはRB5を使用しています キープリレーK17.1→1 他のソフトでプログラムやパラメータの通信は問題なく、バックアップも取れたのでRS232Cの設定は問題ないとは思うのですが、よいアドバイスがあればよろしくお願いします。

  • VC++でRS232C(COMポート通信)

    VC++でRS232C(COMポート)通信をするソフトを作成していますが、COMポートが開けず通信ができません。ポートが開けない理由を追跡する方法はありますか?

  • RS232C通信ポート(COM1)の通信速度の設定

    通信ポート(COM1)の通信速度の設定ですが、75BPS~128000BPSまでしか設定ができません。 OSの関係かもしれませんが、今まで使用していたパソコンは、921600BPSまで設定できました。 高速での通信を実現したいと考えています。ハード的には出力すると思いますので、 設定方法があれば教えてください。

専門家に質問してみよう