반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리

[Arduino] Library and RGB LED

2017. 1. 11. 08:18 | Posted by 솔웅


반응형

Libraries


Arduino 소프트웨어에 익숙해지고 내장 함수를 사용할 수 있게 되면 Arduino 기능을 추가 Library 확장  있습니다.

 


Library?

 

Library 센서디스플레이모듈 등에 쉽게 연결할 수있는 코드 모음입니다예를 들어내장  LiquidCrystal Library 사용하면 문자 LCD 디스플레이와 쉽게 대화   있습니다인터넷에 다운로드  수있는 수백 개의 추가 Library 있습니다내장 Library 이러한 추가 Library  일부는 이곳에 가면 보실 수 있습니다. 추가 Library 사용하려면 Library 설치해야합니다.

 


Library 설치 방법

 


Library 관리자 사용


 

Arduino IDE  Library 설치하려면 Library Manager(IDE 버전 1.6.2에서 사용 가능) 사용하면 됩니다.  IDE 열고 "스케치"메뉴를 클릭  다음 Library 포함> Library Manage 클릭하십시오.

 




그런 다음 Library 관리자가 열리고 이미 설치되었거나 설치할 준비가  Library 목록이 표시됩니다. 예제에서는 Bridge Library 설치합니다목록을 스크롤하여 설치하려는 Library 버전을 선택하십시오경우에 따라 Library  버전  사용할  있습니다버전 선택 메뉴가 나타나지 않아도 걱정하지 마세요정상입니다.



 


마지막으로 install 클릭하고 IDE에서  Library 설치할 때까지 기다립니다연결 속도에 따라 다운로드하는  시간이 걸릴  있습니다설치가 끝나면 Installed 태그가 Bridge Library 옆에 나타납니다.  그러면 Library 매니저를 닫을  있습니다.

 


 


이제  Include Library menu에서  Library 찾을  있습니다나만의 Library 추가하려면 github에서 new issue 엽니다.

 

 

.zip Library 가져 오기

 

Library 종종 ZIP 파일 또는 폴더로 배포됩니다폴더의 이름은 Library 이름입니다폴더 안에는.cpp 파일, .h 파일  종종 keywords.txt 파일예제 폴더  Library 필요한 기타 파일이 있습니다.버전 1.0.5부터는 3rd party Library IDE 설치할  있습니다다운로드  Library 압축을 풀지말고 그대로 두십시오.

 

Arduino IDE에서 스케치> Library 포함으로 이동하십시오드롭 다운 목록의 상단에서 ".ZIP Library추가"옵션을 선택하십시오.

 


 


추가하려는 Library 선택하라는 메시지가 나타납니다. .zip 파일의 위치로 이동하여 엽니 .

 


 


스케치> Library 가져 오기 메뉴로 돌아갑니다이제 드롭 다운 메뉴 하단에 Library 표시됩니다.스케치에서 사용할 준비가되었습니다. zip 파일은 Arduino 스케치 디렉토리의 libraries 폴더에서 확장됩니다.

 

참고 : Library 스케치에서 사용할  있지만 IDE restart  때까지 Library 예제가 파일예제에 표시되지 않습니다.

 


Manual Installation

 

Library 설치하려면 먼저 Arduino 응용 프로그램을 종료하십시오그런 다음 Library 포함  ZIP파일의 압축을 푸십시오예를 들어 "ArduinoParty"라는 Library 설치하는 경우 ArduinoParty.zip압축 해제하십시오. ArduinoParty라는 폴더와 ArduinoParty.cpp  ArduinoParty.h 같은 파일이 있어야합니다. (.cpp  .h 파일이 폴더에 없으면 폴더를 만들어야합니다. 경우 "ArduinoParty"라는폴더를 만들어 ZIP 있던 모든 파일로 이동하십시오 ArduinoParty.cpp  ArduinoParty.h 같은 파일).

 

ArduinoParty 폴더를이 폴더 (Library 폴더) 드래그하십시오. Windows에서는 "My Documents \ Arduino \ libraries"라고합니다. Mac 사용자의 경우 "Documents / Arduino / libraries"라고 불릴 것입니다리눅스에서는 스케치북의 "libraries"폴더가됩니다.

 

Arduino Library 폴더는 다음과 같아야합니다 (Windows 경우).

 

  My Documents\Arduino\libraries\ArduinoParty\ArduinoParty.cpp
  My Documents\Arduino\libraries\ArduinoParty\ArduinoParty.h
  My Documents\Arduino\libraries\ArduinoParty\examples
  ....

 

또는 다음과 같이 (Mac  Linux) :

 

  Documents/Arduino/libraries/ArduinoParty/ArduinoParty.cpp
  Documents/Arduino/libraries/ArduinoParty/ArduinoParty.h
  Documents/Arduino/libraries/ArduinoParty/examples
  ....

 

 

 

.cpp  .h 파일보다 많은 파일이있을  있습니다파일이 모두 있는지 확인하십시오. (.cpp  .h 파일을 Library 폴더에 직접 저장하거나 추가 폴더에 중첩  경우 Library 작동하지 않습니다 ( : Documents \ Arduino \ libraries \ ArduinoParty.cpp  Documents \ Arduino \ libraries \ ArduinoParty \ ArduinoParty \ ArduinoParty.cpp 작동하지 않습니다.)

 

Arduino 응용 프로그램을 다시 시작하십시오 Library 소프트웨어의 스케치 -> Library 가져 오기 메뉴 항목에 나타나는지 확인하십시오그게 다야! Library 설치했습니다!

 

 튜토리얼은 Limor Fried 텍스트를 기반으로합니다.

 

Arduino 시작 안내서의 텍스트는 Creative Commons Attribution-ShareAlike 3.0 라이선스 따라 사용이 허가되었습니다가이드의 코드 샘플은 공개 도메인으로 배포됩니다.

 

https://www.arduino.cc/en/reference/libraries



※ RGB LED with Arduino Mega 2560



Circuit




Source Code


//by Simon Monk
//www.elegoo.com
//2016.06.13

// Define Pins
#define RED 3
#define GREEN 5
#define BLUE 6

#define delayTime 10 // fading time between colors


void setup()
{
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);
digitalWrite(RED, HIGH);
digitalWrite(GREEN, HIGH);
digitalWrite(BLUE, HIGH);
}

// define variables
int redValue;
int greenValue;
int blueValue;


// main loop
void loop()
{
  redValue = 255; // choose a value between 1 and 255 to change the color.
  greenValue = 0;
  blueValue = 0;

  analogWrite(RED, 0);
  delay(1000);

   for(int i = 0; i < 255; i += 1) // fades out red bring green full when i=255
  {
    redValue -= 1;
    greenValue += 1;
    analogWrite(RED, 255 - redValue);
    analogWrite(GREEN, 255 - greenValue);
    delay(delayTime);
  }

  redValue = 0;
  greenValue = 255;
  blueValue = 0;

  for(int i = 0; i < 255; i += 1)  // fades out green bring blue full when i=255
  {
    greenValue -= 1;
    blueValue += 1;
    analogWrite(GREEN, 255 - greenValue);
    analogWrite(BLUE, 255 - blueValue);
    delay(delayTime);
  }

  redValue = 0;
  greenValue = 0;
  blueValue = 255;


  for(int i = 0; i < 255; i += 1)  // fades out blue bring red full when i=255
  {
  redValue += 1;
  blueValue -= 1;
  analogWrite(RED, 255 - redValue);
  analogWrite(BLUE, 255 - blueValue);
  delay(delayTime);
  }
}




반응형