아두이노 기초2015. 2. 24. 15:57


예제 1

#include <liquidcrystal.h>

// LiquidCrystal 클래스 초기화
LiquidCrystal lcd(12,11,2,3,4,5); // 인자값들은 회로도의 핀번호와 일치

void setup() {
  lcd.begin(16,2); // LCD의 높낮이를 설정하는 명령어
  lcd.print("hello, world!"); // LCD에 텍스트를 출력하는 명령어
}

void loop() {
  lcd.setCursor(0,1); // 커서 위치를 설정
  lcd.print(analogRead(A0)); // 조도센서에서 값을 읽어 LCD에 표시
  delay(200); // 0.2초마다 화면에 표시
}


예제 2

#include <Liquidcrystal.h>
#define TRIG 8
#define ECHO 9

// LiquidCrystal 클래스 초기화
LiquidCrystal lcd(12,11,2,3,4,5); // 인자값들은 회로도의 핀번호와 일치

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
  lcd.begin(16,2); // LCD의 높낮이를 설정하는 명령어
}

void loop() {
  // 트리거에 대한 초기화작업
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);
  
  long distance = pulseIn(ECHO, HIGH) / 58.2; // cm로 환산하기 위해 58.2로 나누어 준다
  lcd.clear();
  lcd.setCursor(0,0); // 커서 위치를 설정
  lcd.print(distance);
  lcd.print("cm");
  delay(200); // 0.2초마다 화면에 표시
}


'아두이노 기초' 카테고리의 다른 글

11. 시리얼 통신  (0) 2015.02.25
10. 서브모터  (0) 2015.02.24
9. 7세그먼트  (0) 2015.02.24
7. 초음파센서  (0) 2015.02.24
6. 조도센서  (0) 2015.02.24
Posted by trikyu
아두이노 기초2015. 2. 24. 15:14


예제 1

#define TRIG 2
#define ECHO 3
#define RED 11
#define GREEN 10
#define BLUE 9

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
}

void loop() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);
  
  long distance = pulseIn(ECHO, HIGH) / 58.2;
  
  analogWrite(RED, 0);
  analogWrite(GREEN, 0);
  analogWrite(BLUE, 0
  
  if(distance < 10) {
    analogWrite(RED, 255);
  } else if(distance < 20) {
    analogWrite(GREEN, 255);
  } else if(distance < 30) {
    analogWrite(BLUE, 255);
  }
  
  delay(100);
}


예제 2

#define TRIG 2
#define ECHO 3

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
}

void loop() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);
  
  long distance = pulseIn(ECHO, HIGH) / 58.2;
  
  tone(8, 1000, 20);
  delay(100);
  tone(8, 1000, 20);
  
  delay(distance);
}


'아두이노 기초' 카테고리의 다른 글

11. 시리얼 통신  (0) 2015.02.25
10. 서브모터  (0) 2015.02.24
9. 7세그먼트  (0) 2015.02.24
8. LCD 패널  (0) 2015.02.24
6. 조도센서  (0) 2015.02.24
Posted by trikyu
아두이노 기초2015. 2. 24. 10:40


예제 1

void setup() {
  // 조도센서 사용시 초기화는 필요없음
}

void loop() {
  // A0에 연결된 아날로그신호를 읽는다.(0~1023의 값)
  // 함수 map을 이용하여 아날로그신호값을 0~255값으로 변환한다.
  // 변환된 값을 9번 핀에 신호를 보낸다.
  analogWrite(9, map(analogRead(A0), 0, 1023, 0, 255));
}


예제 2

void setup() {
  // 조도센서 사용시 초기화는 필요없음
}

void loop() {
  // A0에 연결된 아날로그신호를 읽는다.(0~1023의 값)
  // 함수 map을 이용하여 피에조 스피커가 낼 수 있는 음의 범위 31~4978값으로 변환한다.
  // 변환된 값을 8번 핀에 신호를 보낸다.
  tone(8, map(analogRead(A0), 0, 1023, 31, 4978), 20);
  delay(500);
}


'아두이노 기초' 카테고리의 다른 글

11. 시리얼 통신  (0) 2015.02.25
10. 서브모터  (0) 2015.02.24
9. 7세그먼트  (0) 2015.02.24
8. LCD 패널  (0) 2015.02.24
7. 초음파센서  (0) 2015.02.24
Posted by trikyu