忘却の微分方程式(123) 反復練習86、重力による落下、初期値問題、Maxima

DE2_Ex1_plot
Joseph Halfmoon

教科書冒頭ということで、今回もアリガチな例題「重力による落下」の初期値問題であります。ソフトウエア業界の「HelloWorld」、電子工作業界の「Lチカ」にならぶ定番にして吉例なんであります。お答えは分かっているけれども、やらんわけにもいかないデス。御朱印帳にハンコを押す的な。微分方程式88か所?そんなに練習するのか?

“忘却の微分方程式(123) 反復練習86、重力による落下、初期値問題、Maxima” の続きを読む

STM32三昧(4) Cube IDEでDMA転送、メモリからメモリ、Nucleo

DMAsetting
Joseph Halfmoon

Cube IDE使ってSTM32のHALを練習中です。前回DACをソフトウエアで制御し「ゆるゆる」な三角波を発生させてみました。もっと高速な波形を生成するのならDMA利用かね。ということで今回はDMA関係のHALを練習してみることに。まずはメモリ間です。DMAリクエスト元のペリフェラルの設定不要なのでお手軽。

“STM32三昧(4) Cube IDEでDMA転送、メモリからメモリ、Nucleo” の続きを読む

モダンOSのお砂場(78)UNO R4でFreeRTOS、Task発Queue経由OLED行

FreeRTOS_OLED_DUT
Joseph Halfmoon

別シリーズにてUNO R4にOLEDディスプレイを接続。これでprintfしなくても「出力」可能となりました。とは言え一つしかない虎の子のOLEDを複数Taskで奪い合うのは醜い。そこでOLED表示TASKを作製、他のTASKどもはそちらにQueue経由でお願いする形にいたしました。今回のはそのプロトタイプです。

“モダンOSのお砂場(78)UNO R4でFreeRTOS、Task発Queue経由OLED行” の続きを読む

MicroPython的午睡(130)M5Stack UIFlow2、microSDマウント

M5StackSDCardSlotEC
Joseph Halfmoon

前回はM5Stackの前面パネル下に3個あるボタンを押してみました。今回は側面(下側)に移ってmicroSDカードスロットにアクセスしてみたいと思います。SDカードアクセスはESP32用の標準的なMicroPythonと共通ではあるものの、M5Stackのハードウエア特有の設定をしないとなりません。

“MicroPython的午睡(130)M5Stack UIFlow2、microSDマウント” の続きを読む

PIC三昧(22) TIMER0、ワンショットでパルス幅を制御する。PIC16F18855

ResultsWaveForm
Joseph Halfmoon

前回に続きTIMER0を試用。今回はワンショットで出力パルス幅を制御するのに使ってみたいと思います。外部でボタンが押されたことをトリガにして、ボタンが押された直後から所定の幅のパルスを一発出力するもの。制御ではアリガチ?今回は16ビット利用なので最小4μsから最大約260msまでのパルスを自由自在だと。

“PIC三昧(22) TIMER0、ワンショットでパルス幅を制御する。PIC16F18855” の続きを読む

手習ひデジタル信号処理(107) Scilab、赤外線リモコン実機波形の読み取りと解読

rawData
Joseph Halfmoon

前々回、赤外線リモコンの波形(NECフォーマット向け)を生成するScilab関数を作製。その一方、別シリーズにて実際にNECフォーマットのIR信号を出力しているらしいリモコンの実機波形をCSVファイルに取得しました。今回は取得した実機波形から01の生データを解読、前回作成の比較関数で期待値と比較してみます。 “手習ひデジタル信号処理(107) Scilab、赤外線リモコン実機波形の読み取りと解読” の続きを読む

ぐだぐだ低レベルプログラミング(141)ARM64(AArach64)SIMD fcmeq

typeDef
Joseph Halfmoon

前回に続きSIMDの比較命令の練習です。今回は浮動小数型。条件一致すればオール1、不一致でオール0が結果です。いつもの通りA64の命令多すぎ、と書いておきます。前回の整数型であったビット比較が無くなって1個減ったと思ったら、絶対値比較が2個も増えている。かえって練習するパターン増だと。流石だなA64。

