노브 값을 전압으로 변환하기
Coddy Arduino 여정의 입력 섹션에 포함된 레슨. 22개 중 9번째.
1023의 측정값은 5V를 의미하므로 각 단계는 1볼트의 5 / 1023입니다. 측정값을 볼트로 변환하려면 곱하세요:
int reading = analogRead(A0);
float volts = reading * 5.0 / 1023.0;
Serial.println(volts);소수점이 중요합니다. reading * 5 / 1023은 정수만 사용하므로 정수 나눗셈이 되어 소수 부분을 버립니다. 측정값이 512이면 2.5가 아니라 2가 됩니다. 5.0은 계산에서 소수점을 유지하게 합니다.
순서도 중요합니다. reading / 1023 * 5.0은 먼저 두 정수를 나누므로, 1023보다 작은 모든 측정값에서 결과가 0입니다.
Serial.println()은 float을 2.50처럼 소수점 이하 두 자리로 표시합니다.
챌린지
쉬움노브는 A0에 연결되어 있습니다. 핀의 전압을 출력하세요:
- A0을 읽어
int에 저장하세요 - 값을
float형식의 전압으로 변환하세요:reading * 5.0 / 1023.0 - 전압을 출력한 다음 100 ms 기다리세요
Run을 누르고, 노브를 돌린 다음 Check를 누르세요.
직접 해보기
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// reading을 볼트 단위로 변환하고, 출력한 다음 100 ms 기다립니다
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
입력의 모든 레슨
직접 연습해 보세요: Arduino 플레이그라운드