【Raspberry Pi Pico】私的チュートリアル

はじめに

  • Raspberry Pi Pico Wを買いました

  • いろいろ試したので、サンプルコードだけ載せておきます

  • 環境:micropython (Thonny)

1. ボード上LEDでLチカ

LEDの点灯と消灯を、1秒毎に繰り返すサンプルコード

import machine  # なくても動作するが、一応記述しておく
import utime  # こっちは必要

led = machine.Pin('LED', machine.Pin.OUT)  # 内臓LEDにつながってるPINを定義

while True:  # 無限loop
    led.on()  # LEDを点灯状態にする
    utime.sleep(1)  # 1秒間、処理を停止する
    led.off()  # LEDを消灯状態にする
    utime.sleep(1)  # 1秒間、処理を停止する

2. BOOTSELボタンの活用

BOOTSELボタンの押下を検知するサンプルコード

import machine  # なくても動作するが、一応記述しておく
import rp2  # なくても動作するが、一応記述しておく
import utime  # こっちは必要

led = machine.Pin('LED', machine.Pin.OUT)  # 内臓LEDにつながってるPINを定義

while True:  # 無限loop

    if rp2.bootsel_button() == 1:  # bootselボタンが押下状態の場合
        led.on()  # LEDを点灯状態にする
    else:
        led.off()  # LEDを消灯状態にする
    utime.sleep(0.1)  # 0.1秒間、処理を停止する

3. 内臓温度センサ値の取得

内臓CPU温度センサの確認(公式にもあるやつの改変)
実際の値は結構ぶれるので、センサの絶対制度は低い

import machine  # なくても動作するが、一応記述しておく
import rp2  # なくても動作するが、一応記述しておく
import utime  # こっちは必要

def read_temperature_on_cpu():
    reading = sensor_temp.read_u16() * conversion_factor
    temperature = 27 - (reading - 0.706)/0.001721
    return temperature

sensor_temp = machine.ADC(4)  # Analog Digital Convertor
conversion_factor = 3.3 / (65535)  # 変換用の係数の定義

while True:  # 無限loop

    if rp2.bootsel_button() == 1:  # bootselボタンが押下状態の場合
        cpu_temp = read_temperature_on_cpu()
        print("[temp] : {}(℃)".format(cpu_temp))

    utime.sleep(0.1)  # 0.1秒間、処理を停止する

実行時の結果
ボタン押下で0.1秒毎に出力しても結構ぶれている

以上。

参考URL


この記事が気に入ったらサポートをしてみませんか?