“ぐだぐだ低レベルプログラミング(141)ARM64(AArach64)SIMD fcmeq” の続きを読む

部品屋根性(107) SSD1315制御のOLEDのArduino Uno R4/R3接続

SSD1315_OLED128x64
Joseph Halfmoon

別シリーズでルネサスマイコン搭載のArduino Uno R4を使用中。自発光の小型ディスプレイを接続したくなり長らく眠っていたOLEDの小基板を取り付けることに。まずはUno R3で動作確認作業を行おうとしてハマリました。最初からUno R4でやってればよかったんであります。R3でトラブルような周辺装置もあるのだと。

“部品屋根性(107) SSD1315制御のOLEDのArduino Uno R4/R3接続” の続きを読む

データのお砂場(108) R言語、claridge、左利きと遺伝、{boot}

Joseph Halfmoon

R言語のパッケージbootには、ブートストラップ法のサンプルデータセット多数、しかし今回もブートストラップ法は試みておりませぬ。いつやるの?さて、今回のデータセット名は claridge です。そのお名前で検索すると「五つ星」高級ホテルがドーンと見つかりますが関係ないみたい。左利きの傾向と遺伝に関するデータらしいっす。

“データのお砂場(108) R言語、claridge、左利きと遺伝、{boot}” の続きを読む

STM32三昧(3) Cube IDEでDAC出力、ソフトウエアトリガ、Nucleo

STM32_DAC_DUT
Joseph Halfmoon

STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(hardware abstraction layer)を思いつくまま試用中。今回はアナログ出力を行ってみたいと思います。DAコンバータね。まずはソフトウエアループで出力タイミングを制御してゆっくりした三角波を出力してみます。
“STM32三昧(3) Cube IDEでDAC出力、ソフトウエアトリガ、Nucleo” の続きを読む

忘却の微分方程式(122) 反復練習85、微分方程式の一般解、Maxima

DE001_EC
Joseph Halfmoon

約100回近い「単元」を乗り越えて今回から微分方程式に戻ることになりました。長かったです。とはいえまだ、Maxima様のオペレーションを固めるための反復練習の一環であります。最初はフツーの常微分方程式の一般解を求めるというアリガチなところから。しかし「一般解を求める」というところが意外にメンドイ?良い方法は無いのか?

“忘却の微分方程式(122) 反復練習85、微分方程式の一般解、Maxima” の続きを読む

MicroPython的午睡(129)M5Stack UIFlow2、「Btn」を押してみる

BtnTest
Joseph Halfmoon

前回はUIFlow2版MicroPythonをつかってM5Stackの表示に触ってみました。今回はディスプレイ下部に並んでいる3個のボタンを使ってみます。前回同様M5モジュールの中のクラスや関数を使うので、ついでにM5モジュール内の「細々」したところにも触っていきたいと思います。API多すぎ。とても触り切れませぬ。

“MicroPython的午睡(129)M5Stack UIFlow2、「Btn」を押してみる” の続きを読む

PIC三昧(21) TIMER0、外部クロックをカウント、PIC16F18855

TIMER0_DUT
Joseph Halfmoon

前回は内部のクロックを外部出力するCLKREFモジュールを練習しました。今回は外部からクロックを入力して数えてみます。PIC16F18855はタイマ(カウンタ)が充実、0から6まで7本もあります。今回はそのうちのTIMER0を使って外部クロックをカウント、周期的にタイマ0割り込みを発生させてみます。

“PIC三昧(21) TIMER0、外部クロックをカウント、PIC16F18855” の続きを読む

手習ひデジタル信号処理(106) Scilab、cmp_bits()の代替自前関数

Error_cmpbits
Joseph Halfmoon

このところ「バイナリシーケンス」の操作に関する低レベルな関数を作製したりしてきておるのですが、ちょっと困ったことがあります。comm_tbx内のバイナリシーケンスの比較(ビットエラーの検出)をするための関数cmp_bits()がエラーで落ちます。今回はこの回避の仕方および「より低レベルな」代替関数作成。低レベル指向。

“手習ひデジタル信号処理(106) Scilab、cmp_bits()の代替自前関数” の続きを読む