MicroPython的午睡(16) ラズパイPico、PIOで74HC595制御、簡単

PIO_74HC595_LGANA
Joseph Halfmoon

前回は、Raspberry Pi PicoのProgramable IO(PIO)が可能性無限大、みたいな話を書きましたが、オシロで波形を観察したにとどまりました。今回はその威力を実地に確かめるべく、前々回の7セグLED4桁駆動回路に適用してみます。一撃で任意の波形を作れるPIOがあると本当に楽だ。 “MicroPython的午睡(16) ラズパイPico、PIOで74HC595制御、簡単” の続きを読む

MicroPython的午睡(15) ラズパイPico、プログラマブルIOの威力

Raspberry Pi Pico Programmable IO DUT
Joseph Halfmoon

Raspberry Pi PicoのMCU RP2040の大きな特徴がPIO(Programable IO)とよぶ、IO制御の仕組みだと思います。プログラム可能なステートマシンでIO端子を直接制御するもの。可能性無限大。そしてMicroPythonからでも「プログラム」可能でした。まずは今回はお試し。ちょっとした波形を作って観察してみます。 “MicroPython的午睡(15) ラズパイPico、プログラマブルIOの威力” の続きを読む

MicroPython的午睡(14) ラズパイPico、7セグ4桁、とりあえずタイマ駆動

Raspberry Pi Pico with 7 segment LED
Joseph Halfmoon

前回までLEDの4個ばかりでラズパイPicoのマルチコアの動作とかを確かめてきました。今回、Picoの機能を活かしても少しIOを触ってみるために外付けのハードを追加しました。とはいえLEDに変わりありません。が、4桁の7セグLEDなのでダイナミック駆動必須です。今回から時間縛りがあって多ピンの連動が必要なIO操作をやって行く予定です。 “MicroPython的午睡(14) ラズパイPico、7セグ4桁、とりあえずタイマ駆動” の続きを読む

トホホな疑問(33) BBC micro:bitのピン番号にハマる。Arduino環境にて

Arduino_Blink on BBC micro:bit
Joseph Halfmoon

BBC micro:bitについては別シリーズ「ブロックを積みながら」でテキストでソースを書かずに使ってきました。デバッガ等も使用せず。もっぱらprintfデバッグ。しかし、だんだんとC/C++で「普通に」書かないとならない領分に踏み込みそうな気がします。それにデバッガも使いたい。PlatformIOあるし、簡単だし、などと思っていたらハマりました。単なるピン番号に。 “トホホな疑問(33) BBC micro:bitのピン番号にハマる。Arduino環境にて” の続きを読む

MicroPython的午睡(13) ラズパイPico、マルチコアの排他制御など

RPiPicoTitle
Joseph Halfmoon

前回、MicroPythonからでもラズパイPicoの2つのCPUコアを使えることが分かりました。今回は複数コアを使う際にはまず避けて通れないことの一つ、排他制御をやってみます。また、RP2040にはコア間の制御をやりやすくするための専用ハードが搭載されているので、そちらが使われているのかどうかも探ってみます。

“MicroPython的午睡(13) ラズパイPico、マルチコアの排他制御など” の続きを読む

鳥なき里のマイコン屋(121) nRF52833搭載 BBC micro:bit V2到着

nRF52833
Joseph Halfmoon

半導体不足が深刻化する中、僥倖というべきでしょうか。Raspberry Pi Picoにつづき、BBC micro:bit V2もゲットであります。NORDIC社製nRF52833搭載。桜田モモエ先生も連載小説に書かれていましたが、半導体不足のときは実需の何倍もの需要が現れて一気に品薄になるのが通例。しかし今回は中国勢の買い漁りもあり先鋭化でしょうか。しかし山高ければ谷深し、後の事を考えると難儀なことです。 “鳥なき里のマイコン屋(121) nRF52833搭載 BBC micro:bit V2到着” の続きを読む

MicroPython的午睡(12) ラズパイPico、簡単!マルチコアでLチカを

multiCoreBlink
Joseph Halfmoon

Raspberry Pi Picoは「お求めやすい」価格のマイコンにしては珍しいデュアルコアのMCUです。一味違うのがMicroPythonからでも2番目のコアを「お手軽に」使えてしまうこと。扱いやすいです。今回は、ミニマムのデュアルコア利用のサンプルとして、走っているコア毎に光る色を変える、マルチコアLチカを作ってみました。ラズパイPicoのMicroPythonの特徴の一つか?

