GoにいればGoに従え(29) container/ringをTinyGoで使ってみる

mb20ringResult
Joseph Halfmoon

前々回heap前回listとGoの標準ライブラリのcontainerを練習。今回はcontainerの最後の一つ ring です。しかし似たお名前のRingBufferがTinyGoのMachineパッケージの中に存在。今回は2つを比較してから、標準ライブラリのringの方をmicro:bit上で練習してみます。

“GoにいればGoに従え(29) container/ringをTinyGoで使ってみる” の続きを読む

手習ひデジタル信号処理(97) Scilab、音声データの入力と解析プロット

mapsoundPlot
Joseph Halfmoon

前回、音声信号をScilabにロードするために音声関係関数をさらってみました。全体の雰囲気は分かったのだけれど、解析用のプロットまで手が回らなかったです。そこで今回は前回積み残し部分を練習。しかしその前にWindows上での音声データの生成のところでまた一つ悶着あり。音声データなど普段扱わないから無知なのよ。

“手習ひデジタル信号処理(97) Scilab、音声データの入力と解析プロット” の続きを読む

MicroPython的午睡(117) ESP32版、net接続すれば御勝手mip動作OK

mipWorks
Joseph Halfmoon

前回、ESP32版MicroPython上で、MicroPython特有のパッケージ管理ツール mip を走らせんと試みましたが一山超えて二山目で止まってました。今回はその二山目を超えるべくネット接続を追加してみました。あれよあれよと言ううちに一瞬でパッケージのインストールOK、mip 動作してしまったみたいです。
“MicroPython的午睡(117) ESP32版、net接続すれば御勝手mip動作OK” の続きを読む

ぐだぐだ低レベルプログラミング(127)ARM64(AArach64)FSUB、ベクトル減算

fsubDiag
Joseph Halfmoon

前回A64のベクトルロード命令をあらかた終えたつもり。今回からA64のベクトル(SIMD)演算命令に入ってまいりたいと思います。その初回はFSUBです。3オペランドの「典型的」演算かつ、ソースの順序に依存する命令ということでの「起用」であります。でも以前にもFSUBというニーモニック自体は使ってるんでないかい?

“ぐだぐだ低レベルプログラミング(127)ARM64(AArach64)FSUB、ベクトル減算” の続きを読む

PIC三昧(8) アナログ・コンパレータを使ってみる、PIC16F18855

CMP_DUT_EC
Joseph Halfmoon

前回はZCD(ゼロクロス検出器)で割り込みかけてみました。今回はアナログ入力電圧2つを比較する内蔵コンパレータを使ってみます。なにか基準電圧を上回ったら信号を出力したりできるもの。結果で割り込むことも可能ですが、直接外部出力信号とすることも可能。外付けオペアンプなど不要で済むのはありがたいかも。

“PIC三昧(8) アナログ・コンパレータを使ってみる、PIC16F18855” の続きを読む

忘却の微分方程式(108) 反復練習71、2重積分、極座標変数変換その2、Maxima

Ex86_1Dplot
Joseph Halfmoon

前回はドーナツ型の積分領域を極座標変換して2重積分しました。今回も極座標変換ですが、積分領域が楕円になりました。前回同様、再びヤコビアンさんが登場しますが、円の時とはチョイと違うみたいです。変数変換にも楕円の長軸、短軸長さが入ってくるし。まあ、極座標変換してしまった後はMaxima様の一撃にてお答えは求まるっと。

“忘却の微分方程式(108) 反復練習71、2重積分、極座標変数変換その2、Maxima” の続きを読む

モダンOSのお砂場(66) UNO R4、ルネサスRA4M1でFreeRTOS、Queue

UNOR4_FreeRTOS_queue_diagram
Joseph Halfmoon

今回はArm Cortex-M4コアのルネサスマイコンRA4M1を搭載したArduino UNO R4上で、FreeRTOSのQueueを使ってみたいと思います。複数のタスク間で安全にデータを受け渡しできる便利な構造です。データの送受ができることは当たり前なので、今回は送受にどのくらいの時間がかかるのだが目安を観察。 “モダンOSのお砂場(66) UNO R4、ルネサスRA4M1でFreeRTOS、Queue” の続きを読む

