인텔® Galileo 보드용 고급 입력에 대한 자습서 2

문서

설치 및 설정

000006653

2022-06-10

구축하는 회로에는 두 개의 입력(마이크 및 터치 커패시터)과 2개의 출력(2개의 LED)이 있습니다. 모든 것을 배선하기 전에 사용 중인 입력 유형을 살펴보겠습니다.

마이크 센서

인텔의 마이크 센서는 아날로그 입력입니다. 이러한 유형의 입력은 물리적 세계에서 값을 받아 기계 읽기 가능한 값으로 변환한다는 것을 의미합니다. 그런 다음 이러한 값을 프로그램에서 사용합니다.

정전식 터치 센서

당사의 터치 센서는 디지털 입력입니다. 이러한 유형의 입력은 수신 값(true/false, 0/1)만 해석한다는 것을 의미합니다.

두 유형의 입력 간의 차이점을 이해하는 것이 중요합니다. 인텔® Galileo 보드에는 6개의 아날로그 입력 레이블 A0-A5가 있습니다. 아날로그 핀은 입력만 합니다. 아날로그 핀은 들어오는 전압 신호(0~5V)를 0~1023 사이의 정수 값으로 매핑합니다. 코드에서는 아날로그 기능을 사용하여 아날로그 값을 읽고 작성합니다.

핀 A0에서 들어오는 값에 "val"을 선언하고 할당합니다(0-1023 사이)
int val = analogRead(A0);
A0에서 들어오는 값을 기록합니다(값을 매핑한 후 0-255 사이)
analogWrite(13, val);

아날로그 기능 사용 방법과 시기에 대한 자세한 내용은 참조 가이드 를 참조하십시오.
analogRead 참조 정보
analogWrite 참조 정보

아날로그Write 기능이 있는 이유는 무엇입니까? 우리는 무엇을 쓰고 있습니까?

여기서는 PWM(Pulse Width 변조) 핀을 사용합니다. PWM의 작동 방식과 다음 섹션에서 사용할 방법과 시기를 살펴보겠습니다.

테스트 입력 값

  1. 브레드보드 전원:
    • Galileo 보드의 5 V 및 GND 핀에 점퍼 케이블 2개를 각각 연결합니다.
    • 해당 케이블의 두 끝을 +로 표시된 브레드보드의 수직 스트립에 연결합니다(PWR 및 GND를 나타냅니다).
    • 이 연결은 다른 모듈이 연결할 수 있도록 전체 수직 스트립에 전원을 공급합니다.
  2. 마이크 연결:
    • 마이크의 PWR 및 GND 핀에서 두 개의 점퍼 케이블을 브레드보드의 각 수직 트랙에 연결합니다.
    • 나머지 점퍼를 마이크에서 브레드보드 내부 섹션의 행에 연결합니다.
    • 그런 다음 같은 행의 점퍼 케이블을 핀 A0에 연결합니다.
  3. 터치 센서 연결:
    • 터치 센서의 PWR 및 GND 입력(마이크 케이블과 마찬가지로)을 연결합니다. 그런 다음 케이블 끝을 브레드보드 수직 PWR 및 GND 스트립에 연결합니다.
    • 최종 케이블을 브레드보드 내부 섹션의 행에 연결합니다.
    • 마이크와 다른 행이어야 합니다. 마지막으로, 동일한 행의 나머지 점퍼 케이블을 핀 2에 연결합니다.

다음 스케치를 업로드합니다. 직렬 모니터를 열어 무슨 일이 일어나고 있는지 확인합니다.

센서의 핀을 나타내는 두 개의 변수를 선언하고 할당합니다.

참고가변 선언 앞에 있는 단어 const 는 컴파일러에게 이 변수를 프로그램에서 업데이트할 수 없다는 것을 알려줍니다.

const int touch = 2;
const int sound = A0;
void Setup(){
Serial.begin(57600);
터치 센서의 핀 모드를 설정합니다.
pinMode(터치, INPUT);

}

참고사운드 센서는 아날로그 입력이므로 핀 모드를 설정할 필요가 없습니다.

void loop(){ // 선언 및 센서의 입력 읽기를 나타내는 두 개의 변수를 할당합니다.
int touch_input = digitalRead(touch);
int sound_input = analogRead(sound);
직렬 모니터에 값을 인쇄합니다.
Serial.print("sound: ");
Serial.println(sound_input);
Serial.print("touch: ");
Serial.println(touch_input);
Serial.println("");
다음 읽기 전에 10밀리초 대기
지연(10);

}