前回Templateノードを試してみました。しかし手元のパレットにはもう一つTemplateノードがあります。前回は「機能」パレットでしたが今回は「Dashboard」パレットの中のノードです。Dashboardは人とのインタフェースを担いますが、その中でも入出力双方をできるTemplateノードはお役立ちか?
IoT何をいまさら(99) ATSAMD51、DMAで1バイト転送成功までの長い道
Microchip社のArm Cortex-M4コア搭載「近代的」ATSAMD51 マイコンの周辺機能をレジスタレベルでプログラムしてその操作を噛みしめておりますシリーズ、今回はDMACであります。昔からあるDMAですが、近代化したマイコンのそれは機能も増えていろいろできます。その分設定はメンドいです。たった1バイトの転送設定に大わらわ。
ぐだぐだ低レベルプログラミング(36) RISC-V、ロードとストア、素直に動かしてみる
前回、メモリアドレスをロードする小技をやったので、今回のロード、ストアでそれを使うかと思っていたですが、その影もありません。単純な命令テストだな。だって時間無かったのだもん。すみません。まあ一応RV32Iが定義しているロードストア命令の全種類を網羅、といっても8個ばかりですが。
L.W.R.(33)古文書編#4『プログラミングとアーキテクチャ』VAX-11, CQ出版
今回古文書のタイトルは『プログラミングとアーキテクチャ』。レヴィー/エックハウスJr. 共著白井訳、CQ出版1984年初版です。邦訳のタイトルだけでは何時の時代の何の話か分かりません。サブタイトルの「32ビット・スーパーミニコン VAX-11」を見てようやくVAXの本だと分かる次第。名著だと思います(個人の感想です。)
MicroPython的午睡(50) ATOMLite、やらかしTZ、カレンダ変換
前回、ATOMLiteで温湿度を測ってサーバーのNode-REDに報告をあげるようにいたしました。測定テストで温湿度の日変化を測るべし、とてATOMLiteを動かしたまま眠りについて発覚しました。アイキャッチ画像を御覧じろ。25時?RTCがそういうこと言う?私のバグでした、トホホ。NTPで得たUTCと、報告用のJSTの変換の間違い。
トホホな疑問(41) ラズパイmicroSDのバックアップ、リストアの落とし穴?
Raspberry Piは、microSDカードをストレージにしています。時々microSD全体を「イメージ」にしてバックアップされている方も多い筈。バックアップはHDD宛てなので問題ないですが、イメージからmicroSDへのリストア(レストア?)時にトラブるケースを体験。考えてみれば当たり前なんでありますが。
鳥なき里のマイコン屋(144) ラズパイPico、Arduino環境で外付けRTC接続
前回、PlatformIOがいつの間にかラズパイPicoのRP2040に対応(Arduinoプラットフォームのみ)していたので吉例のLチカでその動作を確認しました。今回は、外付けのRTCからカレンダ時刻を読み込んで「使えるじゃん」と納得する、と。普通にArduinoのつもりでプログラムできる感じなのでSDKに比べると大分敷居が下がった感じもします。個人の好みだけれども。
ソフトな忘却力(9) 最適化とthread数、RPi3とRPi4ではまた違うのだ
前回は、スレッド数に反比例して処理時間が短くなるサンプルプログラムに、コンパイラの最適化オプション効かせたら、マルチスレッドが効かなくなったのを目にしました。今回は、サンプルに「手を入れて」「スレッド化の効果あり」に無理やり変更の上、実行環境をラズパイ3からラズパイ4へ変えてみます。CPUの馬力が違うとまた違う。一筋縄ではいきまへん。
手習ひデジタル信号処理(7) STM32F446、巡回型移動平均2/3
前回から引き続きの「巡回型移動平均」の2回目は、「巡回型に潜む魔物」を「かいまみる」予定でした。しかし魔物の召喚に失敗した模様。フツーに動いてしまいました。これではいけない、と無理やり魔物を登場させてみましたが、本当に無理やり、何やっているの?という感じ。こういう意外な挙動も「巡回型」?
忘却の微分方程式(20) Maxima、三角関数の試行錯誤、思ったようには動かんな
前回、MathematicaとMaximaの三角関数を使いってみましたが、三角関数の展開など、どうしてよいやらサッパリでした。今回は、Maxima中心に三角関数の加法定理とか積を和に直す公式とかを練習してみます。遥かな昔、高校のときにやった筈の物(とっくに忘れているけれど。)
ブロックを積みながら(42) Node-RED、いろいろ作れるTemplateノード
今回試用してみますのは Template ノードです。テンプレートの所定位置に受信オブジェクト値の一部を「差し込んで」文字列を完成させるもの。素の文字列だけではなくてソースの生成もできる。作った文字列をJSONオブジェクトにパースして送り出す機能もあり、便利なノードです。とりあえず簡単なところを味わってみました。
MicroPython的午睡(49) ATOMLite、温湿度を測ってNode-RED報告
今回からようやく外付けのデバイスをM5ATOMLiteに接続して、ラズパイで走っているNode-REDとの間を繋ぐところに入ってまいります。その1は、ありがちな「温度、湿度」のご報告です。ここまでの準備で、回路も簡単、ソフトも簡単、ほとんど何もやることがないです。本当か?
やっつけな日常(1) ラズパイ4のPython3でRTC-4543SAの読み書きテスト
やっつけでご乱心な今回は、先週クロックの出力のみ確認してあった「RTC-4543SAモジュールのカレンダ・タイマを実際に読み書きしてみよう」の回です。読み書きに使うのはRaspberry Pi 4であります。ラズパイはネットワークに同期した実時間時計が使用できるので外付けRTCなど不要。RTCモジュールの初期化と動作確認の目的のみ。
ぐだぐだ低レベルプログラミング(35) RISC-V、32ビットのアドレスをロードする小技
前回条件分岐をやり、今回はロード、ストアのつもりだったのですが、1つ忘れていることに気づきました。32ビットの即値、つまりはメモリアドレスのロードです。RISC系CPUでは限られた命令のビット幅との兼ね合いで苦労する部分ですが、RISC-Vはカッコよく始末している方ではないかと思います。とりあえずシンボルアドレスをGETしてメモリロードをしてみます。 “ぐだぐだ低レベルプログラミング(35) RISC-V、32ビットのアドレスをロードする小技” の続きを読む