部品屋根性(53) マクドナルドのテーブルロケータその2

macdonalds table locator
Joseph Halfmoon

以前に、McDonald’sで使われているテーブルロケータについて投稿しました。その時は銘板からBLEを使ったローケータでフランスの会社のモジュールみたい、というところで止まってました。今回少し時間が有り、BLEのツールをインストール済のスマホを持っていたので、そのプロトコルを観察できました。iBeaconでしたぜ。

“部品屋根性(53) マクドナルドのテーブルロケータその2” の続きを読む

鳥なき里のマイコン屋(141) ラズパイPico、ハードウエア割り算器の利用

DividerEC
Joseph Halfmoon

前回は浮動小数点数の計算でしたが、今回は整数の割り算です。組み込みMCUのプログラマには「割り算は避ける」習性が刷り込まれています(個人の感想です。)せいぜい2のべき乗の割り算に帰着させて右シフトで逃げます。しかしラズパイPicoでは割り算、あまり苦になりません。ハードウエアの割り算器を搭載。

“鳥なき里のマイコン屋(141) ラズパイPico、ハードウエア割り算器の利用” の続きを読む

手習ひデジタル信号処理(4) STM32F446、最初はIIRフィルタ?

IIR1st
Joseph Halfmoon

信号処理素人の個人の感想ですが、デジタル信号処理の入門書の多くはFIRが先、IIRが後という順番じゃないかと思います。IIRは難しそうだからかな。でも実装するとなるとIIRの方が簡単だったりして。ところが、三上先生本では、先にIIRが登場、どっちが先でもいいっちゃいいですが。まずは前回プログラムを「チョイ変」して1次のIIRフィルタをしみじみ?味わってみたいと思います。

“手習ひデジタル信号処理(4) STM32F446、最初はIIRフィルタ?” の続きを読む

忘却の微分方程式(17) 2D領域プロットリベンジ? MathematicaとMaxima

wxMaxima21052_EC
Joseph Halfmoon

前回、MathematicaとMaximaで同様な2Dプロットを試みておりました。しかし手元の古い版のMaximaでは実行できない関数があるということで途中で無念の?打ち切りと相成りました。そしてMaxima(GUIであるwxMaxima)をバージョンアップ。今回は更新したMaximaを使って前回歯が立たなかったプロットにリベンジ?大丈夫か?

“忘却の微分方程式(17) 2D領域プロットリベンジ? MathematicaとMaxima” の続きを読む

ソフトな忘却力(6) 今回はハード? Jetson Nano復活のACアダプタ

PowerSupplyEC
Joseph Halfmoon

長らく眠っていたJetson Nanoを本日復活させました。眠っていた理由は電源です。Node-REDのサーバ機として活躍しているラズパイ3の電源が不安だったのでJetson Nanoの電源を「召し上げ」ラズパイ3に流用していました。後で買って戻すからといいつつ、ズルズル本日に至ってしまいました。ごめんJetson。

“ソフトな忘却力(6) 今回はハード? Jetson Nano復活のACアダプタ” の続きを読む

お手軽ツールで今更学ぶアナログ(60) ダイオード1N914で実験、詰め込み過ぎ その1

1N914_EC
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」もようやく2019年8月号です。しかし今回は最初から2回に分割という不甲斐なさです。何といっても「実習」盛りすぎ、詰め込み教育です。ADALM2000になったら進行が加速した感じ。今回テーマのダイオード1N914の型番、老眼の目で読み取るのも辛いし。 “お手軽ツールで今更学ぶアナログ(60) ダイオード1N914で実験、詰め込み過ぎ その1” の続きを読む

ブロックを積みながら(39) Node-RED、行き先切り替え、Switchノード

Switch_FlowECB
Joseph Halfmoon

前回のChangeノードは、「積荷」を載せ替えたりするためのものでした。今回のSwitchノードは、「行き先」への仕分けを担うもの、という感じです。仕分けの方法もいろいろあって非常に便利です。今回はその基本部分を使ってみますが、一見しただけでもなかなか便利。

“ブロックを積みながら(39) Node-RED、行き先切り替え、Switchノード” の続きを読む

MicroPython的午睡(46) uasyncioでMQTT送受信、ATOMLite

