モダンOSのお砂場(12) M5StickC、UIFlowとMicroPython

JosephHalfmoon

このところKendryte K210搭載のM5StickVの上でMicryoPythonしておりましたが、実は同時期に、ESP32搭載のM5StickCも購入しておったのです。同じM5Stickのシリーズなので兄弟というべきか?プロセッサSoCが違い、CPUコアも違いで開発環境も似ていても違う、従兄弟くらいか、それとも腹違い?の兄弟か? “モダンOSのお砂場(12) M5StickC、UIFlowとMicroPython” の続きを読む

モダンOSのお砂場(11) MicroPython、GPIO入出力

JosephHalfmoon

AIカメラと銘打って販売されているM5StickV(RISC-Vコア+AIアクセラレータKPU搭載のKendryte K210搭載機)ですが、カメラの横にはかなり強力なLEDが搭載されています。近くのものならこれで照明しながら撮影できそうです。このLED、色が変えられます。照明の光の波長を変えて撮影すると何かいいことあるかも。LED点灯色など制御しているのがGPIOの端子群です。ついでにキー入力もやってしまいましょう。 “モダンOSのお砂場(11) MicroPython、GPIO入出力” の続きを読む

モダンOSのお砂場(10) MicroPython、モジュールとhelp

JosephHalfmoon

皆さまは、PythonのREPL(Read-Eval-Print Loop)使っておられますか?実を申せば、私はPC上のPythonではまず使いません。ほとんどバッチでPythonスクリプトを走らせているから。インタラクティブなデバッグしたいときはpdb起動しているし… でも今回K210をCPUに頂くM5StickV上のMicroPythonを使うにあたってREPL使うことにいたしました。help()関数、使わねばね。 “モダンOSのお砂場(10) MicroPython、モジュールとhelp” の続きを読む

モダンOSのお砂場(9) MicroPython、ファイルにアクセス

JosephHalfmoon

前回に引きつづき、M5StickVのMicroPythonのREPL環境で「遊んで」おります。M5StickVの場合、内蔵Flash以外にSDカードも使用できるので、スクリプトやデータの格納場所に困るということはなかなか無さそうです。その分、いろいろファイル操作したくなる局面も多くなると思います。そこで、ちょこっとユーティリティ的なスクリプトを書いて「お手軽化」してみました。 “モダンOSのお砂場(9) MicroPython、ファイルにアクセス” の続きを読む

モダンOSのお砂場(8) M5StickV、micropython

JosephHalfmoon

micropythonは言語処理系であってOSではないとお叱りを受けそうですが、このモダンOSのお砂場シリーズでは、Interface 2019年5月号の特集にならいmicropythonも「マイコンを制御するためのOS的な要素含む」としてモダンOSに含めております。ま、実際はM5Stack、M5Stick系の実装では、根本にFreeRTOSというモダンOSがいて、その上でmicropythonが走っているという階層構造ですが。 “モダンOSのお砂場(8) M5StickV、micropython” の続きを読む

モダンOSのお砂場(7) FreeRTOS kernelとAmazon FreeRTOS

JosephHalfmoon

前回、FreeRTOSの話をちょっと書かせていただきました。ただし、”FreeRTOS”といえば、まっさきに喧伝されている感のある Amazon AWSとの連携、Amazon IoTサービスといった話はまったくでてきませんでした。これは、別に無視していたわけでなく、FreeRTOS.ORGから入っていくと各種のマイコン、それもかなりリソースの限られたマイコンからでも利用可能な汎用のRTOSとしてのFreeRTOSのカーネルが中心であるためです。AmazonのIoT向けサービスなどの連携などを調べようとしたら、また、別なところへ行かなければならないようです。 “モダンOSのお砂場(7) FreeRTOS kernelとAmazon FreeRTOS” の続きを読む

モダンOSのお砂場(6) FreeRTOS、Windows上で練習

