본문 바로가기
프로그래밍/아두이노

아두이노 C# 통신

by TcTT 2017. 3. 13.
반응형

아두이노 C# 시리얼 통신입니다.


이전에 졸작하면서 모듈로  만들었어야하는데.. 통으로만들어서..

아두이노는 다 후배들에게 주고왔으니.. 기억을더듬어가며 모듈화시킵니다.


C# 핵심 소스


 //시리얼 포트 생성

public SerialPort arduSerialPort = new SerialPort();


//아두이노 시리얼포트 초기화

            try

            {


                arduSerialPort.PortName = "COM3";    //아두이노가 연결된 시리얼 포트 번호 지정 여기는 각자 사용자에 맞는 포트로 설정

                arduSerialPort.BaudRate = 9600;       //시리얼 통신 속도 지정

                arduSerialPort.Open();                //포트 오픈


                //아두이노 연결 후 led 버튼 활성화

                button2.Enabled = true;

                button3.Enabled = true;


                timer1.Start();


            }

            catch (Exception err)

            {

                MessageBox.Show(err.ToString());

            }



        private void button2_Click(object sender, EventArgs e)

        {

            arduSerialPort.Write("1"); //연결된 시리얼포트로 "1"의 값을 전달  아두이노는 1을받으면 led를 켠다.

        }




아두이노 핵심 소스

#include <SoftwareSerial.h>


int LedPin = 9;  //led 컨트롤


void setup() {

  pinMode(LedPin, OUTPUT); //LED 아웃 이용

  Serial.begin(9600);

}


void loop() {

 if (Serial.available() > 0)

  {

    char usercmd = (char)Serial.read();

    Serial.print("User cmd : ");

    Serial.println(usercmd);

    

     switch (usercmd) {

      case '1' : //C#에서 넘어옴  불을켜라

        digitalWrite(LedPin,HIGH);

        break;


      case '0' : //C#에서 넘어옴  불을꺼

        digitalWrite(LedPin,LOW);

        break;        

        }    

  }



아두이노 시리얼통신.zip


일단 소스는 올려둡니다..

혹여나 프로젝트 참고하실때 안되는부분이있으면 댓글달아주세요..

주섬주섬 아두이노 구해서 오류 수정하겠습니다.


아두이노가 또 인기있으면 이것저것 올려드릴게요.


퍼가시면 꼭 출처를 남기세욯

반응형