データのお砂場(94) R言語、aims、スピード違反と警告(交通)標識、bootパッケージ

AmisPeriod
Joseph Halfmoon

前回に引き続きbootパッケージ中のサンプルデータを眺めています。今回は英国の「交通標識とスピード違反」の関係データセットらしい amis です。R素人の処理の結果として出てきた意外なグラフに愕然。どこかの処理を間違えてないか、自分?それとも人間心理の深淵をば覗き込んでおるのか?本当はどうなんだろ。

“データのお砂場(94) R言語、aims、スピード違反と警告(交通)標識、bootパッケージ” の続きを読む

小ピンマイコンの酷暑(3) CH32V003、外部端子から割り込みをかけてみる

CH32V_EXTINTR_SCHEMATIC
Joseph Halfmoon

酷暑にもめげず、RISC-V搭載の超お求めやすい32ビットマイコンCH32V003を触っています。今回はGPIO端子から割り込みをかけてみます。Arduino IDE環境での作業なので「いつものやり方でOK」かというと微妙に違うんだこれが。前回のようにCH32V用の低レベルなAPIを呼びだす必要はないのですが。

“小ピンマイコンの酷暑(3) CH32V003、外部端子から割り込みをかけてみる” の続きを読む

お手軽ツールで今更学ぶアナログ(164) 心拍数の測定、実はブレッドボードの結線ミス

2023MaySignal
Joseph Halfmoon

アナデバ社(ADI社)のWeb記事『StudentZone』2023年5月号の実習2回目です。前回は「先っぽ部分ムツカシー」などと書いて実機で心拍が取れないのは先っぽのせいみたいなことを「匂わせ」てしまいました。すみません。私の勘違いでした。バグはブレッドボード上の結線にあり、直したらば心拍とれました。よく見ろよ自分。 “お手軽ツールで今更学ぶアナログ(164) 心拍数の測定、実はブレッドボードの結線ミス” の続きを読む

Lispと一緒(3) uLisp、Wio Terminalのボタンをセンスする

button1EC
Joseph Halfmoon

前回は中身ばかりで外まで手が伸びませなんだ。今回はマイコンで走るuLispならではの外部入力も含めてみます。まずはWio Terminalの上端面に3つならんでいる「青いユーザーボタン」をセンスできるようにしてみます。LCDパネルに向かって右からボタン1,ボタン2、ボタン3であります。でも端子名は何?

“Lispと一緒(3) uLisp、Wio Terminalのボタンをセンスする” の続きを読む

ブロックを積みながら(126) Node-RED、ui-levelノードを使ってみる

3TypesOfUiLevelEC
Joseph Halfmoon

前回までworldmapでしたが、今回はui-levelノードです。ダッシュボードには元々gaugeというノードが含まれており、そのオプションとして「Levelメータ表示」も存在します。見た目は水位計あるいは燃料計風。それにたいして今回のui-levelノードはLEDオーディオメータ風です。お好みね。

“ブロックを積みながら(126) Node-RED、ui-levelノードを使ってみる” の続きを読む

GoにいればGoに従え(28) container/listをTinyGoで使ってみる

mb20listSRC
Joseph Halfmoon

前回はTinyGoでも「フルの」Goの標準ライブラリが立派に使える、ということで「値によって順番をつけて」データを格納してくれるheapを使ってみました。さて今回はその流れで container/list を使ってみます。順番を管理できるデータ構造です。それにどんな型のデータを入れても良いし。よくあるリスト構造だね。 “GoにいればGoに従え(28) container/listをTinyGoで使ってみる” の続きを読む

手習ひデジタル信号処理(96) Scilab、音声データ入出力のための関数類まとめ

ScilabSoundFunctionsDiagram
Joseph Halfmoon

前回RTLSDR発のIQデータをPythonプログラムからScilabへ輸入。Scilab上でPythonプログラムと同じ処理行い音声データとして再生しました。今回からは逆方向、音声データで変調してRTLSDRから輸入したデータと同等の信号の生成を試みます。まずはScilab上での音声データの処理関数のお勉強から。
“手習ひデジタル信号処理(96) Scilab、音声データ入出力のための関数類まとめ” の続きを読む