• 締切済み

RS232C端子に信号を出力させたい

環境は VB9(2008) Express Edition,WindowsXP です。 RS-232C(2,3,4,5,6,8,20) 何れかのピンをプログラムでON-OFF出来るようにしたいのですが。 なお、Visual Basic 2008 は、無料でダウンロードでき、ライセンスも無料で取得できるようです。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.3

やりたい事がどのようにコーディングしたら出来る考えた事、実行した事、その結果が期待する結果とどのように違ったのかを具体的に質問しましょう VB2008なら System.IO.SerialPortクラスを使うほうが良いでしょう 時間待ちには System.Threading.Sleepを使えばよさそうですよ フォームにSerialPosrt、ピクチャーボックスとボタンを貼り付けます ONにしたときのイメージとOFFにしたときのイメージを準備します フォームのコードの先頭に Imports System.Threading を記述します ボタンのクリックイベントに   SerialPort1.DtrEnable = False   SerialPort1.Open   PictureBox1.Image = imgON   Application.DoEvents()   SerialPort1.Dtrenable = True   Thread.Sleep( nOnTime )   PictureBox1.Image = imgOFF   Application.DoEvents()   SerialPort1.Dtrenable = False   Thread.Sleep( 400 )   SerialPort1.Close()   SerialPort1.Dtrenable = False といった具合で良いと思います # 実際に信号波形は見ていませんので …

noname#62128
質問者

補足

デバッグして動く様になったのですが、信号は出たままです。何処が悪いのでしょうか。 確認ですが、 Thread.Sleep( 400 )は、Threading.Thread.Sleep(400)ですよね。 以下は、最終プログラムです。 Imports System.Threading Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click SerialPort1.DtrEnable = False SerialPort1.Open() PictureBox1.Image = WindowsApplication1.My.Resources.Resources.imgON Application.DoEvents() SerialPort1.DtrEnable = True Threading.Thread.Sleep(2000) PictureBox1.Image = WindowsApplication1.My.Resources.Resources.imgOFF Application.DoEvents() SerialPort1.DtrEnable = False Threading.Thread.Sleep(4000) SerialPort1.Close() SerialPort1.DtrEnable = False End Sub End Class

  • x415f484f
  • ベストアンサー率71% (57/80)
回答No.2

> Openというコマンドというかステートメントが存在しないようなんです。 VB 2005 や VB 2008 (.NET Framework version 2.0)以降であれば System.IO.Ports という名前空間があると思いますが? System.IO.Ports 名前空間 http://msdn2.microsoft.com/ja-jp/library/system.io.ports(VS.80).aspx SerialPort メンバ (System.IO.Ports) http://msdn2.microsoft.com/ja-jp/library/system.io.ports.serialport_members(VS.80).aspx 但し私のパソコンに物理的なシリアルポートがないので動作確認はしておりません。

  • gatyan
  • ベストアンサー率41% (160/385)
回答No.1

open "COM1:" 等で、COMポートを開いたり閉じたりすることで 4 RTS とか 20 DTR がON-OFFできるかも 未確認なのでテストしてみてください

noname#62128
質問者

補足

すみません。2008は初めてなんですが、そもそもOpenというコマンドというかステートメントが存在しないようなんです。

関連するQ&A