음
AVR은 ADC가 있는데, 이것은 XTAL의 clock을 받아서 분주해서 ADC clock으로 사용하는 군요.
뭐 16MHz MCU clock을 사용하면, 이를 128 등분하여 사용하면, ADC clock이 125kHz가 나오는 군요.
다시 ADC가 변환하는데 걸리는 시간은 ADC clock을 기준으로 몇 clock 소모되는가 보면,
보통 13 ADC clock 소모된다는 군요. (Diff. Mode는 25 ADC clock)
음 그렇다면, 하나의 sampling을 하려면, 음...다시 125kHz / 13 하면 (free running mode라고 가정),
9.62 k Sample / sec 가 되는 군요.
ADC conversion comple INT 를 설정해서 사용한다면, 초당 9.62k 개 의 interrupt가 뜨겠군요.
최대로 하면 도대체 얼마까지 sampling 할 수 있다는 건가???
인터럽트가 너무 자주 뜨면 다른 프로그램들이 곤란해 지겠는데요?
물론 인터럽트 루틴을 조금만 길게 해도 프로그램 돌지 않습니다.
간단하게 값 읽어서 배열에 저장하고 끝나는 수준으로 해야죠.