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 구차니
embeded/arduino(genuino)2020. 4. 17. 23:43

아두이노로 RGB LED를 점멸하게 하는걸 직접 만들어 보려고 했는데

색상 패턴을 어떻게 만들어야 하나 해서 고민하는데.. 

Red - Green - Blue가 아닌

Red - Green - Yellow - Blue - Magenta - Cyan - White 순서가 되서 

RGB가 아니라 조금 아쉽지만 나름 많이 보던 전형적인 패턴으로 코딩이 가능할 듯.

 

[링크 : https://www.researchgate.net/figure/The-additive-model-of-RGB-Red-green-and-blue..._fig2_328189604]

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

라즈베리 - 아두이노 i2c 통신 예제  (0) 2020.04.18
arduino rgb led 사용하기  (0) 2020.04.18
arduino nano PWM 출력  (0) 2020.04.17
PAM8403 3W 스테레오 오디오 앰프  (0) 2020.04.17
오랫만에 지름  (2) 2020.04.07
Posted by 구차니
embeded/arduino(genuino)2020. 4. 17. 23:15

arduino nano 에서는 D3 / D5 / D6 / D9 / D10 / D11 만 PWM 출력을 지원하고

PWM을 지원하지 않는 핀에서 시도할 경우 128을 기준으로 on/off로만 출력이 되는 것으로 보인다.

 

비싼(!) RGB LED 대신 집에 굴러 다니는

RED / GREEN / AMBER 를 글루건으로 붙여서 테스트~

 

아무튼.. 먼가 만들려고 하는데 PWM 출력을 쓰고 싶다면..

핀에 제한이 될 수 밖에 없구나.. 배선을 좀 고민을 해봐야겠다.

 

int led_r = 9;
int led_g = 10;
int led_y = 11 ;
int val = 0;
int dir = 0;

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

void loop() {
  // put your main code here, to run repeatedly:
  analogWrite(led_r, val);
  analogWrite(led_g, val);
  analogWrite(led_y, val);
  if(dir == 0)
  {
    val = val + 1;
    if(val >= 255)
      dir = 1;
  }
  else
  {
    val = val - 1;
    if(val == 0)
      dir = 0;
  }
  delay(2);
}

 

[링크 : https://www.arduino.cc/reference/en/language/functions/analog-io/analogwrite/]

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

arduino rgb led 사용하기  (0) 2020.04.18
rgb led 색상 순환 패턴  (0) 2020.04.17
PAM8403 3W 스테레오 오디오 앰프  (0) 2020.04.17
오랫만에 지름  (2) 2020.04.07
RGB LED 저항값  (0) 2020.03.14
Posted by 구차니
embeded/arduino(genuino)2020. 4. 17. 18:48

예전에 사둔 스테레오 오디오 앰프를 한번 조립해보는데

0.5W 8옴 자리 두개 스테레오로 구성하니 못쓰진 않을 소리 크기가 나와주긴 한데

 

음질은 차라리 다이소 5000원 짜리 블루투스 스피커가 더 좋다는게 함정

(스피커가 0.5W 라서 그런건가? 좀 더 큰 출력을 달아아야 하나?)

귀찮아서 아두이도 통해서 5V 500mA 공급해서 그런건가? (아니 이론적으로는 2.5W 인데 부족한가?)

 

너무 막 굴러다니니 불편해서 글루건으로 만능보드에 붙여 놓았는데 그렇다고 음질이 좋은건 아니니 계륵 ㅠㅠ

스트레이트가 아니라 right angle 방식이면 좀 더 산뜻하게 선 정리가 가능했을텐데 아쉽네

 

[링크 : http://itempage3.auction.co.kr/DetailView.aspx?itemno=B668236809]

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

rgb led 색상 순환 패턴  (0) 2020.04.17
arduino nano PWM 출력  (0) 2020.04.17
오랫만에 지름  (2) 2020.04.07
RGB LED 저항값  (0) 2020.03.14
arduino servo / knob 예제 실행  (0) 2020.03.09
Posted by 구차니
embeded/arduino(genuino)2020. 4. 7. 16:55

돈이 없어서 허덕여서 살까말까 고민하다가

2만원인데.. 라고 하면서 2만원 이나 하잖아.. 이러면서 고민

후.. 역시 돈이 문제야 ㅠㅠ

 

아무튼 소심하게 지름. 카메라가 단품으로 좀 비싸고

RGB LED를 한번 써보고 싶어서 단품 가격이 좀 세도 일단 지름.

나머지는 정말 싸다.. 싶은데 갯수가 있으니 비싸지네 ㅠㅠ

 

+

nRF24L01

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

arduino nano PWM 출력  (0) 2020.04.17
PAM8403 3W 스테레오 오디오 앰프  (0) 2020.04.17
RGB LED 저항값  (0) 2020.03.14
arduino servo / knob 예제 실행  (0) 2020.03.09
arduino knob 변형 adc 값 읽기  (0) 2020.03.09
Posted by 구차니
embeded/arduino(genuino)2020. 3. 14. 16:35

RGB LED는 일반적인 LED와 다르게 2V를 먹여야 하는데 20mA 최대 제한을 걸면

일반적인(?) 220 옴 대신 330옴을 써야 한다고 한다.

그나저나 RGB LED는 MOQ가 미쳤거나 가격이 미쳤거나..

blue LED도 비싸다고는 들었지만 장난 아니네 ㅠㅠ

 

[링크 : https://kocoafab.cc/tutorial/view/725]

[링크 : https://codingrun.com/55]

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

PAM8403 3W 스테레오 오디오 앰프  (0) 2020.04.17
오랫만에 지름  (2) 2020.04.07
arduino servo / knob 예제 실행  (0) 2020.03.09
arduino knob 변형 adc 값 읽기  (0) 2020.03.09
arduino nano + CLCD  (0) 2020.03.07
Posted by 구차니
embeded/arduino(genuino)2020. 3. 9. 21:30

회로와 소스는 아래 링크 참조

[링크 : https://www.arduino.cc/en/tutorial/knob]

 

예전에 커넥터를 분해해버려서 저런 용도로 밖에 못 쓰는 서보

eleparts꺼를 뜯을걸 왜 hitec을 했을까 ㅠㅠ

 

변형한 소스는 아래와 같은데 별 건 없음

#include <LiquidCrystal.h>
#include <Servo.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int potpin = 0;
int raw;
int val;
Servo myservo;

void setup() {
  myservo.attach(9);
  
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.leftToRight();

//  lcd.setCursor(0, 0);
//  lcd.print("T:-10C H:100% R:50% PM12");
//
//  lcd.setCursor(0, 1);
//  lcd.print("PM1:100 PM25:100");
}

void loop() {
  char str[20];
  raw = analogRead(potpin);
  val = map(raw, 0, 1023, 0, 180);
  sprintf(str, "%4d %3d", raw, val);
  
  lcd.setCursor(0, 0);
  lcd.print(str);

  myservo.write(val);                  // sets the servo position according to the scaled value
  delay(15);                           
}

 

 

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

오랫만에 지름  (2) 2020.04.07
RGB LED 저항값  (0) 2020.03.14
arduino knob 변형 adc 값 읽기  (0) 2020.03.09
arduino nano + CLCD  (0) 2020.03.07
arduino ide ubuntu에서 한글 깨질때  (0) 2020.02.17
Posted by 구차니
embeded/arduino(genuino)2020. 3. 9. 20:58

원래 값으로 읽어 보니 0~1023 사이의 값으로만 읽혀 온다.

10bit ADC 라 그런가?

 

#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int potpin = 0;
int val;

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.leftToRight();
}

void loop() {
  char str[20];
  val = analogRead(potpin);
//  val = map(val, 0, 1023, 0, 180);
  sprintf(str, "%5d", val);
  
  lcd.setCursor(0, 0);
  lcd.print(str);
}

[링크 : https://www.arduino.cc/en/tutorial/knob]

 

아무튼 겸사겸사 CLCD 밝기 조정도 겸사겸사 성공!

 

+

도대체.. 돈들여서 커다란 가변저항이랑 노브는 왜 샀을까.. 그냥 있던걸로 해볼 걸 ㅠㅠ

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

RGB LED 저항값  (0) 2020.03.14
arduino servo / knob 예제 실행  (0) 2020.03.09
arduino nano + CLCD  (0) 2020.03.07
arduino ide ubuntu에서 한글 깨질때  (0) 2020.02.17
e-paper 모듈 (아두이노 HAT)  (0) 2019.04.17
Posted by 구차니
embeded/arduino(genuino)2020. 3. 7. 10:46

와... 이렇게 편하게 하는데 예전에는 왜 일일이 라이브러리를 만들려고 개고생을 했던 걸까?

일단 CLCD는 16x2 라서 생각외로 출력가능한 메시지가 길지가 않아서 아쉽네

 

하드웨어 구성은 가변 저항쪽에 0 V를 인가하면 가장 어둡게 표현되는 듯?

(그러니까 저항으로 최대치를 하면 어두워 지는 식으로 0 Voltage로 설정되는 것으로 보임)

 

화이트 밸런스가 하늘로 날아가면서 액정 배경이 붉은색으로 나왔으나 실제로는 파란색에 가까움

 

1번 핀 부터(좌->우)

GND / VCC / 밝기(GND=MAX) / RS / RW(GND) / E + 데이터(4비트 혹은 8비트)

 

#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.leftToRight();

  lcd.setCursor(0, 0);
  lcd.print("T:-10C H:100% R:50% PM12");

  lcd.setCursor(0, 1);
  lcd.print("PM1:100 PM25:100");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  delay(500);
  lcd.scrollDisplayLeft();
  //  lcd.print(millis() / 1000);
}

[링크 : https://www.arduino.cc/en/Tutorial/HelloWorld]

 

텍스트 방향은 아랍어 처럼 우->좌로 쓰는 경우에나 쓸모가 있을 듯.

[링크 : https://www.arduino.cc/en/Tutorial/LiquidCrystalTextDirection]

 

얘가 내가 원하던 텍스트 스크롤 기능.

다만, 전체 화면을 다 비울 정도 까지 스크롤 된 다음

다시 텍스트가 나와서 한참 있다 다시 나오니 조금 불편하지만 그래도 무한 반복으로 16 보다 긴 문자열도

자동으로 슬라이드 되어서 나오니 의외로 쓸모가 있을 듯?

[링크 : https://www.arduino.cc/en/Tutorial/LiquidCrystalScroll]

 

프로세서를 ATmega329P(Old Bootloader) 라고 해주어야지

프로그래머 "Arduino as ISP" 로 설정했을때 구워진다. 2016년 즈음부터 바뀐듯?

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

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

arduino servo / knob 예제 실행  (0) 2020.03.09
arduino knob 변형 adc 값 읽기  (0) 2020.03.09
arduino ide ubuntu에서 한글 깨질때  (0) 2020.02.17
e-paper 모듈 (아두이노 HAT)  (0) 2019.04.17
dfrobot ph meter  (0) 2018.12.19
Posted by 구차니
embeded/arduino(genuino)2020. 2. 17. 15:29

오랫만에 생각나서 우분투에 아두이노 IDE 설치하는데 이상하게 깨진다. -_-

 

복구 하려면 설정에 들어가야 하는데

preperence는 ctrl-comma (이래저래 깨지니 단축키가 짱)

아무튼 영어로 설정하고 일단 쓰면되는데..

폰트 설정 파일을 보면 monospaced로 되어 있어서 그런가 한글이 깨져 안나온다.

 

현재 1.8.5이 패키지로 설치시 깔려지는데 신버전 버그인지 모르겠지만

설정파일들 바꾸어 주어도 폰트가 변경되지 않는다. 좀 기다려야 할지도 모르겠네..

한글로 메뉴 설정 안된다고 못쓰는건 아니니까 머...

 

[링크 : https://blog.opid.kr/457]

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

arduino knob 변형 adc 값 읽기  (0) 2020.03.09
arduino nano + CLCD  (0) 2020.03.07
e-paper 모듈 (아두이노 HAT)  (0) 2019.04.17
dfrobot ph meter  (0) 2018.12.19
433mhz tpms ivtm 센서용 통신 모듈  (0) 2018.10.05
Posted by 구차니