Presentation is loading. Please wait.

Presentation is loading. Please wait.

ARDUINO 실습 과제 보 고서. PWM 은 아날로그 출력이라는 함수를 사용하게 되는데 이 출력에는 3, 5, 6, 9, 10, 11 번의 핀만 사용 가능. ( 숫자 옆 에 ~ 표시 )

Similar presentations


Presentation on theme: "ARDUINO 실습 과제 보 고서. PWM 은 아날로그 출력이라는 함수를 사용하게 되는데 이 출력에는 3, 5, 6, 9, 10, 11 번의 핀만 사용 가능. ( 숫자 옆 에 ~ 표시 )"— Presentation transcript:

1 ARDUINO 실습 과제 보 고서

2 PWM 은 아날로그 출력이라는 함수를 사용하게 되는데 이 출력에는 3, 5, 6, 9, 10, 11 번의 핀만 사용 가능. ( 숫자 옆 에 ~ 표시 )

3 int led = 3; int brightness = 0; int increment = 1; void setup() { } void loop() { if(brightness > 255) { increment = -1; } else if(brightness < 1) { increment = 1; } brightness = brightness + increment; analogWrite(led, brightness); delay(10); } analogWrite 을 통해 구동되는 핀은 출 력으로 선언하지 않아도 된다.

4

5 int ledPins[] = {2,3,4,5,6,7,8,9}; void setup() { for(int i=0; i<8; i++) { pinMode(ledPins[i],OUTPUT); } void loop() { for(int i=0; i<8; i++) { digitalWrite(ledPins[i], HIGH); delay(100); } for(int i =7; i>=0; i--) { digitalWrite(ledPins[i], LOW); delay(100); }

6

7 QA~QH = 출력 SER = data 핀 (2 번 ) SRCLK = clock 핀 (3 번 ) RCLK = latch 핀 (4 번 ) OE = reset(5V) RSCLR = enable input(GND)

8 int datapin = 2; int clockpin = 3; int latchpin = 4; byte data = 0; void setup() { pinMode(datapin, OUTPUT); pinMode(clockpin, OUTPUT); pinMode(latchpin, OUTPUT); } void loop() { for(int i = 0; i<=7; i++) { shiftWrite(i,HIGH); delay(100); }

9 for(int i = 7; i>=0; i--) { shiftWrite(i,LOW); delay(100); } void shiftWrite(int desiredPin, boolean desiredState) { bitWrite(data, desiredPin, desiredState); shiftOut(datapin, clockpin, MSBFIRST, data); digitalWrite(latchpin, HIGH); digitalWrite(latchpin, LOW); }

10 PWM 을 이용하여 각도 컨트롤

11 #include Servo motor1; void setup() { motor1.attach(9); } void loop() { for(int position = 0; position<=180; position +=2) { motor1.write(position); delay(20); } for(int position =180; position >=0; position -=2) { motor1.write(position); delay(20); }

12 스피드를 컨트롤하기 위한 1 개의 PWM 와 방향을 결정하기 위한 디지털 출력 필요.

13 int speedPin = 3; int motor1APin = 6; int motor2APin = 7; int speed_value_motor1 = 127; void setup() { pinMode(speedPin, OUTPUT); pinMode(motor1APin, OUTPUT); pinMode(motor2APin, OUTPUT); } void loop() { digitalWrite(motor1APin, LOW); digitalWrite(motor2APin, HIGH); analogWrite(speedPin, speed_value_motor1); }

14

15 int button1Pin=2; int ledPin=13; void setup() { pinMode(button1Pin, INPUT); pinMode(ledPin, OUTPUT); } void loop() { int button1State; button1State = digitalRead(button1Pin); if (button1State == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }

16

17 뗐을 때 댔을 때

18 int signal = 4; int onoff; void setup() { Serial.begin(9600); } void loop() { onoff = digitalRead(signal); Serial.println(onoff); }

19 감사합니다.


Download ppt "ARDUINO 실습 과제 보 고서. PWM 은 아날로그 출력이라는 함수를 사용하게 되는데 이 출력에는 3, 5, 6, 9, 10, 11 번의 핀만 사용 가능. ( 숫자 옆 에 ~ 표시 )"

Similar presentations


Ads by Google