PIC16マイコン搭載の周辺回路を脈絡もなく思いつくまま気の向くままの順番で練習してきました。ここで「なんの一番基本的なモジュール」を練習してないことに気づきました。内部のクロック信号を外部にお知らせできるCLKREFモジュールです。クロックを出力するだけ、地味だあ~。でも単純だけれどもよく考えられてる?
ぐだぐだ低レベルプログラミング(139)ARM64(AArach64)SIMDsqdmulh
今回練習するのは2命令、その一つのニーモニックはSQRDMULHです。マニュアルから命令の意味を引用すると「Signed saturating Rounding Doubling Multiply returning High half」です。これだけでメンドクセー奴だということだけは分かります。掛け算系の氷山の一角。
データのお砂場(106) R言語、cd4、HIVのお薬の効き具合?とな bootパッケージ
今回もまた未知の世界デス。突然 cd4 と言われてもな。ヘルパT細胞の表面に発現する糖タンパクらしいです。それが何よというと、HIVウイルスの攻撃目標になるみたいです。結果AIDSだと。今回データはそれに対抗するお薬の効き具合のデータらしいのですが、bootstrap法をnestedで適用したらしいっす。何だかな~。
GoにいればGoに従え(40) ラズパイPicoの割り込み、その1、イネーブルなのは誰?
前回はラズパイPicoのハードウエアの「もそっと下」のところをTinyGoから制御するためにハード固有のレジスタに直接アクセスしてみました。クロックとか電源とか最初に見ておきたい部分はいろいろあるのですが、今回は割り込みをみてみます。TinyGoのランタイムがデフォルトで割り込みイネーブルにしている周辺はあるのかしら。
“GoにいればGoに従え(40) ラズパイPicoの割り込み、その1、イネーブルなのは誰?” の続きを読む
忘却の微分方程式(120) 反復練習83、線積分、Maxima
物理やるときには線積分は避けて通れないです、知らんけど。メンドクセーと思いつつ、Maxima様にお願いするのであれば、定型どおりに機械的に計算すればお答えが求まる気がしてきました。ありがたいことだね。でもそんなんで大丈夫か?今回は2次元平面の中で線積分求める例題でしたが、3次元でもなんでも以下同文。ホントか? “忘却の微分方程式(120) 反復練習83、線積分、Maxima” の続きを読む
STM32三昧(1) Cube IDEでHello World+GPIO入力、Nucleo
STMicroelectronics社純正開発環境Cube IDEを別件にて再インストール。Cube IDEとSTM32マイコンのHALを練習するためにシリーズ「STM32三昧」始めることにいたしました。それにしてもHAL充実、つまりはAPI多すぎ。まず今回はGPIO入力とprintfを使えるようにするところから。
MicroPython的午睡(127)M5Stack UIFlow2、Thonnyで接続
ブロックを積みながら(135) Node-RED、SHA-256ハッシュを計算
前回は、みんな大好きMD5ハッシュでした。しかしセキュリティ的にはヤバイので、今回は「大丈夫な筈」のSHA-256ハッシュです。当然Node-RED上で計算に対応したノードも多数あるのですが、前回のMD5同様、msgを流し込めば何も設定せずともSHA-256になって出てくるノードをインストールしてみました。お楽?
PIC三昧(19) TEMP、チップの温度をADCで測定、PIC16F18855
今回はオンチップの温度を測るTEMPERATURE INDICATOR MODULEです。偉そうなお名前ですが、やっていることは温度依存性がある筈のダイオードの電圧ドロップをADCで測っているだけです。単純明快、な割には制御はフェイント。独立したモジュールというより、2つのモジュールに「間借り」している雰囲気。 “PIC三昧(19) TEMP、チップの温度をADCで測定、PIC16F18855” の続きを読む
手習ひデジタル信号処理(104) Scilab、comm_tbx、NRZIからバイナリ復元
Scilabのcomm_tbxにはバイナリシーケンスをNRZ信号化する関数はあれども他の符号化関数がないです。そこで前回、自前NRZI関数を作成。しかし生成した信号から元のバイナリシーケンスに戻す逆方向の関数も欲しいです。動作確認のためなんだけれども。ついでにNRZ信号をバイナリに戻す関数も作成。どちらもテスト用っす。
ぐだぐだ低レベルプログラミング(138)ARM64(AArach64)SIMD sqshl
毎度ですがA64の命令多すぎ。今回練習するのはSIMDのシフト命令です。符合付/符号無、サチュレーションの有無、丸めの有無で2の3乗、合計8種のニーモニックが存在します。そしてニーモニック上はLEFTと読めるので左シフトだけかと思えば「負の左シフトは右シフト」ということで右シフトも出来。でもこれだけじゃなかったんだ。
モダンOSのお砂場(77) UNO R4でFreeRTOS、再帰的ミューテックス
前回ミューテックスを使ってみたので、今回は一歩すすんでリカーシブなミューテックスです。何に一歩進んだのか分からんです。リカーシブにしなければならない理由をチョイと思いつかない凡人です。でもまリカーシブなAPIは存在しているので、使ってみます。確かに再帰呼び出しできますなあ。ピッタンコな応用例を知りたい、私は。 “モダンOSのお砂場(77) UNO R4でFreeRTOS、再帰的ミューテックス” の続きを読む
データのお砂場(105) R言語、cav、筋肉のカベオラの位置とな bootパッケージ
サンプルデータセットを眺めていると未知の世界が突然開けることがあります。今回のbootパッケージのcavデータセットもそのようなもののひとつです。皆さん「漏れなく持っているけど」その存在を知っているのは「関係者のみ」?「その関係先」にはコンドロイチンとかヒアルロン酸とか聞いた名前もチラホラ登場。このデータをどうしろと?
“データのお砂場(105) R言語、cav、筋肉のカベオラの位置とな bootパッケージ” の続きを読む
GoにいればGoに従え(39) ラズパイPicoでもレジスタ直接アクセス。最初はCPUID
TinyGo言語は、ハード依存性のあるMachineパッケージを使っていてもピン名を変更するくらいで別なマイコンへ移植可能なことが多くお楽。しかしディープに機種依存なハードを使うためにはハードウエアを直接操作しないとなりません。そんなときでもunsafeなポインタは「隠蔽」可能であります。今回はCPUID読み出し。