Page 225 고등학교 프로그래밍 교과서
P. 225









스스로
스스로
해결하기 CdS 센서를 이용한 모터 제어 프로그램에서는 CdS 센서에 투과하는 빛을 줄이면 모터 속도가 느려지고 빛
해결하기
의 양이 증가하면 모터 속도가 빨라졌다. 이와는 반대로 동작하도록 빈칸을 채워 프로그램을 완성해 보자.

수정 요구 사항


• 빛의 양이 증가하면 모터의 속도가 느려진다.
• 빛의 양이 감소하면 모터의 속도가 빨라진다.




프로그램

01 int value, v1, v2;
02 int out[4] = {6, 9, 10, 11};
03 void setup( ) {
04 for (int i = 0; i < 4; i++)
05 pinMode(out[i], OUTPUT);
06 Serial.begin(9600);
07 }
08 void loop( ) {
09 value = analogRead(A0);
10 Serial.println(value);
11 v1 = map(value, 0, 1023, 10, 150);
12 v1 = (가) v1값을 150 ~ 10으로 변환
13 v2 = map(value, 0, 1023, 0, 10);
14 v2 = (나) v2값을 10 ~ 0으로 변환
15 analogWrite(6, v1);
16 for(int i=1; i<4; i++){
17 analogWrite(out[i], v2);
18 delay(500);
19 analogWrite(out[i], 0);
20 delay(50);
21 }
22 }




변수 a가 1~10까지 변할 때
프로그램 작성 시 빛
변수 b는 10~1까지 변하도록
센서와 모터 속도와의
하려면 다음 문장이 필요해!
관계를 생각해 봐!
b=(11-a);













2. 프로그래밍의 실제 Ⅰ 223






(책)2015프로그래밍-교과서3차심의본 본문.indb 223 2017-09-05 오후 4:16:57
   220   221   222   223   224   225   226   227   228   229   230