ぐだぐだ低レベルプログラミング(42) 64bitRISC-V、単精度浮動小数点add

RPi4_MaixBit
Joseph Halfmoon

前回から64bitのRISC-V搭載のK210にターゲットを切り替えたのですが、今回はまさかの問題勃発。Flashに書き込めません。というか接続するとPCの挙動が不審。どうしたものか。そこで困ったときのラズパイ頼み、Picoの母艦のラズパイ4機にK210ボードへの書き込みをお願い。OK、単精度浮動小数点add命令動いています。

“ぐだぐだ低レベルプログラミング(42) 64bitRISC-V、単精度浮動小数点add” の続きを読む

Pico三昧(2) Pico C/C++ SDKで74HC595接続、PIO制御編単品

PIO595EC
Joseph Halfmoon

前回は、定番の74HC595シフトレジスタをフルソフト制御で扱ってみました。今回はラズパイPicoの特徴であるPIO(プログラマブルIO)を使って制御してみます。既にMicroPythonからPIOによる74HC595の制御はやってみているので、PIOアセンブラはPythonコードからの移植、という感じ。 “Pico三昧(2) Pico C/C++ SDKで74HC595接続、PIO制御編単品” の続きを読む

データのお砂場(3) R言語、BOD、生物化学的酸素要求量、非線形回帰分析をやれと

FM1_PLOT_EC
Joseph Halfmoon

R言語のサンプルデータセットを端から味わってみる、やっつけでご乱心な第3回はBODです。たまに水質汚染などのニュースで聞く生物化学的酸素要求量というもの。なんだか分かりませぬが、第3回にしてようやく時系列データを離れ、データフレームが登場しました。目出度い(何が?)

“データのお砂場(3) R言語、BOD、生物化学的酸素要求量、非線形回帰分析をやれと” の続きを読む

手習ひデジタル信号処理(13) STM32F446、IIRフィルタその2、Double型

DoubleBode
Joseph Halfmoon

前回は、IIRフィルタを単精度浮動小数(Float型)で動かして、「予定通り」計算精度の問題を目にすることができました。今回は、同じIIRフィルタを倍精度浮動小数(Double型)での計算に変更するだけで、その問題が消える件をしみじみ味わってみたいと思います。予定通りとは言え、前回結果と比べると魔法のよう。 “手習ひデジタル信号処理(13) STM32F446、IIRフィルタその2、Double型” の続きを読む

忘却の微分方程式(26) 数列、総和、級数、MathematicaとMaxima

SumEC
Joseph Halfmoon

数学力も無ければ、センスも無いので今回テーマには難渋しそうな予感がいたします。通例ではWolfram社Mathematicaのチュートリアルに「準拠」といいつつ準拠は進捗だけ。テキトーな例題で演習をしてました。今回は、きちっとMathematicaの例題をなぞり、その後Maximaで同じことを試みてみる、と。手探り。

“忘却の微分方程式(26) 数列、総和、級数、MathematicaとMaxima” の続きを読む

連載小説 第65回 4ビットAI内蔵 “詠人舞衣子” の思い出

Maiko Yonbito
Momoe Sakurada
ペンネーム
桜田モモエ

<これまでのあらすじ>

サイコーエジソン株式会社の詠人舞衣子(よんびとまいこ)です。訳あって4ビットAIを内蔵しています。心理学科卒文系女子ながら先端技術製品のICを販売する米国現地法人のSS-Systemsへ赴任しちゃいました。食生活の変化で私の見事な肉体は更に水平方向へ成長しつつも、毎日忙しくやっています。Appleの青井倫吾郎さんから、とうとうプロポーズされちゃいました。最高! “連載小説 第65回 4ビットAI内蔵 “詠人舞衣子” の思い出” の続きを読む

お手軽ツールで今更学ぶアナログ(69) OP27、OP37、OP97、セトリングタイム測定

2020MAR_DUT
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」は、2020年3月号に到達です。今回はオペアンプのセトリングタイムの測定。かなり微妙な測定で「お手軽ツール」でホントに上手く測れるのかしらと思いましたが、ご指示の通りにやって見たらば意外と簡単(本当か?)

“お手軽ツールで今更学ぶアナログ(69) OP27、OP37、OP97、セトリングタイム測定” の続きを読む

ブロックを積みながら(48) Node-RED、play audioノードにwavファイル

