うさちゃんと一緒(7) TCPパケットをオウム返しでtelnet、Rabbit4000

telnet
Joseph Halfmoon

前回はUDPでしたが、今回はTCPのパケットをうさちゃん(Rabbit4000)にオウム返ししてもらいます。使うポートは23。telnetであります。Scapyも使ってみますが、TCPは3wayハンドシェイクしないといけないので本来の telnet コマンドにご登場願う、と。あれtelnetインストールしてなかった?

“うさちゃんと一緒(7) TCPパケットをオウム返しでtelnet、Rabbit4000” の続きを読む

鳥なき里のマイコン屋(155) RISC-VでもGo!TinyGoで4機種目 MaixBit

maixBitGOHELLO
Joseph Halfmoon

Go言語の動作確認、Androidスマホで始め、Linux機、Windows機でOK。TinyGoを導入し、ラズパイPicoSeeeduino XiaoBBC micro:bitと3機種でもOKです。今回はマイコン4機種目、64ビットRISC-V機、Kendryte K210搭載Sipeed MAiX Bit。

“鳥なき里のマイコン屋(155) RISC-VでもGo!TinyGoで4機種目 MaixBit” の続きを読む

モダンOSのお砂場(46) Zephyr、スレッド生成、ダブルLチカ STM32F401RE

ThreadA_VScode
Joseph Halfmoon

前回Zephyr OSのデバイスツリーの高い壁?を何とか乗り越えた?ので、今回はマルチスレッドに進みたいと思います。といっても前回作成のプログラムで2つ光らせていたLEDの片方を新設のスレッドの制御下に移すというだけのもの。なにはともあれマルチスレッド、と。

“モダンOSのお砂場(46) Zephyr、スレッド生成、ダブルLチカ STM32F401RE” の続きを読む

鳥なき里のマイコン屋(154) micro:bitでもGo!TinyGoで3機種目

BBCmicroBit_TinyGo
Joseph Halfmoon

スマホ上でGo言語を始めてハマりました。スマホでGo、パソコンでGo、ラズパイ(Linux機)でGo。そしてTinyGo処理系を導入。マイコン相手にもコンパイルしてGoです。ラズパイPico、Seeeduino XiaoとGo、今回はBBC micro:bitであります。久しぶりのmicro:bitでLチカだあ。

“鳥なき里のマイコン屋(154) micro:bitでもGo!TinyGoで3機種目” の続きを読む

AT SAMの部屋(3) XiaoでもGo! TinyGoでXiaoの吉例Lチカ

GoXiao_DUT
Joseph Halfmoon

Go言語の処理系TinyGoを使用すると、Go言語で書いたソースをMCU向けにコンパイルしてFlashに書き込み、実行可能。別シリーズにてラズパイPicoでは成功。今回はSeeeduino Xiao(Microchip SAMD21マイコン搭載)を復活、吉例LチカをTinyGoで行ってみます。母艦はWindowsPC。

“AT SAMの部屋(3) XiaoでもGo! TinyGoでXiaoの吉例Lチカ” の続きを読む

Pico三昧(15) PicoでもGo!Flash書き込み方法教えてもらった+VSCode

VScodeTinyGo
Joseph Halfmoon

前回、TinyGoのオブジェクトをラズパイPicoに書き込むのに「まどろっこしい」方法を書いてしまいました。そしたらば「takasago様」からツイッターで「もっといい方法」お教えいただきました。ありがとうございます。やってみました。良い感じです。今回はついでにVSCodeも使えるように。細かい躓きはいつもあり。

“Pico三昧(15) PicoでもGo!Flash書き込み方法教えてもらった+VSCode” の続きを読む

手習ひデジタル信号処理(35) IIRフィルタによる正弦波発生器その2

sin_1khz
Joseph Halfmoon

前回、IIRフィルタ(簡単なやつ?)のブロックダイアグラムをシミュレーションして正弦波らしきものが生成されることを観察しました。今回は実機で三上先生のサンプルプログラムを動かしてみます。折角なので外付け回路の「想定外」の周波数まで生成周波数を上げてみました。IIR凄い?

“手習ひデジタル信号処理(35) IIRフィルタによる正弦波発生器その2” の続きを読む