“MicroPython的午睡(12) ラズパイPico、簡単!マルチコアでLチカを” の続きを読む

MicroPython的午睡(11) ラズパイPico、Thonny IDEで動作確認

RPiPicoBlinkPy
Joseph Halfmoon

昨日、待望のRaspberry Pi Picoが到着、早速ピンヘッダを半田づけして吉例のLチカをやってみました。お手軽さを最優先し、MicroPythonでの動作確認です。とりあえず5分10分程度の作業時間でOK。お楽です。動作させればラズパイPico上でのMicroPythonの実装についても少し分かってきました。

“MicroPython的午睡(11) ラズパイPico、Thonny IDEで動作確認” の続きを読む

鳥なき里のマイコン屋(120) RP2040搭載、Raspberry Pi Pico到着予定

RP2040
Joseph Halfmoon

少し前に Raspberry Pi Pico 入荷お知らせメールを貰った翌朝、通販サイトへ行ったらば売切れていた、と書きました。今でも品薄は続いているようです。しかし、別ルートで「正常価格」で入手できそうだったので注文してしまいました。多分、本日到着の筈。待望の現物入手ということで、ついフライングで搭載マイコン RP2040 について書いてしまいました。

“鳥なき里のマイコン屋(120) RP2040搭載、Raspberry Pi Pico到着予定” の続きを読む

鳥なき里のマイコン屋(119) M5Stack、FreeRTOS機能使って周波数カウンタ

Frequency Counter DUT
Joseph Halfmoon

今回、M5Stack Grayを使って、外部から入力される信号の周波数(せいぜい数kHzくらい)を測定したかったのであります。しかし、Arduino環境で以前使ったことがある周波数カウンタのライブラリ、AVR用でした。M5Stackでは使えません。M5Stack用のタイマライブラリで自力更生とも考えましたが、別シリーズでFreeRTOSの「タイマ」使ったのを思い出しました。今回はFreeRTOS機能を使ってみます。 “鳥なき里のマイコン屋(119) M5Stack、FreeRTOS機能使って周波数カウンタ” の続きを読む

モダンOSのお砂場(22) FreeRTOS、ソフトウエアタイマAPIでワンショット

FreeRTOS_SoftTimer
Joseph Halfmoon

前回はMutex排他制御でしたが、今回はソフトウエアタイマAPIであります。ソフトウエアタイマというと自前でループで回る「あれ」をつい想像してしまいますが違います。RTOSです。ちゃんとOSが面倒を見てくれる「タイマ」です。ある意味ハードウエアのリソースの制限が無い分、使いやすくもあるもの。 “モダンOSのお砂場(22) FreeRTOS、ソフトウエアタイマAPIでワンショット” の続きを読む

鳥なき里のマイコン屋(118) M5ATOM Lite、UART、I2C接続

ATOM Lite UART I2C
Joseph Halfmoon

前回、M5Stack社の超小型無線マイコンボード ATOM Liteの拡張端子について、デジタル、アナログの入出力ピンとしての動作を確認しました。今回は、UARTおよびI2Cインタフェースが使用できることを確かめたいと思います。兄弟品種?のM5StickC よりも大分使いやすい気がいたします。 “鳥なき里のマイコン屋(118) M5ATOM Lite、UART、I2C接続” の続きを読む

MicroPyton的午睡(10) _thread、マルチスレッドは出来るけれども…

M5StickV uSELL v0.12
Joseph Halfmoon

このところ、MicroPythonのライブラリを「触って」「実感して」おりますが、今回はマルチスレッドの為の「低水準」ライブラリ _thread であります。フルPythonであれば、この上に高水準な threading が存在するのでありますが、MicroPythonの場合は低水準だけのようです。最低限のものはあるから後は自分でやれ、という感じか。 “MicroPyton的午睡(10) _thread、マルチスレッドは出来るけれども…” の続きを読む

鳥なき里のマイコン屋(117) M5ATOM Lite、ブレッドボード接続のお供

ATOMLite JIG
Joseph Halfmoon

M5Stack社の超小型デバイス ATOM Lite、ボタン、LEDと、WiFi接続(でMQTT)あたりの単体で出来そうなことは大体動かしてしまった感じです(まだBLE残っているのが気になってますが。これは別件扱い。)いよいよ外部接続端子に外の回路なりを接続して行こうと思います。今回は「接続準備」ということでブレッドボードのお供の治具を作ってみました。

“鳥なき里のマイコン屋(117) M5ATOM Lite、ブレッドボード接続のお供” の続きを読む