4일차 아두이노

정준호·2022년 1월 14일
0

아두이노

목록 보기
2/2

1.가변저항 컨트롤
void setup() {
pinMode(A0,INPUT);
Serial.begin(9600);
}

void loop() {
int sensor = analogRead(A0);
Serial.println(sensor);
}

2.가변저항 LED제어
//문제.
//가변저항의 값에 따라 LED를 제어해주세요.
//가변저항의 값은 0~1023
//LED 아날로그 값은 0~255
void setup() {
pinMode(A0,INPUT);
Serial.begin(9600);
pinMode(9,OUTPUT);
}

void loop() {
int sensor = analogRead(A0);
int a = sensor/4;
Serial.println(sensor);
if(a <= 255){
analogWrite(9,a);
}
}

// map()함수
// 센서의 범위를 내가 원하는 범위로 조절하는 함수
(센서값, 현재 센서의 최소값, 현재 센서의 최대값,변화할 최소값, 변화할 최대값)

(아날로그 신호값, 0, 1023, 0, 255);
함수의 괄호안의값

부저의 주파수범위 31~65535
3.부저제어
void setup() {
pinMode(8,OUTPUT);
}

void loop() {
//tone(핀번호, 주파수, 시간);
tone(8,500,1000);
delay(2000);
}

4.부저 버튼5개 제어
void setup() {
pinMode(8,OUTPUT);
pinMode(3,INPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
pinMode(6,INPUT);
pinMode(7,INPUT);

}

void loop() {
int pb1 = digitalRead(3);
int pb2 = digitalRead(4);
int pb3 = digitalRead(5);
int pb4 = digitalRead(6);
int pb5 = digitalRead(7);

if(pb1==1){
tone(8,262,100);
}elseif(pb2==1){
tone(8,294,100);
}elseif(pb3==1){
tone(8,330,100);
}elseif(pb4==1){
tone(8,349,100);
}elseif(pb5==1){
tone(8,392,100);
}
}

5.터보 각도 제어
#include <Servo.h>
Servo myservo;
void setup() {
myservo.attach(6);

}

void loop() {
myservo.write(150);
delay(1000);
myservo.write(0);
delay(1000);

}

profile
파이팅

0개의 댓글