うさちゃんと一緒(6) Scapyから送ったUDPパケットをオウム返し、Rabbit4000

WSK000
Joseph Halfmoon

うさちゃん(Rabbit4000)相手のネットワーク通信の練習も、そろそろデータを載せてみたいです。今回は高々4文字、UDPでラズパイからうさちゃんへ、うさちゃんからラズパイへと相互にパケットを投げつけあってみたいと思います。わたしゃ止めることを全然気にしていなかったこと発覚。1つ間違えたら自分で自分にDDoS攻撃?

“うさちゃんと一緒(6) Scapyから送ったUDPパケットをオウム返し、Rabbit4000” の続きを読む

モダンOSのお砂場(45) Zephyr、抽象度?高っ!GPIOをトグルするまでのあれこれ

ZephyrGPIO_EC
Joseph Halfmoon

大分前にZephyr RTOSのサンプルをビルドした後進捗なく過ごしておりましたのは他でもありません、Device Treeの抽象度の高さにGPIOの端子をトグルさせるのもどうしてよいか分からない状態だったからです。その辺FreeRTOSもArm MbedOSも分かり易いのでZephyr避けてました。GWだし再開。

“モダンOSのお砂場(45) Zephyr、抽象度?高っ!GPIOをトグルするまでのあれこれ” の続きを読む

Pico三昧(14) PicoでもGo! TinyGoのオブジェクトがPico上で走るまで

TinyGoTarget
Joseph Halfmoon

別シリーズでGo言語を勉強したりしているのですが、インタプリットもでき、バイナリにビルドもできでなかなか良いものです。マイクロコントローラでもGoのオブジェクトを走らせられるということで今回やってみましたです。ターゲットはラズパイPico。その母艦は例によってラズパイ4です。C/C++SDKと同様で実行可能。

“Pico三昧(14) PicoでもGo! TinyGoのオブジェクトがPico上で走るまで” の続きを読む

MicroPython的午睡(67) ラズパイPico、5V信号IF取り付け、動作確認

RpiPico_5VIF_TEST_CIRCUIT
Joseph Halfmoon

進捗が捗々しくなかったのは大したことない配線本数を敬遠していたからに違いありません。何時までもメンドイなどと言っていると一生できないのでGWでもあり配線することにいたしました。ラズパイPicoに5V系のあるデバイスを接続する一件であります。重い腰を上げた今回は5V変換チップを接続して動作チェックまで。刻むね、自分。

“MicroPython的午睡(67) ラズパイPico、5V信号IF取り付け、動作確認” の続きを読む

うさちゃんと一緒(5) ScapyでARPしてICMP、一歩づつ? Rabbit 4000

Rabbit4000_EC
Joseph Halfmoon

ふと見ると「うさちゃん」ボードに薄っすらと埃が積もってました(うさちゃんの御近影は冒頭に。)前回から大分間が空いてしまいました。今回は前回の続きでARPパケットにお返事をもらい、リプライの中から必要な情報を取り出し、次なる送信パケットを組み立てたいと思います。

“うさちゃんと一緒(5) ScapyでARPしてICMP、一歩づつ? Rabbit 4000” の続きを読む

手習ひデジタル信号処理(33) sin関数とFastSin関数の実行サイクル数測定

Result
Joseph Halfmoon

前回は正弦波を計算で生成するためにミニマックス近似を使ったFastSin関数を使わせていただきました。12ビットの精度なら十分使えて「速い」と三上先生の御本にはあるのです。しかしどのくらい速いのだか気になります。今回は実機(Arm Cortex-M4F)上でどのくらい速いのだか測定してみたいと思います。

“手習ひデジタル信号処理(33) sin関数とFastSin関数の実行サイクル数測定” の続きを読む

モダンOSのお砂場(44) Mbed OS6、SemaphoreでISRの中から排他制御

SemaphoreSampleDUT
Joseph Halfmoon

前回Mutex(2つあるうちのRTOS Mutexと呼ばれている方)を使ってみました。スレッド間の同期には有効なAPIですが、残念ながらISR(割り込みサービスルーチン)との間では使用できません。そこで今回はSemaphoreを使って、ISRとThreadの間で排他制御を行ってみます。

“モダンOSのお砂場(44) Mbed OS6、SemaphoreでISRの中から排他制御” の続きを読む