====== analogRead() ====== ''analogRead()''는 지정한 채널의 원시 아날로그값을 읽습니다. {{:commands:reference:analogread.svg?900|analogRead 명령어 동작 흐름}} ''int analogRead(uint8_t pin)'' ===== 명령어 ===== ^ 명령어 ^ 인수 ^ 반환값 ^ 동작 ^ | ''analogRead(pin)'' | ''uint8_t pin'' — MPAINO에서는 ''0'' ~ ''19''를 아날로그 입력 모듈 전체 채널 번호로 사용 | ''int'' | 지정한 채널의 원시 아날로그값을 읽습니다. | ===== 예제 ===== MPAINO-8A8R(T)에 X 입력 모듈 2개를 연결하고 Arduino IDE에서 **Analog Input Module → X2**를 선택한 예제입니다. X1의 CH0은 ''0'', X2의 CH0은 ''4''입니다. void setup() { Serial.begin(115200); } void loop() { const int first = analogRead(0); // X1 CH0의 원시 아날로그값을 읽습니다. const int second = analogRead(4); // X2 CH0의 원시 아날로그값을 읽습니다. Serial.print(F("X1 CH0: ")); Serial.println(first); Serial.print(F("X2 CH0: ")); Serial.println(second); delay(500); } ===== 주의사항 ===== * MPAINO에서 ''analogRead(0~19)''의 반환값은 전압, 전류, 온도 단위로 변환된 값이 아니라 ADS1118 원시 ADC 값이다. * 4~20mA 용도로 소프트웨어 컷과 단선 판정이 필요하면 MPINO는 ''analogRead2(A핀)'', MPAINO는 ''analogRead2(모듈 채널)''을 사용한다. * 샘플링 속도는 ''analogReadInit(sps)''로 설정할 수 있고, 설정하지 않으면 ''analogRead()'' 기본값을 따른다. * 평균 샘플 수는 최대 ''20''이며 ''samples = 0'' 또는 메모리 확보 실패 시 현재 원시값을 반환한다. * 두 평균 함수를 모두 사용하면 각각 별도 동적 버퍼를 확보하므로 SRAM 사용량이 증가한다. * MPAINO 아날로그 입력 모듈의 딥스위치와 실제 배선이 입력 종류와 일치해야 한다. ===== 같은 카테고리의 내장 명령어 ===== * [[commands:reference:analogreadinit|analogReadInit() 상세 설명 보기]] * [[commands:reference:analogreadavg|analogReadAvg() 상세 설명 보기]] * [[commands:reference:analogreadavgf|analogReadAvgf() 상세 설명 보기]] [[commands:builtin|← 내장 명령어 리스트]]