본문 바로가기

개발이야기

아두이노 기초 - 입출력 포트 설정 및 입출력 포트 제어

아두이노의 기초 1 - 입출력 포트 설정 및 입출력 포트 제어

   

void setup() { 

 

   // 정의 - meaga2560의 41번 Pin을 Out1 으로 정의 
   #define Out1 41 
   #define Out2 8   
   #define Out3 13 
   #define Out4 14 
   #define Input1 36
   #define Input2 39
   #define Input3 38

 

  // Input , Output 설정   (out1~3 을 OUTPUT으로 설정 , Input1 ~ 3을 INPUT으로 설정)

   pinMode(Out1 , OUTPUT);
   pinMode(Out2 , OUTPUT);
   pinMode(Out3 , OUTPUT);
   pinMode(Out4 , OUTPUT);
   pinMode(Input1 , INPUT);
   pinMode(Input2 , INPUT);
   pinMode(Input3 , INPUT);

 


}


void loop() {

// Input1 이 "1" 일때 Out1 이 "1" 로 출력 // Buffer

if(digitalRead(Input1))       // if(digitalRead(Input1) == 1)  로 사용해도 됨

{

digitalWrite(Out1 , HIGH);

}

else

{

digitalWrite(Out1 , LOW);

}

// Input1 이 "1" 일때 Out2 이 "0" 로 출력 // Not Gate

if(digitalRead(Input2))      // if(digitalRead(Input2) == 1)  로 사용해도 됨

{

digitalWrite(Out2 , LOW);

}

else

{

digitalWrite(Out2 , HIGH);

}

// Input1 과 Input2  가 동시에  "1" 일때 Out3 이 "1" 로 출력 // And Gate

if(digitalRead(Input1) &&  digitalRead(Input2))     // (digitalRead(Input1) == 1 &&  digitalRead(Input2) == 1) 로 사용해도 됨

{

digitalWrite(Out3 , HIGH);

}

else

{

digitalWrite(Out3 , LOW);

}

// Input1 과 Input2  중 하나라도  "1" 일때 Out4 이 "1" 로 출력 // Or Gate

if(digitalRead(Input1) ||  digitalRead(Input2))       // (digitalRead(Input1) == 1 ||  digitalRead(Input2) == 1) 로 사용해도 됨

{

digitalWrite(Out4 , HIGH);

}

else

{

digitalWrite(Out4 , LOW);

}

}


처음 입문자들에게 도움이 되길 바라며, 추가 제어방법 필요 하시면

댓글로 문의 주시면 자세하게 알려드리겠습니다.

 

리프로