Armは64ビット化するときに32ビットであった「余計なもの」を捨ててます。しかしレジスタをシフトしてから演算という命令は捨てなかったです。アドレス計算などに便利なようでいて、実はそれほど頻繁に使う分けでもない命令(個人の感想です。)RISC-Vなどは持ってない類。もはやArmの伝統といっても良い機能かと。
鳥なき里のマイコン屋(156) Wio TerminalでもGo! TinyGoで5機種目
マイコン上でのGo言語(TinyGo)の動作確認、Wio Terminalにて5機種目であります。米MicroChip社のATSAMD51P20搭載、Arm Cortex-M4Fコアであります。既に確認済のSeeeduino XiaoのATSAMD21マイコンの上位機種です。例によって吉例Lチカ行ってみます。
手習ひデジタル信号処理(36) IIRフィルタ、直交する正弦波発生器その1
前回はIIRフィルタを使って正弦波を生成でした。今回はその応用であります。直交する正弦波、要するにSin波とCos波、位相90度ずれた波の生成です。例によって今回はブロックダイアグラムをシミュレーションしてPC上で確認です。実際に三上先生の教科書のコードを実機で動作させるのはまた次回の予定。
データのお砂場(30) R言語、UKgas、英国のガス消費量4半期毎
R言語所蔵のサンプルデータをABC順にみております。今回登場は1960年代から80年代中盤にかけての英国のガス消費量のデータです。時系列データの定番サンプル的なやつ。結構あちこちで目にするような気がします。データは天然ガス限定と書いていないですが、今や無色無臭の天然ガスも、ガス臭い、いや、きな臭くなった世界。
ブロックを積みながら(66) Node-RED、TCP requestノード
前回はUDPパケットを対向機にECHOしてもらってUDP in/out の動作を見てみました。今回はTCP requestノードを使って 送信したTCPパケットを前回同様にECHOしてもらって動作確認したいと思います。TCPはハンドシェークが必要なので実際に流れるパケットの様子は複雑ですが、表向きは超簡単!ホントか?
やっつけな日常(17) スマホでGo!GoのポインタはCとは違うケド、ちょっとだけよ。
Go言語を始めて喜んだことの一つにポインタがあります。一瞬、ポインタがあれば「やりたい放題」と思ったのですが違いました。Goのポインタはほぼ安全。Cのように不作法な操作は許してくれないことが分かりました。でもねえ、やっぱり「危ない」ポインタ操作をやりたい人はいたみたい。その名もunsafeモジュール。
うさちゃんと一緒(7) TCPパケットをオウム返しでtelnet、Rabbit4000
前回はUDPでしたが、今回はTCPのパケットをうさちゃん(Rabbit4000)にオウム返ししてもらいます。使うポートは23。telnetであります。Scapyも使ってみますが、TCPは3wayハンドシェイクしないといけないので本来の telnet コマンドにご登場願う、と。あれtelnetインストールしてなかった?
鳥なき里のマイコン屋(155) RISC-VでもGo!TinyGoで4機種目 MaixBit
Go言語の動作確認、Androidスマホで始め、Linux機、Windows機でOK。TinyGoを導入し、ラズパイPico、Seeeduino Xiao、BBC micro:bitと3機種でもOKです。今回はマイコン4機種目、64ビットRISC-V機、Kendryte K210搭載Sipeed MAiX Bit。
モダンOSのお砂場(46) Zephyr、スレッド生成、ダブルLチカ STM32F401RE
前回Zephyr OSのデバイスツリーの高い壁?を何とか乗り越えた?ので、今回はマルチスレッドに進みたいと思います。といっても前回作成のプログラムで2つ光らせていたLEDの片方を新設のスレッドの制御下に移すというだけのもの。なにはともあれマルチスレッド、と。
鳥なき里のマイコン屋(154) micro:bitでもGo!TinyGoで3機種目
スマホ上でGo言語を始めてハマりました。スマホでGo、パソコンでGo、ラズパイ(Linux機)でGo。そしてTinyGo処理系を導入。マイコン相手にもコンパイルしてGoです。ラズパイPico、Seeeduino XiaoとGo、今回はBBC micro:bitであります。久しぶりのmicro:bitでLチカだあ。
ぐだぐだ低レベルプログラミング(63) ARM64(AArch64)、フラグの観察 adds
前回はArmの64ビット命令の即値Addを眺めてみました。それだけでも4形式の命令があったのですが、前回作成した命令表には、まったく同等な加算動作を行う命令Addsが隣に並んでいます。整数加算することはAddと同じですが、副作用、フラグを立てたり下ろしたりする、ということのみが違う命令です。なお演習はスマホ上です。
AT SAMの部屋(3) XiaoでもGo! TinyGoでXiaoの吉例Lチカ
Go言語の処理系TinyGoを使用すると、Go言語で書いたソースをMCU向けにコンパイルしてFlashに書き込み、実行可能。別シリーズにてラズパイPicoでは成功。今回はSeeeduino Xiao(Microchip SAMD21マイコン搭載)を復活、吉例LチカをTinyGoで行ってみます。母艦はWindowsPC。
データのお砂場(29) R言語、UCBAdmmissions、UCバークレーの入試男女比?
ABC順に端からサンプリングデータ、再びカテゴリカルデータの集計登場。UCバークレー校のAdmissions(入試)の学部別、男女別の合否データみたいです。出典は1975年の御本なので、相当古いデータ。しかしこのデータ「シンプソンのパラドックス」を説明するときの定番データらしいです。知らないとモグリ的なやつ?