MicroPython

ESP8266/ESP32

MicroPythonのREPLをOLED出力(改良版)

以前作成した、MicroPythonのREPLをOLEDに出力するツールを少し改良し、以前はできなかった行の途中での編集の表示ができるようにしました。今回は動作はESP32-DevKitCで確認しています。 改良版は以下のリポジトリに...
Raspberry Pi

ベアメタルRPi版MicroPythonのテスト(2回目)

MicroPythonのソースコードに付属しているテストは7月に一度試しましたが、それから実装もテストコードも変化しているので、久しぶりにもう一度やってみました。 が、結果的に特に新しい話はありませんでしたので、この記事は単なる自分用...
Raspberry Pi

SDカードへの書き込み(RPiベアメタルMicroPython)

ベアメタルRaspberry Pi版MicroPythonでは、SDカードについては、読み込み機能のみを半年ほど前に実装していました。 SDカードを読む(RPiベアメタルMicroPython) – 楽しくやろう。 書き込み機能...
Raspberry Pi

Raspberry Pi用Speaker pHATをMicroPythonで鳴らしてみる

Raspberry PiのベアメタルMicroPythonで、PWMクラスを作って音声出力の実験ができたので、同様に音声出力ができる「I2S」についてもベアメタルプログラミングで鳴らす実験をしてみました。 I2SはPCMデータを送受信...
Raspberry Pi

PWMクラスの修正(RPiベアメタルMicroPython)

新しいAPIの仕様案に合わせて、先週追加したPWMクラスの実装を少し修正しました。 また、FIFOへデータを渡すメソッドも追加しました。 クロック関係は、別にクロックマネージャクラスを用意し、クロック自体をPWMクラスが触ること...
Raspberry Pi

MicroPythonのPWMクラス仕様案が登場

Raspberry Pi向けMicroPythonに実装中のPWMクラスのAPIについて、先日「どうするか検討中です」と書いたばかりですが、まさにこのタイミングでPWMクラスの仕様案が、開発者のD.P.Georgeさんから提示がありました。...
Raspberry Pi

Raspberry PiのPWMを用いたDA変換の実験

Raspberry Pi Zero WのPWMの後にローパスフィルターを付けて、DA変換でオーディオ帯域の信号を出力してみました。 これはGPIOピンに以下のようなRCからなるLPFを付加するもので、機能的にはZero以外のRaspb...
Raspberry Pi

PWMクラスを追加(RPiベアメタルMicroPython)

Raspberry PiのハードウェアPWMを制御するクラスをMicroPythonで書いたものが動作しましたので、次はこのクラスをCで再度実装し、MicroPythonのネイティブクラスにしました。 ロジックはほぼそのまま使用してい...
Raspberry Pi

Raspberry PiのPWM – ハードウェアPWMドライバをMicroPythonで書く(後編)

前編はこちら。 Raspberry Piは、ハードウェアPWMを2系統持っています。クロック源は共有されていますので、同期して動かすことができます。オーディオ出力の左チャネルと右チャネルの出力はこの2系統のPWMが使われています。...
Raspberry Pi

Raspberry Piのクロックマネージャ – ハードウェアPWMドライバをMicroPythonで書く(前編)

前回、Raspberry PiのPWMをベアメタルプログラミングで操作しました。 いつもだとこれをベアメタル版MicroPythonにPWMクラスとして追加するのですが、今回は1クッション置いて、まずはMicroPythonでPWMク...
ESP8266/ESP32

LCD(ST7735R)のMicroPythonドライバを更新

一年ほど前に作成(正確には修正ですが)した、160x120ピクセルのLCDのESP32(MicroPython)用ドライバにIssueが上がってきました。 pixel offsets · Issue #1 · boochow/Micr...
Raspberry Pi

ベアメタルRPi版MicroPythonのI2C.writetoを修正

ちょっと間が空きましたが、ベアメタルRaspberry Pi版MicroPythonのメモです。 先日、フォーラムのこちらのやり取りで、I2C.writeto()のrepeated STARTの仕様を私が間違えていたことが判明しました...
stm32

Nucleo-F767ZI + SSD1306(I2C)の接続

以下のやり取りで、MicroPythonのI2C APIについて一部誤解していたことが分かりました・・・ Pyboard + SSD1306 - Page 3 - MicroPython Forum 以下を実行すると、スレーブア...
ESP8266/ESP32

M5Stack + uPyCraftはいい感じに使えます(uPyCraftがv1.0に!)

M5Stack + クラウド経由の編集は今ひとつな感じでしたので、以前も紹介したuPyCraftをM5Stackと一緒に使ってみました。 uPyCraftも、もともとESP32ベースのボードをターゲットにしていますので相性はバッチリで...
ESP8266/ESP32

LoBo MicroPython for ESP32について

MicroPythonのESP32 portの派生版であるloboris portについてメモしておきます。 (2018/10/22追記:現在は、派生版ではなくメインラインのMicroPythonもpsRAMをサポートしているようです。バ...