統合室内環境センサー

PICマイコンのプログラミング面白いですね。面白いけど難しい。
まずデバッグのやりにくさ。今までなら普通にログ仕込んで、printやらsyslogやらで、、、となりますがマイコンの世界となるとまずコンソールつなげるまでが一苦労ですしprintfすらも使えない。
しかしその分、動いたときは「キター!」の喜び倍増です。

今週末は、前々から構想を描いていた “統合室内環境センサー” の作成です。
名前だけは立派ですが、ただ気温・湿度を測るだけ(苦笑)
どの辺が”統合”かというと、音声合成ICをつけてしゃべらせるのと、LCDのバックライトを自動でOFFにし、手をかざすとONにするというあたりが。

一番苦労したのが、肝心の気温・湿度センサーのDHT-11を動かすまでです。
これ、1本の入力PINで全てのデータをまかなえ、A/Dコンバートも不要なんですが、いかんせんタイミングがシビア過ぎてなかなか意図通りに読めません。ラズパイ用のPythonプログラムだとゴリゴリ書いてあったので、マイコンならもっとタイミングが正確で楽に書けるかと思ってました。
最初は、I/O割り込み(IOC)使うのにうってつけかと思って、カッコつけて割り込みルーチンをバリバリ書いてたんですけど30ビットくらいしか読めなくて、なんでじゃー!と時間がすぎるばかり。
結局最後は、他の人のコードを参考にするはめに。ループの書き方一つでもタイミングがずれたり。エレガントに書こうとするとかえって動かないようで、マイコンの世界は難しい。

電子工作はじめました

うーむ、最低でも1ヶ月に1回は投稿しようと思ってたんですが、ずるずると2月も半ばになってしまいました。
まぁ、いろいろと働く環境も変わって落ち着かなかったのですが。。(言い訳)
それで新しい仕事を覚えるために始めた電子工作(組み込み系)なのですが、これが結構新鮮というか仕事抜きで面白いなと。
私はちょうどパソコンが普及し始める頃に高校生になった世代で、当時のパソコンをいじる感覚とちょっと似てるんですよね。
今のパソコンだともう昔のスパコン並みになんでもできてしまうんですが、電子工作だと制約がある分、実感があるというか。

とりあえずRaspberryPi 3B+ の入門セットを購入し、中国製の学習キットで勉強してますがハッキリ言って分かりやすい。
こういった分野では日本は遅れてるなと実感。
PythonやCのライブラリを使えば、割と簡単に制御できるのですが、なるべくデータシート見ながら自力でプログラム書いてます。
電子工作というと、回路考えたりはんだ付けばっかりやってるイメージがありますが、真面目にイチからやるとソフト考えてる時間が大半ではなかろーか。

まだ満足に回路も組めないくせに、マイコンのアセンブラが妙に懐かしく、とうとうPICマイコンにも手を出すことに。
RAMが128バイトしかないとか、ちょっと萌え(燃え)ます!