playAudioFlow
Joseph Halfmoon

前回はDashboardの audio outノードを使って、文字列から「言葉をしゃべる」TTS機能を使ってみました。今回は、NodeREDエディタ上で音声を鳴らす play audioノードに wav形式の「バイナリバッファ」を食わせて音が鳴ることを確かめたいと思います。バイナリファイルからの読み出しには file inノードを使用。NodeREDサーバー機上のローカルファイルシステムから読み出します。

“ブロックを積みながら(48) Node-RED、play audioノードにwavファイル” の続きを読む

MicroPython的午睡(56) ATOMLite、パッシブ・ブザー接続

ATOMLite_wPassiveBuzzer
Joseph Halfmoon

このところM5ATOMLite側からNodeREDサーバーに「報告」するばかりで、逆方向のアクションがありません。そこでATOMLiteにPassive Buzzerを取り付けてみました。サーバーからブザーを鳴らせば「注意喚起」(何の?)が出来ると。今回はPWM駆動でブザーを鳴らすところまで。

“MicroPython的午睡(56) ATOMLite、パッシブ・ブザー接続” の続きを読む

IoT何をいまさら(102) ESP-EYE, ESP-IDFでWiFiスキャン

DEVKITC_ESP_EYE
Joseph Halfmoon

ATSAMマイコン関係がこちらへ移動したので、「跡地」にESP-EYEをESP-IDF環境で「やっつけよう」という試みが越してまいりました。AIとか、カメラとかまずは置いておいて、ESP32なんだからWiFiで通信できるところから出発すべきだろう、と。ESP-IDF、資料有りすぎ、読むのが辛いです。イケないけれども伝統の試行錯誤法でアプローチ? “IoT何をいまさら(102) ESP-EYE, ESP-IDFでWiFiスキャン” の続きを読む

モダンOSのお砂場(29) FreeRTOS、プリエンプティブなスケジューリング

StateDiag_EC
Joseph Halfmoon

前回はFreeRTOSのスケジューラを起動をしたものの、Taskは1個だけでスケジューラのご利益はありませんでした。今回はTaskを2個にして、Blocking APIを使って「自主的に」制御権を手放すのと「プリエンプティブ」に制御権を取り上げて再スケジュールするのと両方のケースを観察してみたいと思います。実験に使用するのは、前回に続きSAMD21マイコン搭載Seeeduino XAIOボードです。 “モダンOSのお砂場(29) FreeRTOS、プリエンプティブなスケジューリング” の続きを読む

AT SAMの部屋(2) SAMD21、GPIOのドライブ・ストレングス設定

PinWeakStrong
Joseph Halfmoon

前回はSAMD21で吉例Lチカだったですが、書きながら気になったことがありました。GPIOのピンコンフィギュレーションの中にDRVSTRというビットがあるのに気づいたからです。調べたら同じものがSAMD51にもありました。GPIO分かったような気でいて、ついつい見逃していたのね。

“AT SAMの部屋(2) SAMD21、GPIOのドライブ・ストレングス設定” の続きを読む

ぐだぐだ低レベルプログラミング(41) 64bitのRISC-Vでインライン・アセンブラ

ArduinoInlineASM_EC
Joseph Halfmoon

RISC-VインタナショナルがVectorなどの拡張命令セット多数を制定したとのニュースが流れるなか、こちらはようやく64ビット命令に入ります。前回まで32ビットのRISC-V、GD32VF103でしたが、今回からは64ビット、Kendryte社のK210です。前回同様VSCode+PlatformIOでのビルドは同じ、しかしプラットフォームが異なるのでまずはアセンブラ命令を走らせる環境の確認から。

“ぐだぐだ低レベルプログラミング(41) 64bitのRISC-Vでインライン・アセンブラ” の続きを読む

ソフトな忘却力(13) ラズパイsyslog、ファイル振り分け、UDPの許可

Raspberry Pi 4
Joseph Halfmoon

困った時の syslog 頼み。Raspberry Pi OSを動かしていて何かトラブったときに見るのが syslog です。運が良ければ?問題の原因が分かります。そうして頼ってきた割にラズパイのsyslogの事はちゃんと理解していなかったことが今回発覚。「ついでに」ファイルの振り分けを追加し、リモートからのUDPでのログにも対応とな。

“ソフトな忘却力(13) ラズパイsyslog、ファイル振り分け、UDPの許可” の続きを読む