'2020/04/18'에 해당되는 글 2건

  1. 2020.04.18 라즈베리 - 아두이노 i2c 통신 예제
  2. 2020.04.18 arduino rgb led 사용하기
embeded/arduino(genuino)2020. 4. 18. 22:01

그래.. 남이 해놓은거 사용해서 빠르게 만들어 보자~

 

일단 해볼건.. 핀 부터 고민해 봐야겠네..

RGB - PWM output / D9, D10, D11

CLCD - 6pin D2, D3 / D4, D5, D6, D7

[링크 :https://blog.naver.com/nkkh159/220518965513]

 

i2c - 2pin A4(SDA), A5(SCL)

[링크 : https://www.diymaker.net/79]

[링크 : https://webnautes.tistory.com/759]

'embeded > arduino(genuino)' 카테고리의 다른 글

L298N 보드 사용 준비  (0) 2020.04.28
L293D 아두이노 드라이버  (0) 2020.04.22
arduino rgb led 사용하기  (0) 2020.04.18
rgb led 색상 순환 패턴  (0) 2020.04.17
arduino nano PWM 출력  (0) 2020.04.17
Posted by 구차니
embeded/arduino(genuino)2020. 4. 18. 21:19

먼가 회로가 잔뜩 추가된 상황.. 330옴으로 해주니 생각외로 엄청 밝다.

회로 다 꾸미고 나니.. 발견된 1k옴.. ㅠㅠ 아놔...

 

 

신기하게(?) D9 / D10 / D11 과 RGB LED 사이에 저항을 달아주지 않고 바로 연결하고

공통 + 와 VCC 사이에 저항을 달아주면 정상적으로 불이 들어오지 않는다.

 

AVR 내부 풀업 때문인진 모르겠지만

RGB 전부 켜서 흰색이 들어와야 하는데 Red로만 불이 들어 오는 이상한 현상이 발생한다.

회로적으로 공부가 좀 더 필요 할 듯..

 

회로는 아래 링크를 참조했음

[링크 : http://wiki.vctec.co.kr/opensource/arduino/rgbled]

 

일단 작성한 코드는 다음과 같음

int led_r = 9;
int led_g = 10;
int led_b = 11;
int val = 0;
int dir = 0;
int mode = 1;

void setup() {
  // put your setup code here, to run once:
  pinMode(led_r, OUTPUT);
  pinMode(led_g, OUTPUT);
  pinMode(led_b, OUTPUT);
}

// common -
void mode_change()
{
  switch(mode)
  {
    default:
    case 1: mode = 2; break;
    case 2: mode = 3; break;
    case 3: mode = 4; break;
    case 4: mode = 5; break;
    case 5: mode = 6; break;
    case 6: mode = 7; break;
    case 7: mode = 1; break;
  }
}

void loop() {
  // put your main code here, to run repeatedly:
  if(mode & 0x01) analogWrite(led_r, 255 - val);
  else            analogWrite(led_r, 255);
  
  if(mode & 0x02) analogWrite(led_g, 255 - val);
  else            analogWrite(led_g, 255);
  
  if(mode & 0x04) analogWrite(led_b, 255 - val);
  else            analogWrite(led_b, 255);

  if(dir == 0)
  {
    val = val + 1;
    if(val >= 255)
    {
      dir = 1;
    }
  }
  else
  {
    val = val - 1;
    if(val == 0)
    {
      dir = 0;
      mode_change();
    }
  }
  delay(5);
}

'embeded > arduino(genuino)' 카테고리의 다른 글

L293D 아두이노 드라이버  (0) 2020.04.22
라즈베리 - 아두이노 i2c 통신 예제  (0) 2020.04.18
rgb led 색상 순환 패턴  (0) 2020.04.17
arduino nano PWM 출력  (0) 2020.04.17
PAM8403 3W 스테레오 오디오 앰프  (0) 2020.04.17
Posted by 구차니