やっつけな日常(10) スマホでGo! Line描画機能をppmパッケージに追加

drawLineTestSRC
Joseph Halfmoon

スマホの上でGo言語を勉強しております。前回、どうにかファイルシステム上にローカルなモジュールを配置できるようになりました。今回はモジュール内のパッケージに別ファイルで機能追加をしてみます。斜め線が描ける単なる Draw Line コマンドなのですが、最近はそういうプリミティブな関数を作ったりしないので苦戦。

“やっつけな日常(10) スマホでGo! Line描画機能をppmパッケージに追加” の続きを読む

モダンOSのお砂場(44) Mbed OS6、SemaphoreでISRの中から排他制御

SemaphoreSampleDUT
Joseph Halfmoon

前回Mutex(2つあるうちのRTOS Mutexと呼ばれている方)を使ってみました。スレッド間の同期には有効なAPIですが、残念ながらISR(割り込みサービスルーチン)との間では使用できません。そこで今回はSemaphoreを使って、ISRとThreadの間で排他制御を行ってみます。

“モダンOSのお砂場(44) Mbed OS6、SemaphoreでISRの中から排他制御” の続きを読む

ぐだぐだ低レベルプログラミング(60) ARM64(AArch64)、レジスタ一覧描いてみた

RegsAllEC
Joseph Halfmoon

前回スマホ上でアセンブラとデバッガを動かし、ARM64(AArch64)のレジスタなど眺めてみました。ARM64はARM32と大分様子が違うので主要なレジスタだけでも一覧しておくべしと図を作り始めてハマリました。調べて図を描いているだけで時間がたちます。レジスタ多すぎ?

“ぐだぐだ低レベルプログラミング(60) ARM64(AArch64)、レジスタ一覧描いてみた” の続きを読む

やっつけな日常(9) スマホでGo! なんとかローカルなモジュールを利用。go 1.18

GoDIR
Joseph Halfmoon

Go言語を使い始めてちょっと困ったのが、ライブラリ的なものを別ファイルに置いて共用したいのだけれどどうしたら良いのかという点です。Goのマニュアルをつらつら見るにパッケージとかモジュールとかいろいろあるのですが、どう設定したら良いのかサッパリです。まあなんとか動くようになったのでメモ。

“やっつけな日常(9) スマホでGo! なんとかローカルなモジュールを利用。go 1.18” の続きを読む

ブロックを積みながら(63) Node-RED、流量制限ができる、delayノード

Joseph Halfmoon

今回の delay ノードは、本来到着した msg を一定時間遅延させて送り出すものです。しかしこの遅延機能を使ってメッセージの流量制限もできると。時間あたりのmsgの「流量」を決めると、それを超えるmsgはため込まれ流量制限の範囲で下流に流しだされます。フローの中のまさにダムみたいなもの?

“ブロックを積みながら(63) Node-RED、流量制限ができる、delayノード” の続きを読む

手習ひデジタル信号処理(32) 正弦波の信号発生器、sin関数計算編その1

sinEC
Joseph Halfmoon

今回から信号の発生に入るのですが最初は正弦波の発生です。音を作るにせよ、無線にせよ、何が無くても正弦波。デジタルな計算で波形を作るのに私のような素人でも思いつくのがsin()関数を使うことです。しかしsin()のような関数の計算には時間がかかる、そこで信号処理の人はいろいろテクを使うんでありますな。

“手習ひデジタル信号処理(32) 正弦波の信号発生器、sin関数計算編その1” の続きを読む

やっつけな日常(8) どこでもマンデルブロ?

ExcelMandel
Joseph Halfmoon

前回、スマホ上のGo言語を使ってマンデルブロ集合を描いてみました。この時作ったGo言語のソースは昔作ったExcelのVBAソースを移植したものです。忘れていたのですが、PCにもスマホにもそこかしこにマンデルブロ集合が隠れてました。今回はその幾つかを「呼び出して」みます。

“やっつけな日常(8) どこでもマンデルブロ?” の続きを読む

データのお砂場(26) R言語、Titanic、タイタニック号の生存者とな

