상세 컨텐츠

본문 제목

HBE-ADK-2560 스위치를 이용한 LED 제어

아두이노

by Candoit 2015. 3. 9. 16:04

본문

HBE-Accessory-Base



 다음 표는 LED연결에 대한 Port 구성표이다.




나는 저 표를 몰라서 숫자 1 부터 찾았다. .....

다음 표는 SWITCH 연결에 대한 Port 구성표이다.




int LED_EN_PIN = 6,SW_EN_PIN = 7;  //LED포트 번호와 SWITCH 포트 번호이다.

int LED[8] ={22,24,26,28,30,32,34,36}; //LED 번호를 담은 배열

int SWITCH[8] = {23,25,27,29,31,33,35,37}; //SWITCH 번호를 담은 배열



#define LED_EN 1 

#define SW_EN 1


void setup() 

{

  LED_SW_EN(); //LED_SW_EN() 함수 실행

  for(int i =0;i <8;i++ )

  {

    pinMode(SWITCH[i],INPUT);  스위치 배열 값에 따라 입력

    pinMode(LED[i],OUTPUT);  //LED 배열 값에 따라 출력

  }

}


void loop() 

{

  for(int i = 0; i <8;i++)

  {

    if(digitalRead(SWITCH[i])) // value = difitalRead(pin) 함수는 pin 에 해당하는 포트의 값을 읽어                                      vallue의 저장하는 함수이다. 여기서 스위치의 값을 읽어 해당하는                                      LED에 출력을 한다.

      digitalWrite(LED[i],HIGH);// "

     else 

     digitalWrite(LED[i],LOW); // "

  }

  delay(100);

}


void LED_SW_EN(void)

{

  pinMode(LED_EN_PIN,OUTPUT); //LED 출력

  pinMode(SW_EN_PIN,OUTPUT); //스위치 출력

  

  #ifdef LED_EN   // ifdef는 조건 컴파일이다. LED_EN이 나올시 

digitalWrite(LED_EN_PIN, LOW);을 

사용한다.

    

    digitalWrite(LED_EN_PIN, LOW);  //LED 끔

    

    #else

      digitalWrite(LED_EN_PIN, HIGH); //LED 켬

    #endif

    #ifdef SW_EN //SW_EN이 나올시 digitalWrite(SW_EN_PIN,LOW); 사용한다.

      digitalWrite(SW_EN_PIN,LOW); //스위치 끄기

    #else

     digitalWrite(SW_EN_PIN,HIGH); //스위치 켜기

    #endif

}

  

























관련글 더보기