IoT何をいまさら(25) ATコマンドパーサ、とりあえずの自作

数日、投稿をお休みしただけで浦島太郎状態です。何やっていたのか思い出せない。そういえば、ESP32をATコマンドで制御するために何かしようとしていたのではなかったかしら、という分けで、ATコマンドのパーサ作りから「復帰」するかと思い立ちました。しかし、Ebedのライブラリなどつらつら見るに

    • ArmコピーライトのWiFi制御の例題プログラムあり
    • それ以外のソースのAT Command Parserもあり

で、その辺を「使わせてもらって」お茶を濁せば良いのでないの、という気もしないでもないです。しかし、ま、諸般の都合あり、自作することにいたしました。

“IoT何をいまさら(25) ATコマンドパーサ、とりあえずの自作” の続きを読む

鳥なき里のマイコン屋(64) Mbed、使われているコンパイラは何?

このところ、またMbedのWeb開発環境に戻って作業しています。大分慣れてきたのですが、ちょっと疑問に思うことがありました。Web開発環境の裏側では「コンパイラ」が動作している筈ですが、それはどのようなコンパイラなのかと。いろいろ見れば、Armの「純正コンパイラ」

Arm Keil

であるようですが、gccのように

gcc –version

などとやってコンパイラのバージョンとか分からないものかと思っていました。まあ、知ったからといって、コンパイラのバージョンにセンシティブなほど本格的な使い方はしていないのでありますが。心の片隅にしまわれた小さな疑問というだけのことです。 “鳥なき里のマイコン屋(64) Mbed、使われているコンパイラは何?” の続きを読む

Literature Watch Returns(6) ヒューズでまる1冊、アナログウエアNo.9

トラ技の読者であれば、ご存知かと思いますが、時々、付録に小冊子「アナログウエア」というのが付いてまいります。赤い本です。小冊子といっても、本誌と同じサイズで70ページほど、それに本誌と違って広告は表紙と裏表紙の表裏に限られるので、結構読み応えのある分量です。トラ技2019年7月号には、No.9という号がついてくるのですが、

まるまる1冊ヒューズの本

でした。これがとても面白かったのです。

“Literature Watch Returns(6) ヒューズでまる1冊、アナログウエアNo.9” の続きを読む

鳥なき里のマイコン屋(63) NXPマイコンにみるMbed微妙な違い

一種類とか一社製品とかばかり見ていると知らぬ間に頭が「その常識」に囚われて、いろいろ見えなくなることがあるものです。このところ、ST社のSTM32マイコンを搭載したNucleoボードでばかり「遊んで」います。ちょっと他社のマイコン、それもArm EbedのWeb開発環境でプログラムを作れるものにもちょいと手を出しておくかいなと思いました。選んだのは、

NXP社のLPC11U35搭載のボード

です。正確に言えば、NXP社のLPC11U35マイコンを搭載したEmbedded Artists社のEA LPC11U35 QuickStart Board互換の秋月製ボードです。純正品に比べると大分お手頃だったので、つい。

“鳥なき里のマイコン屋(63) NXPマイコンにみるMbed微妙な違い” の続きを読む

モダンOSのお砂場(1) Mbed OS、スレッド、セマフォ、イベント、割り込み

RTOS(リアルタイム・オペレーティングシステム)などと言うと、とても敷居が高くて、準備するだけで数か月みたいなイメージをもっていたのですが、

モダンOS

では違うようです。今日も実働時間1時間もかからずに、何の知識もない状態から、4スレッド(一般のRTOSでは普通タスクと呼ぶけど)、セマフォにイベントフラグ、割り込みハンドラなど含めたRTOS(Ebed OS5)の練習プログラム、動いてしまいました。でも、いつもの調子で大慌てなドタバタもあったんであります。まあ、書いてみないと分からない。 “モダンOSのお砂場(1) Mbed OS、スレッド、セマフォ、イベント、割り込み” の続きを読む

鳥なき里のマイコン屋(62) DfuSeとST-LINK Utility

