파이썬 ADC 소스코드 질문(라즈베리파이)

조회수 950회

channels = [0x80, 0x90, 0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xF0]

ANALOG_CH = 7

def analogRead(idx):

data = [0x01, channels[idx], 0xFF]  <<- 1
r = spi.xfer(data)
adcValue = ((r[1]&0x03)<<8) + r[2]  <<-2
return adcValue

8x8 ADC를 이용한 라즈베리파이인데요 저기 1번은 0x01,0xFF를 왜 써준지 잘 모르겠구요 2번에는 왜 3을 비트and해주고 8을 시프트해주는건가요??

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)