Raspberry Pi

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ク...
Raspberry Pi

Raspberry PiベアメタルプログラミングでPWM

ちょっと間が空きましたが、Raspberry Piをベアメタルでプログラムするシリーズの続きです。 今回はPWMを動かしてみました。コードは以下に置いてあります。 bare_matal_rpi_zero/pwm at maste...
Raspberry Pi

Raspberry Piを使ったシンセ「minisynth」を動かしてみた

「circle」というRaspberry Piのベアメタルプログラミング用ライブラリがあります。 rsta2/circle: A C++ bare metal environment for Raspberry Pi with...
Raspberry Pi

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

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

JSONなどのモジュールを追加(RPiベアメタルMicroPython)

Raspberry Pi版MicroPythonについてMicroPythonフォーラムで紹介したところ、「rshellが使えるかもね~」という反応がありました。 rshellについては使ったことが無かったので、調べてみたところbin...
Raspberry Pi

ベアメタルRPi版MicroPythonの最小限のテストが完了

昨日に続き、今日もRaspberry Pi版MicroPythonのテスト&デバッグを行い、esp8266/esp32用のテストと同じ項目をクリアしました。(実装に追加していないモジュールも多いので、機能的に同等とはいきませんが) 実...
Raspberry Pi

MicroPythonのテストに関するメモ

前回着手したMicroPythonのテストですが、とりあえずbasicsテストがパスするようになりました。(未実装によりskipしているものもありますが) 421 tests performed (12506 individual tes...
Raspberry Pi

MicroPythonのテストスイートを使ってみた

RPiベアメタル版MicroPythonもだいぶ機能追加が進んできたので、そろそろ自動テストが欲しくなってきました。そこで、手始めにMicroPython付属のテストスイートを調べてみました。 MicroPythonのテストスクリプト...
Raspberry Pi

日本語USBキーボードからのキー入力

Raspberry Pi用MicroPythonではUSBキーボードをサポートしていますが、実はこれまでは英語キーボードしかサポートしていませんでした。 私自身は、普段US配列のキーボードしか使わないので困らないのですが、日本国内では...
Raspberry Pi

Raspberry Pi ZeroでのJTAGデバッグ

Raspberry Pi ZeroをJTAG接続デバッグするのを試したことが無かったなあと思い、やってみました。 以前Interface誌の記事を見ながらRaspberry Pi2をJTAGデバッグしてみたときは、結構苦労した記憶があ...
Raspberry Pi

Raspberry PiのMailbox Property Interfaceの実験

Raspberry PiにはARMのCPUとBroadcomのGPUが同居しており、両者はmailboxという共有メモリを使ったインタフェースで情報交換ができます。 Mailboxには複数の「チャネル」があり、それぞれ交換できる情報の...
Raspberry Pi

Raspberry Piの画面をMicroPythonのコンソールにしてみた

前回はOLEDにMicroPythonのREPLを出力しましたが、FrameBufferオブジェクトであれば同様にREPLの出力先にすることができます。 Raspberry Piの画面にフレームバッファクラスを使って絵を描くのは以...