M5ATOM Flow
Joseph Halfmoon

前回までで「エッジ側」M5ATOM LiteとNode-REDサーバー(Raspberry Pi 3)との間でMQTTを介してJSONオブジェクトを送受できるようになりました。しかし不満なのは送受信のタイミングです。前回まで単一のmainループにお任せだったので便利とは言えない仕組みでした。今回から uasyncioを使って改良していきたいと思います。

“MicroPython的午睡(46) uasyncioでMQTT送受信、ATOMLite” の続きを読む

ぐだぐだ低レベルプログラミング(32) RISC-V、RV32Iシフトあれどもローテイト無

shiftEC
Joseph Halfmoon

今回は、シフト命令を使って行きたいと思います。ハッキリ言ってシフト系の命令冷遇されています。16ビットの圧縮命令にエンコードしてくれるオペランドは限られているし、ローテイト命令など基本命令セットであるRV32Iには含まれとりません。最低限必要なものは用意したので、後はコンパイラでよしなに、という感じですか。

“ぐだぐだ低レベルプログラミング(32) RISC-V、RV32Iシフトあれどもローテイト無” の続きを読む

IoT何をいまさら(96) Wio Terminal、困ったときの uf2。TC割り込み

TC8bitEC
Joseph Halfmoon

別件でSTM32とRP2040でAD, DAを使っているので、ATSAMD51でもやるべしと思い立ちました。先立つものはサンプリング周波数のタイミングということでTC7でタイミング(割り込み)を作ろうとしてハマりました。なぜか割り込み立て続けに入り過ぎ。そのあおりでオブジェクトのダウンロードすら不能。困りました。

“IoT何をいまさら(96) Wio Terminal、困ったときの uf2。TC割り込み” の続きを読む

鳥なき里のマイコン屋(140) ラズパイPico、float計算でROMを呼んでるよね

fmul_fdiv_ec
Joseph Halfmoon

今回は1点確認するだけであります。ラズパイPico上で float型 を使ったら RP2040の内の「fast floating point」を呼んでくれているのだよね、と。ラズパイPicoで積極的にfloatを使いたいとは思わないのですが、昨日 Cortex-M4F機(STM32F446RE)の上で float していたので、Picoの上の浮動小数点はどうなの?と気になったためです。

“鳥なき里のマイコン屋(140) ラズパイPico、float計算でROMを呼んでるよね” の続きを読む

ソフトな忘却力(5) CMakeLists.txtにリンク・ライブラリ指定、Boost

boost_filesystem
Joseph Halfmoon

前回は、VS Code拡張 CMake Toolsが生成してくれたCMakeLists.txtを手修正して「お好み」の階層構造でビルドできることを確かめました。今回はインストール済のライブラリを使えるようにしてみます。リンクするライブラリはBoostの中からFilesystemを選んでみました。何も難しいことはないのだけれど、結局ポカはあるのね。

“ソフトな忘却力(5) CMakeLists.txtにリンク・ライブラリ指定、Boost” の続きを読む

手習ひデジタル信号処理(3) STM32F446、DAのアップサンプリング

NUCLEO-F446RE
Joseph Halfmoon

シリーズ3回目ともなり、ようやく今回はちょっとデジタル信号処理っぽいところに入れます。とはいえ、まずは「動かして効果を実感してみよ」という感じです。実際の信号処理は裏のライブラリで処理されているものを使っているだけでお勉強はまだ後です。しかしま、衣の下(鎧ですぞ)がようやくチラチラしてきました。

“手習ひデジタル信号処理(3) STM32F446、DAのアップサンプリング” の続きを読む

忘却の微分方程式(16) 2Dプロットは仕切り直し、MathematicaとMaxima

MAX2d003
Joseph Halfmoon

Raspberry Piを利用したWolfram言語プロジェクト により無償で使用できるMathematica(Wolfram言語)と、定番の無償ツールMaximaを使用している5回目は2次元のプロットです。今回は Maxima 不戦敗な感じ、どうも私の手元のMaxima古くてダメかも。新版を再インストールして仕切り直した方が良い感じです。

“忘却の微分方程式(16) 2Dプロットは仕切り直し、MathematicaとMaxima” の続きを読む