MicroPython的午睡(143)RPi PicoでM5Stackを挿げ替える

RPIPCO_SOFTDMA_SRAM_schematic
Joseph Halfmoon

たまたまその上でMicroPythonやっていたというだけで「ソフトウエア制御DMAC」のシーケンサと化していたM5Stackです。折角のM5Stackを単なるシーケンサに使うのはモッタイナイ。そこで今回「シーケンサ」ホストを台数に余裕のあるRaspberry Pi Pico機に変更。M5Stackはお役目から解放。
“MicroPython的午睡(143)RPi PicoでM5Stackを挿げ替える” の続きを読む

MicroPython的午睡(142)M5Stack、SoftI2Cで無理やりSRAM初期化

SOFTI2Connection
Joseph Halfmoon

前回、MicroPython制御のDMAコントローラもどきにSRAMモジュールを接続。一応、読み書き出来ているのですが、非常に不安定。その嫌疑はIOExpanderを接続しているI2Cバスにかかりました。I2C操作が失敗していることが多いみたいです。まずは信号品質のチェック?そして無理やりSRAMの初期化ができるところまで。 “MicroPython的午睡(142)M5Stack、SoftI2Cで無理やりSRAM初期化” の続きを読む

MicroPython的午睡(141)M5Stack、SRAMモジュール読み書き、ダメダメよ

M5Stack32KBSRAMmodule_schematic
Joseph Halfmoon

前回、MicroPythonのソフト制御のDMAコントローラ一丁あがりとぬか喜び。早速制御対象のSRAMモジュールを組立。8085風味の8ビット・マルチプレクス・バス接続です。ジャンパ配線多過ぎ。MicroPython制御でメモリに読み書きは出来るみたいなんだけれども信頼性ダメダメ。嫌疑はI2Cバスに。。。

“MicroPython的午睡(141)M5Stack、SRAMモジュール読み書き、ダメダメよ” の続きを読む

MicroPython的午睡(140)M5Stack、ソフト制御でバスサイクル生成

M5Stack8085SoftDMA_busCycleEC
Joseph Halfmoon

前回は古いハードを掘り起こし、M5StackのI2Cバス(3.3V)の先に5Vの外部電源動作のIOExpander MCP23017を2個接続OKなことまで確認しました。今回はMCP23017を制御して古代の8ビット8085風味のバスサイクルを作り出してみます。MicroPython制御のDMAコントローラ一丁あがり? “MicroPython的午睡(140)M5Stack、ソフト制御でバスサイクル生成” の続きを読む

MicroPython的午睡(139)M5Stack、MCP23017 2個接続、異電源

M5Stack8085DMA_BB.PNG
Joseph Halfmoon

前回前々回とI2C接続のIO Expander、MCP23017をM5Stackに接続するの回でした。シツコク今回も接続。以前と異なるのは「同じI2Cバスに2個接続」「I2Cバスは3.3VだけれどもIO Expanderは外部5V電源」という点。別シリーズで扱っている古代のマイコンのDMAコントローラにするためね。
“MicroPython的午睡(139)M5Stack、MCP23017 2個接続、異電源” の続きを読む

MicroPython的午睡(138)M5Stack、MCP23017をIO拡張アダプタ化

MCP23017Adapter_M5Stack
Joseph Halfmoon

前回、M5StackにMCP23017 IOExpanderを取り付けてGPIOを増やしてみました。しかし前回はブレッドボード上での実験でした。これでは実際に使おうというときにイチイチ組み立て必要でメンドイ(ちょくちょく配線間違いもするし。。)といことで例によってM5Stack側面に接続する「アダプタ・ボード」化。

“MicroPython的午睡(138)M5Stack、MCP23017をIO拡張アダプタ化” の続きを読む

MicroPython的午睡(137)M5Stack UIFlow2、IO端子数を大幅拡張

M5Stack_MCP23017_DUT
Joseph Halfmoon

M5Stackは筐体の側面に各種端子が出ています。結構な数があるようでいて、それぞれの用途を活かして使おうと考えると「単なるGPIO」の数がちょっと足らない感じがしないでもない。そこで今回はIO ExpanderをM5Stackに接続してみました。1チップの接続でなんと16本のGPIO増。最大8チップで128本MAX。
“MicroPython的午睡(137)M5Stack UIFlow2、IO端子数を大幅拡張” の続きを読む

