Pico三昧(12) Pico C/C++SDKで4.096MHzクロック生成その1PWM

PWM4096_EC
Joseph Halfmoon

あるデバイスを動かそうとしたら4.096MHzのクロックが必要と書いてありました。手元には4MHzピタリの水晶振動子の在庫はあったと思ったですが、4.096MHzありません。ラズパイPicoで制御するつもりなのだし、ラズパイPicoでクロックから作ってしまえ、という目論見。「普通のマイコン」ならタイマをいじるところですが、ラズパイPicoでは違う、と。

“Pico三昧(12) Pico C/C++SDKで4.096MHzクロック生成その1PWM” の続きを読む

SPICEの小瓶(1) MOSFET、MOSMODELパラメータとSUBCKTの切り替え

ZVN3310A_IDS_VDS_Graph
Joseph Halfmoon

LTspiceのお世話になっている割には使い方が良く分からないままです。最近もアナデバ様の部品キットADALP2000所蔵のMOSFETをLTspiceしてみよ、と。しかしLTspiceには該当部品のMOSモデルパラメータはありませんでした。Webを漁ってSUBCKT定義を見つけたのですが、どう設定するの?

“SPICEの小瓶(1) MOSFET、MOSMODELパラメータとSUBCKTの切り替え” の続きを読む

モダンOSのお砂場(38) Mbed OS6、Timerでインターバル測定。STM32

MbedSRC
Joseph Halfmoon

前回がPWM出力だったので、今回は逆に入力インターバルをタイマAPIで測定してみました。入力は割り込み受け、人間がボタンを押す想定なので精度的にはいい加減な方法です。まあ、とりあえずボタンを押す時間間隔は測れたと。また、前回と異なり今回はオブジェクトコードの作成にWebベースのMbed Compilerを使ってみます。

“モダンOSのお砂場(38) Mbed OS6、Timerでインターバル測定。STM32” の続きを読む

ブロックを積みながら(58) Node-RED、コメントノードって何者?

commentNodeIcon
Joseph Halfmoon

風雲急を告げているのに、ブロックを積んでいるのも何だかな~と思うのですが、この年寄りに出来ることも無いと。。。しかし、思い出すに、大昔、旧東独の半導体屋に言われた一言、「お前ら日本人はロシア人を理解できんだろ」と。正確に言えば「ロシアの半導体屋」という文脈だと思いますが。

“ブロックを積みながら(58) Node-RED、コメントノードって何者?” の続きを読む

うさちゃんと一緒(1) Rabbit4000にPingしてお返事をしてもらう

RabbitBoard
Joseph Halfmoon

うさちゃん印のRabbit4000、Z80に似た8ビットの命令セットを持つちょっと古いけれども強力なマイコン、を手に入れてインストールをし動作確認をいたしました。今回から、少しづつ「うさちゃん印」を動かしていきたいとおもいます。まずは「売り」の機能Ethernet I/Fの動作確認から。外からPingしてお返事を確認してみます。

“うさちゃんと一緒(1) Rabbit4000にPingしてお返事をしてもらう” の続きを読む

データのお砂場(18) R言語、Lobololly、テーダマツの成長「曲線」とな?

ggplot004_EC
Joseph Halfmoon

今回登場は米国テキサスからフロリダあたりの湿地帯?のようなところに生えている松の一種みたいです。Lobololly pine tree、またの名をテーダマツとな。R言語の「内蔵」サンプル・データセットをABC順に全部「舐めて」みようなどと思いつかなければ多分お目にかかることは無かった植物であります。

“データのお砂場(18) R言語、Lobololly、テーダマツの成長「曲線」とな?” の続きを読む

ぐだぐだ低レベルプログラミング(52) RISC-V、浮動小数のmin/max

VNCtransfer
Joseph Halfmoon

RISC-Vは、RISCの中でもシンプルで「絞り込んだ」命令セットでありますが、浮動小数点数を扱う命令結構多いんじゃないかい。まあ面倒くさいものを扱うので、いたしかたないか。RISC-Vのせいではないですな。前回は積和演算命令でしたが今回は最大、最小求める命令です。

“ぐだぐだ低レベルプログラミング(52) RISC-V、浮動小数のmin/max” の続きを読む