このところ別シリーズでM5Stackを扱っていることが多く、気になっていましたFreeRTOS。M5StackをArduinoIDE環境で使っていたら表立ってはFreeRTOSは現れてきませんが、「アプリ」プログラムを裏で支えてくれているのがFreeRTOS。Arduinoのような「一皮被せた」環境でなく、ESP32の開発環境を整備すれば直FreeRTOSが見えるようにできる筈ですが、今、あまり時間がなくメンドイ。もっとお手軽にFreeRTOS触ってみる方法はないものか?

“モダンOSのお砂場(6) FreeRTOS、Windows上で練習” の続きを読む

モダンOSのお砂場(5) Micro:bitとDroidScriptその3

micro:bit上のEspruinoをDroidScriptから操作して楽できるかと思ったのですが、そうもいかなかった前回でした。そこで方針転換、micro:bit上で動作するBLEから制御できるアプリを作り、それをスマホから制御するという方式に落ち着きました。当然、スマホ側のアプリを作るのにDroidScriptを使用するつもりではいるのです。BLEから制御するのは、無難なところで、BLE上のシリアル接続で、コマンドを送り、データを受信という方式でまずは行うことといたしました。とりあえず何かい、BLE上のシリアル端末あればテストできるんじゃ。。。 “モダンOSのお砂場(5) Micro:bitとDroidScriptその3” の続きを読む

モダンOSのお砂場(4) Micro:bitとDroidScript その2

前回、何の苦労もなく、Android機上のDroidScriptから、BLE経由で、microbitを操作できたのは僥倖であったことが、今回理解できました。「たまたま」うごく「組み合わせ」であった、ということです。結局、どこにでも転がっているように思える、ソフトウエアのバージョンの問題に遭遇してしまいました。いろいろ調べてみて、どの組み合わせならどう動かすべきなのか少し分かってきたので、中間報告を兼ねて書き留めておきます。問題を認識した切っ掛けはハードを拡張するためのブレークアウトボードの作成でした。 “モダンOSのお砂場(4) Micro:bitとDroidScript その2” の続きを読む

モダンOSのお砂場(3) Micro:bit と DroidScript その1

前回は、micro:bitの箱の外側を撫でた程度で止まっておりましたが、今回からは実際に使ってみたいと思います。しかし、本流(王道?)の MakeCodeエディタ も Pythonエディタ も「とりあえず」使いませぬ。スマホベースで使ってみよう(当然BLE無線経由で)と思うのですが、micro:bitのスマホ上開発定番の micro:bit コンパニオンアプリ も使いませぬ。使うのは

DroidScript

であります。私はスマホにインストールしていたものの、「眠らせて」おりました。今回、micro:bitを触るにあたって復活となった次第。 “モダンOSのお砂場(3) Micro:bit と DroidScript その1” の続きを読む

モダンOSのお砂場(2) Micro:bit についてちと調べてみた

教育用、と銘打って売られている「マイコン・ボード」的なもののひとつに

Micro:bit

というものがあるのをご存知かもしれません。小学生くらいを主対象にプログラミングの学習用など意図したボードのようです。世界中に蔓延っている?らしいです。調べてみると、この開発環境、如何にも「モダン」な要素にあふれています。子供相手のおもちゃなどと馬鹿にしたものじゃありません。

“モダンOSのお砂場(2) Micro:bit についてちと調べてみた” の続きを読む

モダンOSのお砂場(1) Mbed OS、スレッド、セマフォ、イベント、割り込み

RTOS(リアルタイム・オペレーティングシステム)などと言うと、とても敷居が高くて、準備するだけで数か月みたいなイメージをもっていたのですが、

モダンOS

では違うようです。今日も実働時間1時間もかからずに、何の知識もない状態から、4スレッド(一般のRTOSでは普通タスクと呼ぶけど)、セマフォにイベントフラグ、割り込みハンドラなど含めたRTOS(Ebed OS5)の練習プログラム、動いてしまいました。でも、いつもの調子で大慌てなドタバタもあったんであります。まあ、書いてみないと分からない。 “モダンOSのお砂場(1) Mbed OS、スレッド、セマフォ、イベント、割り込み” の続きを読む