MicroPython的午睡(136)M5Stack UIFlow2、DDSの出力周波数設定

Selet500HzSineWave
Joseph Halfmoon

前回はM5StackにDDS、AD9837を接続し出力波形を選択可としました。しかし肝心の周波数については400Hz固定になってました。そこで今回は周波数設定UIを追加、1Hzから999Hzの正弦波、三角波、矩形波を生成できるようにいたしました。なりゆきで「UI」つくっているので無駄が多い感じ。なんとかしたいが。。。
“MicroPython的午睡(136)M5Stack UIFlow2、DDSの出力周波数設定” の続きを読む

MicroPython的午睡(135)M5Stack UIFlow2、DDSで波形出力

M5Stack_AD9837board
Joseph Halfmoon

前回生成した25MHzクロックを使って別シリーズにてDDS、AD9837を駆動、美麗な正弦波を得ることができました。ただブレッドボード接続だったので配線が汚いです。そこでM5Stackの側面のピンソケットに差し込める「アタッチメント」ボートを作製。チェック不十分にて大慌て。壊れずに動いて良かった。 “MicroPython的午睡(135)M5Stack UIFlow2、DDSで波形出力” の続きを読む

MicroPython的午睡(134)M5Stack UIFlow2、CLOCK出力

PWMWaveForm

今回新デバイスをM5Stackに接続せんと思ったら外部クロックを必要とするものでした。適切そうな周波数は25MHzとな。そこで今回はM5Stack上のMicroPythonで25MHzクロックを生成。けれどAD2のFs=100MHzしかないので、生成した25MHzクロックを16分周して周波数を測定してみます。メンドイ?

“MicroPython的午睡(134)M5Stack UIFlow2、CLOCK出力” の続きを読む

MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ

M5Stack_DHT11_DUT_EC
Joseph Halfmoon

前回はUIFlow2版MicroPython搭載のM5Stackに定番の気圧センサBMP280を接続。今回はこれまた定番の温湿度センサDHT11を接続してみます。過去回でESP32版MicroPythonでDHT11を制御していたのでお楽。M5Stackらしくお愛想にLCDに温湿度を表示するようにいたしました。
“MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ” の続きを読む

MicroPython的午睡(132)M5Stack UIFlow2、BMP280圧力センサ

BMP280DUT
Joseph Halfmoon

前回はM5StackのI2Cに接続されているオンボードのデバイスをスキャンしてみました。同じI2Cバスが側面のGroveコネクタへも出力されております。よってここにI2Cデバイスを接続すれば簡単に使える筈。今回はここに定番の圧力センサ、Bosch BMP280を接続してみます。でもドライバはどうする? “MicroPython的午睡(132)M5Stack UIFlow2、BMP280圧力センサ” の続きを読む

MicroPython的午睡(131)M5Stack UIFlow2、I2Cスキャン

I2CscanResults
Joseph Halfmoon

前回SPI経由でmicroSDカードへアクセス。今回はI2Cをスキャンしてみます。M5Stack内蔵のI2C接続デバイスあり、既に初期化済の筈。それとの競合がチト心配ではあるのですがMicroPython側のI2Cインスタンスを作ってスキャンをかけてみます。このI2C信号が側面ピンソケットやGroveコネクタにも接続。

“MicroPython的午睡(131)M5Stack UIFlow2、I2Cスキャン” の続きを読む

MicroPython的午睡(130)M5Stack UIFlow2、microSDマウント

M5StackSDCardSlotEC
Joseph Halfmoon

前回はM5Stackの前面パネル下に3個あるボタンを押してみました。今回は側面(下側)に移ってmicroSDカードスロットにアクセスしてみたいと思います。SDカードアクセスはESP32用の標準的なMicroPythonと共通ではあるものの、M5Stackのハードウエア特有の設定をしないとなりません。

“MicroPython的午睡(130)M5Stack UIFlow2、microSDマウント” の続きを読む