90188


Win10でVSCodeを使いRaspberry Pi PicoをPythonでプログラムしたいです。  
以下のページを参考にしています。

[VS CodeからRaspberry Pi Picoを動かす](https://hobby.houja.net/2021/05/01/310/)

このページの「●Pico-Stubの追加、こちらからzip・・・」にある"micropy"がどこにあるコマンドかわかりません。

またサンプル(LEDを光らせるだけ)で作ったコードでは以下のエラーが表示されます。

[code]

    例外が発生しました: ModuleNotFoundError No module named 'machine'
    
[/code]

どうすればいいかわかりません。教えてください。

追記１→解決しました  
コメントをいただき、参考にしてるサイト「遊び小屋」に書かれている内容を進めて行きました。  
micropy initの「Autocomp と Pylint を 選択後・・・」の項で

> MicroPy You don't have any stubs!  
>  MicroPy To add stubs to micropy, use micropy stubs add <STUB_NAME>

google翻訳によると "スタブを追加して" という内容でした。

追記２  
以下が動かそうとしているソースです。

[code]

    from machine import Pin
    import time
    
    led = Pin(25, Pin.OUT)
    
    while True:
        time.sleep(1.0) #1秒待機
        led.value(1)
    
        time.sleep(1.0) #1秒待機
        led.value(0)
    
[/code]

このコードで、  
1行目: Missing module docstringpylint(missing-module-docstring)  
1行目: Unable to import 'machine'pylint(import-error)  
2行目: standard import "import time" should be placed before "from machine
import Pin"pylint(wrong-import-order)  
というエラーが出ています。  
エラーの内容を説明できる程のスキルは当方にはありません。  
お力添えお願いします。

追記３  
oririさん、ありがとうございます。  
すごく助かります、ネットで見るみなさんのページが今のRaspberryPiのサイトとデザイが違っていてここでいいの？ という感じでした。  
また、microPythonがどんな形で(Pythonの一部か別のセットか)わかっていなかったのでダウンロード先がわかったことは嬉しいです。  
<https://micropython.org/download/>  
ただ、依然としてVSCodeでmicroPythonのPathが解決していません。  
OSの環境変数以外のPython、VSCodeでのPathの通し方がわかりません。


CC BY-SA 4.0
2022-07-17T04:53:13.793
90034
2022-07-25T10:38:39.320
2022-07-20T15:17:35.307
30826
30826
question
python windows vscode raspberry-pi
Win10でのVSCodeを使いRaspberry Pi PicoをPythonの作り方


現状が不明なので記して欲しい旨 コメントしたけど, 反応がない

質問は, IDEセットアップで躓いてる点の解決を望んでるようだけど  
この回答は, その点ではなく, **(事前に行うはずの) Picoのセットアップ** について, です  
(反応がないのは, Picoセットアップ行っていないなどで, 用語が伝わっていない可能性がある ため)

* * *

### ● Microcontrollers について

本家のサイト raspberrypi.com, その中の該当しそうなページ

  * [Microcontrollers](https://www.raspberrypi.com/documentation/microcontrollers/)
    * [RP2040](https://www.raspberrypi.com/documentation/microcontrollers/rp2040.html)
    * [Raspberry Pi Pico and Pico W](https://www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html)
    * [MicroPython](https://www.raspberrypi.com/documentation/microcontrollers/micropython.html)
    * [The C/C++ SDK](https://www.raspberrypi.com/documentation/microcontrollers/c_sdk.html)

(取説か何かに この辺りは記されているかと思うが, 念の為)

PC, あるいは Raspberry Pi などとは異なり, Raspberry Pi **Pico系統** はマイコン (Microcontroller)
と呼ばれています

  * 消費電力が少ない, RAMも少ない

  * OSは載らない (Real-time OSなら乗るかもしれないが, 汎用のは制限が厳しくムリ)
  * (Arduinoなどもこの類)

#### ● Firmware

汎用的な OSは搭載ムリなので, パワーオンと同時に予め書き込んでおいたプログラムが起動する, ことになる

MicroPythonは主に Microcontrollersをターゲットとした言語処理系で, firmware (ファームウェア)に書き込んでおき,
パワーオンと同時に起動することになる  
参考: firmware 単語検索 (<https://www.google.co.jp/search?q=firmware>)

(PCなどでは, ディスクから RAMへプログラムをロードし 制御を渡す。  
MicroPython (本体)は firmwareから直接起動する, ことが多い)

Firmware書き込み手順は, 上記 URLの 「MicroPython」参照

  * Picoの BOOTSEL ボタン押しながら USB接続
  * Drag and drop (あるいは代替手段)で MicroPython UF2 ファイルを指定
  * 正常に書き込めたことの確認に, REPL (Read-Eval-Print Loop) で動作確認するとよい

#### ● MicroPython

[MicroPython ドキュメンテーション](https://micropython-docs-
ja.readthedocs.io/ja/latest/)

  * [MicroPythonとCPythonの違い](https://micropython-docs-ja.readthedocs.io/ja/latest/genrst/index.html)
  * プラットフォーム固有のリファレンスとチュートリアル: 
    * [RP2 用クイックリファレンス](https://micropython-docs-ja.readthedocs.io/ja/latest/rp2/quickref.html)
    * その他: pyboard 用, ESP32 用など

MicroPython は CPython に似せてあるはずだが, 土俵が違うので相違点はそれなりにある  
また, プラットフォーム毎にもそれぞれ違いがある

四則演算程度ならば 同じように記述できるが  
`import micropython` とか(あるいはその他) CPythonでは当然動かない  
`import rp2` などの部分は, Pico以外では動かない  
統合開発環境 (IDE) での実行は, REPL 経由のはず (デスクトップ PCの CPythonでは当然動かないので)


CC BY-SA 4.0
2022-07-20T03:46:41.660
90099
2022-07-20T03:46:41.660
43025
90034
answer


自己解決しました。  
自分はずっとVSCodeのメニューバーにある「実行(R)」にある「デバックの開始」で実行と思っていました。  
正しくは「コマンドパレット(Ctrl+Shift+P)」からたどれる「Pico-Go」の"Run current file"コマンド？だとわかりました。  
とりあえずこのスレッドは解決としてします。  
ありがとうございます。


CC BY-SA 4.0
2022-07-25T10:38:39.320
90188
2022-07-25T10:38:39.320
30826
90034
answer