2026年6月3日水曜日

mmbasic on raspberry pi pico/w(ドラフト)

 https://qiita.com/ksakabe/items/f14c89bdbeeadb3848ea にあるファームウエア群は

https://geoffg.net/picomite.html にある 

https://qiita.com/ksakabe/items/f14c89bdbeeadb3848eaで各々の比較がある

とりあへずPicoMiteRP2040をいれてみた

teratermは115200baudにして、受信をauto、送信をcr+lfにした

フルスクリーンエディタの起動と操作手順
  1. エディタの起動
    コマンドプロンプト(>)の状態で、以下のいずれかを入力・実行します。
    • EDIT と入力して Enter キーを押す
    • または、キーボードの F4 キー を押す
  2. プログラムの入力
    画面全体がエディタに切り替わります。キーボードで自由にBASICのコードを入力・編集してください。
  3. 保存してエディタを閉じる
    入力が終わったら、キーボードの F2 キー を押すと、プログラムを保存して元のコマンドプロンプト画面に戻ります。
  4. プログラムの実行
    プロンプトに戻ったら RUN と入力して Enter キーを押すことで、作成したプログラムを実行できます。
    [1, 2]

エディタ内の便利な機能(ショートカットキー)
エディタ起動中、画面の一番下の行にファンクションキーの機能が表示されます。主なショートカットキーは以下の通りです: [1]

  • F2 キー:プログラムを保存してエディタを終了する
  • F4 キー:変更を破棄して(保存せずに)エディタを終了する
  • F7 キー:行のコピー
  • F8 キー:行の切り取り(カット)
  • F9 キー:行の貼り付け(ペースト)
  • F10 キー:検索と置換 [1]
ーーーーーーーーーーーーーーーーーーーーーーー
Dim Float t, h 
Dim Integer pin = 22 ' 使用するピン番号 
 Print "DHT温湿度センサーの測定を開始します..." 
 Pause 1000 ' センサーの起動待ち
Do ' DHTタイプの指定 (DHT11またはDHT22をコメントアウトで切り替え) 
 DHT pin, DHT22, t, h 
' DHT pin, DHT11, t, h 
' エラーチェック 
 If t = -999.0 Then Print "センサーの読み取りに失敗しました" 
 Else Print "温度: "; Str$(t, 3, 1); " °C" Print "湿度: "; Str$(h, 3, 1); " %" 
 EndIf ' 2秒間隔で測定 (DHTの仕様上、最低でも2秒の間隔をあけてください) 
 Pause 2000 
Loop

そのほかhttp://blog.livedoor.jp/yokoshima_m/tag/MMBASICも参考になりそう。。。

wioterminal arduino (ドラフト)

 #define LGFX_WIO_TERMINAL

#define LGFX_AUTODETECT
#define LGFX_USE_V1
#include <LovyanGFX.hpp>
#include <LGFX_AUTODETECT.hpp>

static LGFX tft;

void setup() {
  // 液晶の初期化など
  tft.begin();
  digitalWrite(LCD_BACKLIGHT, HIGH);
  tft.setRotation(1);
  tft.fillScreen(TFT_BLACK);
}

void loop() {
  // ランダムな場所に四角形や円、文字列を描画する
  // ランダムな座標
  int x = random(0, 320);
  int y = random(0, 240);
  int r = random(10, 100);

  // ランダムな色
  int red = random(0, 256);
  int green = random(0, 256);
  int blue = random(0, 256);
  int color = tft.color565(red, green, blue);

  switch (random(0, 3)) {
    case 0:
      // 円
      tft.fillCircle(x, y, r, color);
      break;
    case 1:
      // 四角形
      tft.fillRect(x - r, y - r, r * 2, r * 2, color);
      break;
    case 2:
      // 文字列
      tft.setTextDatum(CC_DATUM);
      tft.setTextColor(color);
      tft.drawString("Wio Terminal", x, y);
  }
}

2026年5月17日日曜日

microdot on raspico-w(ドラフト)

 MicroPythonでWebサーバーフレームワーク「Microdot」を動かすには、マイコンをWi-Fiに接続し、ソースコードをマイコンに転送します。ESP32やRaspberry Pi Pico Wなどのネットワーク対応ボードを使用し、以下の手順に沿って設定を行います。

1. 必要な環境の準備
  • マイコンボード: Wi-Fi通信ができる ESP32 または Raspberry Pi Pico W
  • 開発ツール: コードの記述と転送には Thonny IDE を使うのが最も簡単です。
2. Microdotのインストール
Thonny IDEのパッケージ管理機能を使うか、直接ファイルを転送してインストールします。
方法A: Thonnyのパッケージマネージャーを使う(簡単)
  1. マイコンをPCに接続し、Thonnyで認識させます。
  2. メニューの「ツール」>「パッケージ...」を開きます。
  3. 検索バーに microdot と入力して検索します。
  4. 検索結果から microdot を選択し、「インストール」をクリックします。
方法B: ソースコードを直接転送する
  1. GitHubのMicrodotリポジトリ にアクセスします。
  2. 必要な microdot.py ファイル(および必要に応じて microdot_asyncio.py などの拡張ファイル)をダウンロードします。
  3. Thonnyを使用して、マイコンのルートディレクトリ(/)にファイルを保存します。
3. 動かしてみる(サンプルコード)
Microdotを利用して、Webブラウザに「Hello, Microdot!」と表示させる最もシンプルなサーバーのプログラムです。Thonnyのエディタに以下のコードを貼り付けます。
python
from microdot import Microdot
import network

# 1. Wi-Fiに接続
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('YOUR_SSID', 'YOUR_PASSWORD') # SSIDとパスワードを書き換えてください

while not wlan.isconnected():
    pass

print('Network config:', wlan.ifconfig())

# 2. Microdotのインスタンスを作成
app = Microdot()

# 3. ルート(/)にアクセスした時の処理を定義
@app.route('/')
def index(request):
    return 'Hello, Microdot!'

# 4. サーバーの起動
app.run(port=80)
コードは注意してご使用ください。
4. 実行と確認
  1. コード内の 'YOUR_SSID''YOUR_PASSWORD' を、ご自身のWi-Fi環境に合わせて書き換えます。
  2. Thonnyの実行ボタン(または F5 キー)を押してプログラムを実行します。
  3. Thonnyのシェル(ターミナル)画面に、マイコンに割り当てられたIPアドレス(例: 192.168.x.x)が表示されます。
  4. PCやスマートフォンのWebブラウザを開き、アドレスバーにそのIPアドレスを入力してアクセスします。ブラウザに「Hello, Microdot!」と表示されたら成功です。