mosaicplot
Joseph Halfmoon

今回のサンプルデータセットは皆さんよくご存じのタイタニック号です。映画タイタニックも見ましたが、この老人の記憶の奥底にあるタイタニックはTVドラマ「タイムトンネル」のタイタニックなんであります。といって若者も中年も知らないか、タイムトンネル、SFタイムトラベル物の嚆矢かと。それはさておきデータ処理にとりくみますです。

“データのお砂場(26) R言語、Titanic、タイタニック号の生存者とな” の続きを読む

やっつけな日常(7) スマホでGo! fmt.Printで吉例マンデルブロ集合を描く

mandelbrot
Joseph Halfmoon

前回、スマホ上のGo言語でフルカラー画像出力ができるようになったので、今回はその応用?としてマンデルブロ集合を描いてみたいと思います。昔、カオスとかフラクタルとか流行った?時期にはよく見たですが、正直この頃は影が薄い?Go言語のプログラムの下敷きにしたのは10年以上前にEXCELのVBAで自作したコードです。

“やっつけな日常(7) スマホでGo! fmt.Printで吉例マンデルブロ集合を描く” の続きを読む

忘却の微分方程式(44) 反復練習8、余因子、余因子行列、Maxima

adjoint
Joseph Halfmoon

今回は車輪の再発明的な回。余因子行列を求めるコマンドを「自主開発」してしまいました。Maximaには adjoint() 関数あり、アイキャッチ画像のように一撃で求まります。英語力不足からこれを見落としとりました。しかしお陰でちょっと分かったような分からぬような。結局分かってないじゃん!

“忘却の微分方程式(44) 反復練習8、余因子、余因子行列、Maxima” の続きを読む

ぐだぐだ低レベルプログラミング(59) ARM64(AArch64)、スマホで lldb

ARM64_REG_EC
Joseph Halfmoon

スマホ上で clang の使用開始。「ARM64(AArch64)できるな」と気づきました。「できる」といってアセンブラです。以前Armをやったときは32ビットでした。手元のラズパイは皆32ビットOSで動かしているので、64ビットArmはできなかったのです。OS入れ替えるのはメンドイ。しかしスマホであれば64ビット。

“ぐだぐだ低レベルプログラミング(59) ARM64(AArch64)、スマホで lldb” の続きを読む

やっつけな日常(6) スマホでGo!fmt.Printで今度はフルカラー画像出力

samplePPM
Joseph Halfmoon

Androidスマホ上で、Go言語を学んでおります。前々回、fmt.Printだけでも画像出力ができるということでやってみましたが白黒2値画像でした。今回は、前回使用したPBM形式の兄弟分?、PPM形式をつかってフルカラー画像を出力してみたいと思います。カラー画像が出力できるといろいろやってみられるような。

“やっつけな日常(6) スマホでGo!fmt.Printで今度はフルカラー画像出力” の続きを読む

MLのお砂場(5) irisデータセットでClustering、K-means例題を読む

3clusters
Joseph Halfmoon

少し間が空いた期間に方針変更いたしました。最初はよそ様の書かれた立派なコードを読むに限ると。いくらTOYデータセットと言えども、いろいろな処理が可能なわけで知識の無い私があがくより、まずはお手本を読もうと。データセットはIrisのままですが、処理はClassificationではなくClusteringです。

“MLのお砂場(5) irisデータセットでClustering、K-means例題を読む” の続きを読む

モダンOSのお砂場(43) Mbed OS6、Mutexと近縁APIの微妙な関係?

MutexDUT
Joseph Halfmoon

前回はThread間の通信に便利なMail APIを使ってみました。今回から排他制御に入りたいと思います。しかし似たようなAPIが複数あって何をどこに使ったら良いんだかRTOS素人の私にはサッパリです。今回は一番単純そうなMutexを実験しつつ、近縁?らしいAPIのいくつかについてまとめてみました。

“モダンOSのお砂場(43) Mbed OS6、Mutexと近縁APIの微妙な関係?” の続きを読む