아두이노 아날로그핀 연습 문제


1. 가변저항에 노브(knob)가 연결되어 이거을 돌리면 출력이 0~1023 사이의 값이 나온다고 가정하자. 이것으로 부저의 주파수(31~4978Hz)를 조절하는 프로그램을 작성하라.


2. 아날로그 광량센서를 이용하여 주변이 어두워지면 LED가 켜지고 밝아지면 꺼지는 프로그램을 작성하라.


3. X축, Y축, 버튼이 달린 조이스틱이 아날로그핀과 디지털핀에 연결되었다고 가정하자. X축 값과, Y축 값, 버튼 상태를 시리얼 터미널에 출력하는 프로그램을 작성하라.


4. 조이스틱의 버튼이 눌렸다면 X축의 위치에 따라 부저의 주파수가 변하는 프로그램을 작성하라. 버튼이 눌려지지 않았다면 부저에서는 소리가 나지 않아야 한다.


5. 아두이노의 tone()함수는 ISR 내부에서 사용할 수 없다. 이 사실에 유의하여 조이스틱의 버튼이 눌리는 순간에 '도레미' 음이 발생하도록 프로그램을 작성하라. 다음 함수를 이용해야 한다.


#define BUZ 11

void melody() {

tone(BUZ, NOTE_C4);

delay(100);

tone(BUZ, NOTE_D4);

delay(100);

tone(BUZ, NOTE_E4);

delay(100);

noTone();

}



Posted by 살레시오
,