先日からST社のツールを使わせていただいておりますが、よく資料も読まずに作業していたので、ここに来てちゃんと資料を読もうと思いいたりました。マイコンツールの基本中の基本に、作成したプログラムを実機のプログラムメモリに書き込むときに使うオブジェクトファイルフォーマットというものあり、古くから、

    • インテルHEXフォーマット
    • モトローラSフォーマット

などというものが使われております。当然、WindowsやLinuxでもオブジェクトファイルフォーマットは存在し、PEとかELFとかが使われます。マイコン用とパソコン用の違いを簡単に述べれば、以下のような感じでしょうか。

    • パソコン用のフォーマットではOSがロードするときに番地を操作して実行可能な状態にする。相対番地で、かつ動的に実行時にリンクされる部分がある。
    • マイコン用のフォーマットでは絶対番地で静的にリンク済で即実行可能な状態である(ことが多い)。

実際には、ELFフォーマットのような相対番地のフォーマットでコンパイル、リンクまで済ませた後、バイナリツールを使って絶対番地のマイコンに転送できるHEXフォーマットに変換し、書き込みツールでマイコンに書き込む、といったことが行われます。

ST社においても、この手の操作は必須なだけに当然ツール類がサポートされています。

“鳥なき里のマイコン屋(62) DfuSeとST-LINK Utility” の続きを読む

鳥なき里のマイコン屋(61) STM32CubeIDE その3

最初はカッコよさに目が眩んでいたのですが、触ってみるとちょっと不満も出てまいります。なにせこのSTM32CubeIDEのRelease noteのRevision historyを見てみると

19-Apr-2019 Initial release

とあります。ホント出たばかり。まだ出だし、こなれていない感じもします。これからいろいろ改良されたりすると期待しています。最初は、いろいろあるんじゃないかと思います。

“鳥なき里のマイコン屋(61) STM32CubeIDE その3” の続きを読む

トホホな疑問(1) 仮想COMポートのお名前 WSL/Cygwin/MSYS

最近、マイコン開発ボード間の接続にUARTを使うようなことを始めております。時間もないので途切れ途切れにソフトを書くしかないのですが、そのマイコン上でなければ書けないようなものならともかく、UART使った文字ベースのプログラムであれば、

パソコンの上である程度作って、デバッグしてから