Pico三昧(11) Pico C/C++SDKでinterp#5、補間ついでに配列舐める

Debug000
Joseph Halfmoon

今回は前々回のBlendモード再びです。その上、Datasheetのサンプルプログラムほぼほぼそのままです。何といっても中の人の書いたサンプルプログラム流石すぎます。Blendモードで補間をするついでにデータ配列を舐めるためのポインタアドレスまで作ってました。私のような凡人には考えつかないテクであります。

“Pico三昧(11) Pico C/C++SDKでinterp#5、補間ついでに配列舐める” の続きを読む

ソフトな忘却力(19) .wavファイルの生成、octaveとcppの両方で

OctaveSample
Joseph Halfmoon

WAVファイルを扱おうとしたらいつの間にかWindowsの標準アプリではそのようなフォーマットは捨て去られていたのにようやく気づきました。お間抜け。自分で音声信号のファイルを生成したりするときには楽なのだWAV形式。単なるPCMだし。ヘッダも簡単。今回はOctaveとC++の両方でWAVファイル書き出しやってみます。

“ソフトな忘却力(19) .wavファイルの生成、octaveとcppの両方で” の続きを読む

手習ひデジタル信号処理(24)残響生成器その3、マイクとスピーカつけて残響音を聞いてみる

Reverb_DUT
Joseph Halfmoon

前回アナログ・マイクロフォンを追加、ようやく残響生成器を実際に動かしてみることができるようになりました。スピーカは100円ショップのものを第20回でもつかったスピーカアンプで駆動してみました。確かに残響しています。マイクを叩くと長い地下道でコツコツ歩いているような効果音?つくれました(末尾に音声添付。)

“手習ひデジタル信号処理(24)残響生成器その3、マイクとスピーカつけて残響音を聞いてみる” の続きを読む

忘却の微分方程式(36) ヤバそうな雰囲気、離散数学。MathematicaとMaxima

permutationsEC
Joseph Halfmoon

今回は深みに入らぬように気をつけていたつもりでしたが、Maxima様からきついエラーメッセージいただきました。”game over” とな(詳細は冒頭のアイキャッチ画像ご覧ください。)調子こいているんじゃねえ、という感じでしょうか。やっていることは簡単そうですが、気をつけないとヤバいです。

“忘却の微分方程式(36) ヤバそうな雰囲気、離散数学。MathematicaとMaxima” の続きを読む

お手軽ツールで今更学ぶアナログ(79) LTspiceで学ぶ制御理論、tipsの宝庫?

bPower
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」は前回につづき2020年9月号の勉強2回目です。LTspiceを使って「制御理論を学ぶの回」なのですが、LTspice素人の私メにとっては、LTspiceのTIPSの宝庫かと。制御理論は身についた気がしないけれど、LTspiceは少し上手になった?

“お手軽ツールで今更学ぶアナログ(79) LTspiceで学ぶ制御理論、tipsの宝庫?” の続きを読む

ブロックを積みながら(57) Node-RED、別タブのStatus変更を観察してみた

ATOM_Lite_Buzzer_flowON_EC
Joseph Halfmoon

前回はエラーをキャッチして別タブに「投げ」てみましたが、今回はノード・ステータスの変更を見つけてやはり別タブに通知してみます。ノード・ステータスは今どんな状態かエディタ画面で確認できて便利ですが、そのままでフローに影響を与えるものではありません。Statusノードを使えば何かのキッカケに使えそう?

“ブロックを積みながら(57) Node-RED、別タブのStatus変更を観察してみた” の続きを読む

モダンOSのお砂場(37) Mbed OS6、PWMを使う。STM32

PWM_DUT_EC
Joseph Halfmoon

今回はPWM(Pulse Width Modulation)出力をMbed OSのAPIを使って動作させてみたいと思います。前回、外部端子割り込みが使えるようになったので、外部端子割り込みでPWM出力を開始/停止する機能付きとしてみました。簡潔で分かり易いAPIのMbed OSです。サンプルプログラムの作成もお気楽。

“モダンOSのお砂場(37) Mbed OS6、PWMを使う。STM32” の続きを読む