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

MCP23017Adapter_M5Stack
Joseph Halfmoon

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

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

レトロな(9) 現物(コンパチ品だけれども)入手。Z80, 8085, 8088

compatibles_Z80_8085_8088
Joseph Halfmoon

昨年、第5回で8080、8085、Z80のハードウエアについて知ったような事を記述。第6回では今度は8080、Z80、8086のレジスタセットについてこれまた記述。でも「記述」だけで現物動かしてなかったのが気になって夜も眠れなかったデス。そこで今回は現物デバイスを入手。感慨もヒトシオだけれども動かす算段を考えないと。 “レトロな(9) 現物(コンパチ品だけれども)入手。Z80, 8085, 8088” の続きを読む

PIC三昧(27) PIC16F18855、CWGでフル・ブリッジ駆動波形を生成

FullBridgeFwdRev
Joseph Halfmoon

前回ハーフ・ブリッジ駆動波形を生成したので、今回はフル・ブリッジです。モータを駆動するためのHブリッジ回路を念頭にCWGを設定してみました。まあブリッジ回路の現物が無いのでとりあえずAD2のロジアナ・モードでCWGの出力波形を観察してみただけですが。まあ正転、逆転できそうな感じではあります。早く実験用の部品買えよ。 “PIC三昧(27) PIC16F18855、CWGでフル・ブリッジ駆動波形を生成” の続きを読む

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端子数を大幅拡張” の続きを読む

モダンOSのお砂場(83)UNO R4でFreeRTOS、Renesas RA4M1基礎知識

UNOR4_EC
Joseph Halfmoon

ArduinoやFreeRTOSのAPIレベルから少しハードよりに「ダイブ」しようとしてルネサスRA4M1マイコンについて無知なことを露呈しました。今回はタイマなどの周辺ハードウエアの直接アクセスをするための準備作業として、ルネサス様の用語など基礎知識を勉強したいと思います。 “モダンOSのお砂場(83)UNO R4でFreeRTOS、Renesas RA4M1基礎知識” の続きを読む

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

Selet500HzSineWave
Joseph Halfmoon

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

モダンOSのお砂場(82)UNO R4でFreeRTOS、ブラウザからUNO R4のLEDを操作

UNOR4_UART_BlockDiagram
Joseph Halfmoon

手元で使っているArduino UNO R4は「お求めやすい」Minimaです。WiFiの搭載はありません。そこで2番目のUARTを介して伝統的なUSBシリアルインタフェースFT232RLを経由してホストPCへ接続。ホスト上で動作するPythonスクリプトでラズパイ上で動いているMQTTブローカからの指令を得ることに。 “モダンOSのお砂場(82)UNO R4でFreeRTOS、ブラウザからUNO R4のLEDを操作” の続きを読む

GoにいればGoに従え(44) ラズパイPico、USB HIDデバイスその1

GreatingFromHIDa
Joseph Halfmoon

ラズパイPicoのTinyGoはUSBのデバイス側に対応。いつもUSBシリアルにはお世話になっておるので、別なクラスということでHIDキーボード・クラスを使ってみることにいたしました。キーボードそのものを作ろうというのではなく、別途データ転送にちょろまし使用の目論見。今回はPCへ文字を送信できるところを確認。
“GoにいればGoに従え(44) ラズパイPico、USB HIDデバイスその1” の続きを読む

PIC三昧(26) PIC16F18855、CWGでハーフ・ブリッジ駆動波形を生成

CWG01
Joseph Halfmoon

今回はCWG(Complementary Waveform Generator)の練習1回目です。パワエレ系の人々にはお馴染みさんのハーフブリッジとかフルブリッジとかを駆動するための波形を作り出してくれるもの。パワエレ素人の年寄はインバータといわれると反射的にロジックを思い浮かべてしまう。ダメな私。

“PIC三昧(26) PIC16F18855、CWGでハーフ・ブリッジ駆動波形を生成” の続きを読む

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

M5Stack_AD9837board
Joseph Halfmoon

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

モダンOSのお砂場(81)UNO R4でFreeRTOS、第2のUARTで指令を送る(だけ)

UNOR4_Serial1_DUT
Joseph Halfmoon

前回は規定温度を超えでPassiveブザーをPWMで鳴らす機能を追加。今回は第2UARTを使って外部から「指令」を受信する機能を付け加えたいと思います。UNO R4はUSBシリアルに向いているチャネルとは別にもう一本UARTを使えるのでこれとのやり取りをTask1にお任せします。今のところ指令を受信するだけだけれども。
“モダンOSのお砂場(81)UNO R4でFreeRTOS、第2のUARTで指令を送る(だけ)” の続きを読む

STM32三昧(7) Cube IDE、TIMER6+DACで疑似ノイズ波生成、Nucleo

LFSR8bit_10us
Joseph Halfmoon

STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(ハードウエア抽象化レイヤ)を試用中。前回はDACが内蔵する三角波生成機能を使ってみました。今回はもう一つの波形生成機能「疑似ノイズ生成器」を使ってみます。LFSR(リニア・フィードバック・シフト・レジスタ)で生成。
“STM32三昧(7) Cube IDE、TIMER6+DACで疑似ノイズ波生成、Nucleo” の続きを読む

部品屋根性(113) AD9837、プログラマブル波形生成器、M5Stackで生成テスト

AD9837_DUT_wM5Stack
Joseph Halfmoon

今回試用してみるデバイスはDDS(ダイレクト・デジタル・シンセサイザ)です。正弦波、三角波、矩形波などの波形をお好みでシンセサイズしたのち、DAコンバータを介してアナログ出力できるもの。ディープな用途には必携?らしいデバイスであります。動作させるためにはホストのマイコン必要。今回はM5Stackを使ってテスト。

“部品屋根性(113) AD9837、プログラマブル波形生成器、M5Stackで生成テスト” の続きを読む

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

PWMWaveForm

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

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