--->>> MCP 칩 사용 <<<---------------------
import time
import spidev
spi = spidev.SpiDev() #Spi 객체 생성
spi.open(0,0) # 0번채널 open
spi.max_speed_hz = 1000000
# MCP3008의 0번 채널에서 아날로그 값을 불러옴
def ReadVol(vol):
adc = spi.xfer2([1,(8+vol)<<4,0]) #SPI 통신을 사용하여 MCP3008에 명령을 전송하고 아날로그 값을 읽어옴.
data = ((adc[1]&3)<<8)+adc[2] #MCP3008에서 아날로그 값을 디지털 값으로 변환
return data
mcp3008 = 0 #MCP3008의 채널
# 디지털 값을 계산하여 아날로그 값으로 변환 및 출력
while True:
a_1 = ReadVol(mcp3008)
print('readvol:', a_1, 'Voltage:', 3.3*a_1/1024) #저항과 전압은 비례
time.sleep(0.5)