오늘도 아두이노에 대해 공부했다. 아직 회로 구성이 익숙하지 않아서 많이 어렵지만, 실물로 보이는 것이 있기 때문에 재미가 있는 것 같다.
int R_Pin = 12;
int G_Pin = 11;
int B_Pin = 10;
void setup() {
pinMode(R_Pin, OUTPUT);
pinMode(G_Pin, OUTPUT);
pinMode(B_Pin, OUTPUT);
}
void loop() {
digitalWrite(R_Pin, HIGH);
delay(500);
digitalWrite(G_Pin, HIGH);
delay(500);
digitalWrite(B_Pin, HIGH);
delay(500);
digitalWrite(R_Pin, LOW);
delay(500);
digitalWrite(G_Pin, LOW);
delay(500);
digitalWrite(B_Pin, LOW);
delay(500);
}
int R_Pin = 3;
void setup() {
pinMode(R_Pin, OUTPUT);
}
void loop() {
analogWrite(3, 255); // 3번 핀 최대 출력
delay(500);
analogWrite(3, 128); // 3번 핀 50% 출력
delay(500);
analogWrite(3, 0); // 3번 핀 0% 출력
delay(500);
}
int ledPin = 3;
int brightness = 0;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
for(brightness = 0; brightness < 255; brightness ++) {
analogWrite(ledPin, brightness);
delay(10);
Serial.println(brightness);
}
}
int pushButton = 2; // 연결 핀 변수 선언
void setup() {
Serial.begin(9600); // PC와 시리얼 통신 시작, 통신 속도 = 9600 baud
pinMode(pushButton, INPUT); // 2핀에 연결된 스위치가 눌렸는지 읽어들이기 위해 INPUT 모드 설정
}
void loop() {
int buttonState = digitalRead(pushButton);
Serial.println(buttonState);
delay(1);
}
플로팅 현상
전기가 흐를 때, 주변의 자기장과 같은 전기 에너지 때문에 신호가 불안정하게 변해 부정전압으로 인한 오작동이 발생하는 현상
int Switch1 = 12;
int Switch2 = 11;
int RedPin = 4;
int BluePin = 5;
void setup() {
Serial.begin(9600);
pinMode(Switch1, INPUT_PULLUP);
pinMode(Switch2, INPUT_PULLUP);
pinMode(RedPin, INPUT_PULLUP);
pinMode(BluePin, INPUT_PULLUP);
}
void loop() {
int SW1 = digitalRead(Switch1);
digitalWrite(RedPin, LOW);
int SW2 = digitalRead(Switch2);
digitalWrite(BluePin, LOW);
if(SW1 == LOW){
Serial.print("Switch : ");
Serial.println("RED");
digitalWrite(RedPin, HIGH);
delay(100);
}
if(SW2 == LOW){
Serial.print("Switch : ");
Serial.println("BLUE");
digitalWrite(BluePin, HIGH);
delay(100);
}
}
프로젝트를 위해서 빨리 아두이노에 익숙해져야 될 것 같아서 더 열심히 공부를 해야겠다.