616323 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

工作工房

工作工房

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
2006年09月28日
XML
カテゴリ:カテゴリ未分類

Visual Studio 2005 にはRS232Cの通信制御用ツールが追加された。FAの分野では高機能なデバイスはRS232Cで通信制御を行う事ができ、まだまだ増え続けている。通信制御用ツールはツール(serialPort)とクラスのSerialPortの2種類がある。どちらを使ってもよいがツール内の  serialPort  が簡単だ。1個のFormで使用するのは簡単であるが複数のFormで同一の serialPort を使うには一工夫必要です。serialPortをForm1とForm2で使用しどちらもserialPort1.PortName = "COM1";とする

using System.IO.Ports;  <---これが必要

            serialPort1.PortName = "COM1";            //ポート名
            serialPort1.BaudRate = 38400;             //ボーレート
            serialPort1.DataBits = 8;                 //データビット
            serialPort1.StopBits = StopBits.One;      //ストップビット
            serialPort1.Parity = Parity.None;         //パリティ
            serialPort1.PortName = "COM1";          //COMポート名(COM1 COM2 ..... COM15)

            //シリアルポートを使用する手順
            if (serialPort1.IsOpen == true)
            {
                serialPort1.Close();                //COMポートを閉じる
            }

            //*** エラー処理 ***
            try
            {
                serialPort1.Open();                 //ポートオープン
            }
            catch //(Exception ex)
            {
                MessageBox.Show("RS232Cポート1が接続されていません");
            }

        private void button2_Click(object sender, EventArgs e)
        {
            //*** serialPort1 を閉じる ***
            if (serialPort1.IsOpen == true)
            {
                serialPort1.Close();                //COMポートを閉じる
            }
            
            Form2 form = new Form2();
            form.ShowDialog();

            if (serialPort1.IsOpen == true)
            {
                serialPort1.Close();                //COMポートを閉じる
            }

            try
            {
                serialPort1.Open();                 //ポートオープン
            }
            catch //(Exception ex)
            {
                MessageBox.Show("RS232Cポート1が接続されていません");
            }
        }

 

//-------------------------------------------------------------------------------

//   Form2に書く     

        private void Form2_Load(object sender, EventArgs e)
        {
            serial_port_init();     //シリアルポート初期化

        }

        void serial_port_init()     //シリアルポート初期化
        {

            serialPort1.PortName = "COM1";            //COMポート名(COM1 COM2 ..... COM15)
            serialPort1.BaudRate = 38400;             //ボーレート
            serialPort1.DataBits = 8;                 //データビット
            serialPort1.StopBits = StopBits.One;      //ストップビット
            serialPort1.Parity = Parity.None;         //パリティ

            //シリアルポートを使用する手順
            if (serialPort1.IsOpen == true)
            {
                serialPort1.Close();                //COMポートを閉じる
            }

            try
            {
                serialPort1.Open();                 //ポートオープン
            }
            catch //(Exception ex)
            {
                MessageBox.Show("RS232Cポート1が接続されていません");
            }

        }

          private void button2_Click(object sender, EventArgs e)
        {
            if (serialPort1.IsOpen == true)
            {
                serialPort1.Close();                //COMポートを閉じる
            }
            Close();                                //Formを閉じる
        }

Form1画面.jpgForm2画面.jpg    






お気に入りの記事を「いいね!」で応援しよう

最終更新日  2006年09月29日 00時46分03秒
コメント(2) | コメントを書く



© Rakuten Group, Inc.