Menu
CoddyTech

광 센서 스위치 핀

Coddy Arduino 여정의 입력 섹션에 포함된 레슨. 22개 중 14번째.

조명 모듈에는 자체적인 작은 칩인 비교기가 있어 임계값을 대신 처리해 줍니다. 실제 모듈에서는 작은 나사로 설정한 밝기 수준과 빛을 비교하고 DO 핀을 구동합니다. 밝을 때는 LOW, 어두울 때는 HIGH입니다. 이 보드에서 기준 밝기는 절반입니다.

DO는 디지털 신호이므로 버튼처럼 digitalRead()로 읽습니다. 모듈이 핀을 직접 구동하므로 풀업이 필요하지 않습니다. 일반적인 INPUT이면 됩니다.

pinMode(7, INPUT);

if (digitalRead(7) == HIGH) {
  // 어두움
}

빛이 변할 때만 메시지를 출력하려면 버튼 수업에서 배운 에지 개념을 사용하세요. 현재 읽은 값과 지난번 값을 비교하면 됩니다.

challenge icon

챌린지

쉬움

모듈의 DO는 7번 핀에 연결되어 있고 LED는 13번 핀에 연결되어 있습니다:

  • 7번 핀을 INPUT으로 설정합니다
  • DO가 HIGH(어두움)이면 LED를 켜고, 그렇지 않으면 끕니다
  • 측정값이 바뀌면 Dark 또는 Bright를 출력합니다

Run을 누르고, 빛 슬라이더를 가운데를 지나 양방향으로 움직인 다음 Check를 누르세요.

직접 해보기

const int sensorPin = 7;
const int ledPin = 13;

int lastDark = LOW;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  // 센서 핀을 INPUT으로 설정
}

void loop() {
  // DO를 읽고 어두울 때 LED를 켜기
  // 읽은 값이 바뀌면 Dark 또는 Bright를 출력
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

입력의 모든 레슨

직접 연습해 보세요: Arduino 플레이그라운드