前回AD22100温度センサで「温度監視」。といいながら温度をOLEDに表示するだけでお茶を濁してました。何か監視した結果っぽいアクションを起こしたいデス(形だけですが。)そこでブザー(パッシブ型)を接続、規定温度を超えたらブザーを鳴らして警告するようにしてみました。タスク間の通知にNotification使用。
PIC三昧(24) Device ID読めるがCONFIG読めない? PIC16F18855
PICマイコンにはコンフィギュレーション・ビットあり、ハード初期設定を不揮発な記憶に残すもの。ありがたい機能ですが自分でやると設定がメンドイ。しかし、コンフィギュレーションツールMCCにお願すれば「よきに計らってくれる」っと。しかしソフトで設定値読み出そうとするとヤバイ?どうなっているの?
レトロな(8) 最近見ないな立派なRESETボタン、でもRESET信号は不滅?
レトロなPCには立派なリセット・ボタンがあった、そういう追憶の中で生きている年寄です。リセット・ボタンが珍しい若者に気づいて驚きました。そういえば最近のパソコンやスマホにはアカラサマなリセットボタンってないの~。無いわけじゃないけれども、どうもメーカー様は隠したいご様子。昔は何かあるとRESET押してたんだけれどな~。
“レトロな(8) 最近見ないな立派なRESETボタン、でもRESET信号は不滅?” の続きを読む
MicroPython的午睡(132)M5Stack UIFlow2、BMP280圧力センサ
前回はM5StackのI2Cに接続されているオンボードのデバイスをスキャンしてみました。同じI2Cバスが側面のGroveコネクタへも出力されております。よってここにI2Cデバイスを接続すれば簡単に使える筈。今回はここに定番の圧力センサ、Bosch BMP280を接続してみます。でもドライバはどうする? “MicroPython的午睡(132)M5Stack UIFlow2、BMP280圧力センサ” の続きを読む
STM32三昧(5) Cube IDEでTIMER6割り込み、Nucleo
STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(ハードウエア抽象化レイヤ)を思いつくまま試用中。前回はメモリ間でDMA転送。続いてDACとメモリ間の転送をすべしと思いきや、そのためにはタイマを使わないといけません。そういえばタイマを練習していなかった。今回はタイマね。
モダンOSのお砂場(79)UNO R4でFreeRTOS、AD22100で温度監視?
別シリーズにてAD22100、電圧出力型温度センサを練習。-50℃から+150℃という広い温度範囲で装置の温度を簡単にモニタできる優れものです。規定の温度範囲を超えたらファンを回すとかいろいろ使えそう?今回は前回作成した「OLED表示」をお願いするだけのタスクの一方を温度監視タスク的な雰囲気にしてみます。
PIC三昧(23) PWM+TIMER+DSM、赤外線リモコン波形、PIC16F18855
別件シリーズでコンピュータ上で赤外線リモコン波形を生成。こちらでは実際に赤外線LEDを駆動して「送信」できる筈の波形をPIC16マイコンで作成してみたいと思います。とりあえずの今回は0と1の波形が生成されていることをオシロで確認するところまで。過去回で練習済のTIMER、PWM、DSMの合わせ技、応用課題か?
“PIC三昧(23) PWM+TIMER+DSM、赤外線リモコン波形、PIC16F18855” の続きを読む
MicroPython的午睡(131)M5Stack UIFlow2、I2Cスキャン
前回SPI経由でmicroSDカードへアクセス。今回はI2Cをスキャンしてみます。M5Stack内蔵のI2C接続デバイスあり、既に初期化済の筈。それとの競合がチト心配ではあるのですがMicroPython側のI2Cインスタンスを作ってスキャンをかけてみます。このI2C信号が側面ピンソケットやGroveコネクタにも接続。
GoにいればGoに従え(42) ラズパイPico、SSD1315接続、OLEDで表示
別シリーズ記事で、Arduino Uno R4にOLEDを接続し表示ができました。小さくても自発光のディスプレイは見やすいです。そこでTinyGoの練習に使っているラズパイPicoでもOLED接続を試みてみることにいたしました。TinyGoで、ビルドした、書き込んだ、動いた、という感じっす。ホントか?
STM32三昧(4) Cube IDEでDMA転送、メモリからメモリ、Nucleo
Cube IDE使ってSTM32のHALを練習中です。前回DACをソフトウエアで制御し「ゆるゆる」な三角波を発生させてみました。もっと高速な波形を生成するのならDMA利用かね。ということで今回はDMA関係のHALを練習してみることに。まずはメモリ間です。DMAリクエスト元のペリフェラルの設定不要なのでお手軽。
モダンOSのお砂場(78)UNO R4でFreeRTOS、Task発Queue経由OLED行
別シリーズにてUNO R4にOLEDディスプレイを接続。これでprintfしなくても「出力」可能となりました。とは言え一つしかない虎の子のOLEDを複数Taskで奪い合うのは醜い。そこでOLED表示TASKを作製、他のTASKどもはそちらにQueue経由でお願いする形にいたしました。今回のはそのプロトタイプです。
MicroPython的午睡(130)M5Stack UIFlow2、microSDマウント
前回はM5Stackの前面パネル下に3個あるボタンを押してみました。今回は側面(下側)に移ってmicroSDカードスロットにアクセスしてみたいと思います。SDカードアクセスはESP32用の標準的なMicroPythonと共通ではあるものの、M5Stackのハードウエア特有の設定をしないとなりません。
PIC三昧(22) TIMER0、ワンショットでパルス幅を制御する。PIC16F18855
前回に続きTIMER0を試用。今回はワンショットで出力パルス幅を制御するのに使ってみたいと思います。外部でボタンが押されたことをトリガにして、ボタンが押された直後から所定の幅のパルスを一発出力するもの。制御ではアリガチ?今回は16ビット利用なので最小4μsから最大約260msまでのパルスを自由自在だと。
STM32三昧(3) Cube IDEでDAC出力、ソフトウエアトリガ、Nucleo
STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(hardware abstraction layer)を思いつくまま試用中。今回はアナログ出力を行ってみたいと思います。DAコンバータね。まずはソフトウエアループで出力タイミングを制御してゆっくりした三角波を出力してみます。
“STM32三昧(3) Cube IDEでDAC出力、ソフトウエアトリガ、Nucleo” の続きを読む