====== analogReadInit() ====== ''analogReadInit()''는 아날로그 입력 모듈의 샘플링 속도를 설정합니다. {{:commands:reference:analogreadinit.svg?900|analogReadInit 명령어 동작 흐름}} ''void analogReadInit(uint16_t sps)'' ===== 명령어 ===== ^ 명령어 ^ 인수 ^ 반환값 ^ 동작 ^ | ''analogReadInit(sps)'' | ''uint16_t sps'' | ''void'' | 아날로그 입력 모듈의 샘플링 속도를 설정합니다. | ===== 예제 ===== void setup() { Serial.begin(115200); // 자동완성 상수 사용 analogReadInit(IANALOG_SPS_250); // 아날로그 입력 모듈의 샘플링 속도를 설정합니다. } void loop() { for (uint8_t ch = 0; ch < 4; ch++) { Serial.print("CH"); Serial.print(ch); Serial.print(" = "); Serial.println(analogRead(ch)); // 지정한 채널의 원시 아날로그값을 읽습니다. } } ===== 주의사항 ===== * PGA, 입력 MUX, Single-shot 모드 등 SPS 이외의 설정은 변경하지 않는다. * 높은 SPS는 변환 대기시간을 줄이지만 현장 배선과 신호 노이즈에 따른 값 변동을 확인해야 한다. * 내부 ADS1118 최대 RATE는 860 SPS이며 같은 채널을 두 번 변환하므로 사용자가 요청할 수 있는 반환 목표 상한은 475 SPS이다. * ''analogReadInit(128)''은 ADS1118에 존재하지 않는 256 SPS가 아니라 가장 가까운 상위 단계인 250 SPS RATE를 사용한다. * SPI 통신과 함수 처리 시간이 추가되므로 실제 측정 SPS는 목표값보다 낮을 수 있다. * ''analogRead()''는 채널값 밀림 방지를 위해 같은 채널을 두 번 변환하므로 전체 채널 갱신시간 계산에 두 번의 변환시간을 반영해야 한다. ===== 같은 카테고리의 내장 명령어 ===== * [[commands:reference:analogread|analogRead() 상세 설명 보기]] * [[commands:reference:analogreadavg|analogReadAvg() 상세 설명 보기]] * [[commands:reference:analogreadavgf|analogReadAvgf() 상세 설명 보기]] [[commands:builtin|← 내장 명령어 리스트]]