トップ 一覧 検索 ヘルプ RSS ログイン

PRG-py-xiao-adcの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
tips-SeeeduinoXIAO で ADC のテスト
! TEST 1

 import board
 import analogio
 import time
 
 adc0 = analogio.AnalogIn(board.A3)
 
 COUNT = 100
 
 while True:
    for i in range(COUNT):
        print(i,",",adc0.value)
        time.sleep(0.01)
    time.sleep(0.5)
    




! TEST 2
 # CircuitPython for Seeeduino XIAO
 #
 # >>> import board
 # >>> dir(board)
 # 
 # >>> import microcontroller
 # >>> dir(microcontroller.pin)
 # XIAO
 
 import board
 import microcontroller
 import digitalio
 import analogio
 import pulseio
 import time
 
 print("# Blink LED with PWM/ADC")
 
 PWM_FREQ = 5000
 PWM_HIGH = 65535
 
 led11 = pulseio.PWMOut(microcontroller.pin.PA19, frequency = PWM_FREQ, duty_cycle = PWM_HIGH)
 led12 = pulseio.PWMOut(microcontroller.pin.PA18, frequency = PWM_FREQ, duty_cycle = PWM_HIGH)
 led13 = pulseio.PWMOut(board.D13, frequency = PWM_FREQ, duty_cycle = PWM_HIGH)
 
 COUNT = 50
 
 adc0 = analogio.AnalogIn(board.A0)
 
 def get_duty(count):
    if i < COUNT:
        duty = PWM_HIGH - int(i * PWM_HIGH / (COUNT - 1))
    else:
        duty = int((i - COUNT) * PWM_HIGH / (COUNT - 1))
    return duty
 
 while True:
    print(adc0.value)
    for i in range(COUNT * 2):
        led11.duty_cycle = get_duty(i)
        time.sleep(0.01)
 
    for i in range(COUNT * 2):
        led12.duty_cycle = get_duty(i)
        time.sleep(0.01)
 
    for i in range(COUNT * 2):
        led13.duty_cycle = get_duty(i)
        time.sleep(0.01)