マイコンに持っていけば簡単じゃん、とか思ってしまうわけです。とは言え、VCでWindowsのAPI使って書く気が起きませぬ(普段Windows上ではお手軽なC#ばかりだから)。WSL(上のUbuntu)か、Cygwinか、MSYS2か、いずれにせよ、gccで書いてマイコンのgccに持ち込むのがよろしかろう、などと考えました。しかし、まてよ、WindowsのCOMxxってその手の環境で使ったことなかった。どんなお名前で呼べば良いの?トホホな疑問です。

“トホホな疑問(1) 仮想COMポートのお名前 WSL/Cygwin/MSYS” の続きを読む

鳥なき里のマイコン屋(60) STM32CubeIDE その2

前回は、STM32CubeIDEをインストールしてプロジェクトを作ってみたところで終わってしまいました。今回は、恒例の「Lチカ」をビルドして走らせようと思うのですが、初めての環境、手探り状態です。そんな簡単な事でも、やはり初回はノーエラーとは行きません。またまたダウンロードが走り出します。

“鳥なき里のマイコン屋(60) STM32CubeIDE その2” の続きを読む

鳥なき里のマイコン屋(59) STM32CubeIDE その1

マイコン開発ツールを毎月1種類使ってみて、これを1年も続けたら開発ツールの「今」が分かるんでないかい、と思って3カ月目なのであります。3つ目インストールせずにはいられません。と言って何に手を出すか?別にSTの回し者ではないのですが、このところSTのNucleoボードを使うことが多いので、まずはこのボードに適合するツールを「網羅」すべくという目標をたてました。しかし、調べると結構いろいろあるんでありますな、開発ツール。この頃、大分淘汰されているのかと思っていたのですが、勢いのあるマイコンはサポートされる、というところなのでしょう。

“鳥なき里のマイコン屋(59) STM32CubeIDE その1” の続きを読む

IoT何をいまさら(24) ST VL53L0X, TOF センサ

1カ月くらい前にシャープ製の三角測量原理の測距センサをいじってみましたが、モダンな測距センサの主流といえばTOF(Time Of Flight)センサでしょう。スマホにまで入りつつあるTOFセンサ、ちょっと遊んでみたくなって入手いたしました。ST Microelectronics社のVL53L0Xという型番のTOFセンサです。940nm Class 1 レーザを使用し、最小3cmから最大200cm(屋内)まで測距できるもの。このセンサに加え電源やレベル変換ICなどを搭載したモジュールを、例によって秋月通商から購入。コネクタから配線が取り出せるようになっているので、センサを「ボード」に取り付けるだけで動作します。

“IoT何をいまさら(24) ST VL53L0X, TOF センサ” の続きを読む

IoT何をいまさら(23) PythonとBottleで通信相手を作る

前回はマイコン(ノード側)の通信テストの相手にするために、Raspberry Piを使おうと思い立ち、Raspberry Piを「数年ぶりの再稼働」いたしました。数年ぶりともなると溜まるものが溜まっています。ファイルの更新作業だけで夜中までかかってしまいました。ようやく今回から、Raspberry Pi上に「テスト用のサーバーもどき」を作り始めたいと思います。お手軽重視なので、簡単に作れるものが良いな~と探したところ

Python上で動作するBottleというフレームワークが良さげ

ではないかなと考えました。Pythonでしたら普段から使っているので(Python使いの人のPythonらしいPythonコードには未だに慣れず、ごくごく普通な書き方をしておりますが)何かとお手軽。

“IoT何をいまさら(23) PythonとBottleで通信相手を作る” の続きを読む

IoT何をいまさら(22) Raspberry Pi再稼働で大慌て

このところ無線モジュールを使えそうな感じになってきたので、マイコンのセンサで取得したデータを送る先のテスト用のサーバーが必要だなと思っていたんであります。本格的になってきたら、外部のサーバー、とくにIoT向けで何かお試しできるようなサイトに登録してと思うのですが、とりあえずはマイコンの通信相手として手元に置いておきたい。でも普段づかいのPCの上でサーバー動かすのはやりたくない。ちょうどいいのがあるじゃないか

ずっと眠っているRaspberry Pi

最近のCortex-A搭載しているバージョンではなく、ARM11コアの古い版(最近でもZeroとかは同じチップ使っているようですが)です。買った当時は、Raspberry Pi 2だとか3だとか、という種別はなかったので、確か モデルB+ とだけ呼ばれていた筈。その前に持っていた(今も持っているが)プラスのつかないBが、イマイチ電源が不安定で買いなおしたやつでした。買った当時はそこそこ「遊んで」いたのですが、ここ数年、眠ったまま。でもネットには接続しているので、これを復活させればIoTのテストくらいには使えるのではないかい、と安直に考えました。

“IoT何をいまさら(22) Raspberry Pi再稼働で大慌て” の続きを読む

Literature watch returns (5) ボイジャーに学ぶ無線特集、トラ技 2019/6月号 CQ出版

連休明けには手元にあったトラ技の6月号なんでありますが、なかなか読めずにおり、ようやくに読みました。林さんのSDR連載(CICフィルタ連載というべきか)は今回お休みらしい。そこに「長距離ディジタル無線」の特集です。

ボイジャーに学ぶ

この頃、ロケットとか、間口を広げたのか、エレクトロニクスの領分が広がったというべきなのか、宇宙ものが増えた感じの「トランジスタ技術」誌なのであります。確かにボイジャー、(地球人設計による)長距離無線の記録保持者というべきか。

“Literature watch returns (5) ボイジャーに学ぶ無線特集、トラ技 2019/6月号 CQ出版” の続きを読む