CDS光センサーでAD変換(アナログ→デジタル変換)
ラズパイPicoの3.3V出力ピンをCDS(光センサー)につないで指定した電圧以下になったらLEDが点滅が消える回路です。
CDS光センサー
回路図
MicroPythonプログラム
# ハードウェア関連のライブラリを読み込み import machine # 時間関連のライブラリを読み込み import utime # GP17(22Pin)を出力ピンに設定、プルダウン(初期値):0 led = machine.Pin(17, machine.Pin.OUT,machine.Pin.PULL_DOWN) # ADC0(31Pin)をADC変換ピンに設定 cds = machine.ADC(0) # 永久リピート while True: # read_u16() ・・・アナログ値を読込み[0-65535]の整数を返す関数 # 16bit・2進数の最大値:1111111111111111 ⇒ 10進数の最大値:65535 # 3.3/65535の意味:電圧の最大値3.3Vを、65535という数値にあてはめるための計算 adc = cds.read_u16() * (3.3 / 65535) print(adc) # 2.6V以上のとき実行 if adc > 2.6: # LEDをON led.value(1) # 0.2秒待機 utime.sleep(0.2) #print(adc) # LEDをOFF led.value(0) # 0.2秒待機 utime.sleep(1) else: # LEDをOFF led.value(0)