STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(ハードウエア抽象化レイヤ)を試用中です。前回はTIMER6の割り込みを使ってみました。今回はDAC(デジタル・アナログ・コンバータ)が搭載する「ジェネレータ」機能をTIMER6でトリガしてDACから3角波を出力してみます。
GoにいればGoに従え(43) ラズパイPico、TIMERアラーム、一部は使われている?
ラズパイPicoにTinyGoのオブジェクトを書き込んでラズパイPicoハードウエアをどう制御したものか手探りしてます。今回はTIMERにやってまいりました。TinyGoのmachineパッケージから直接TIMER使えないのだけれど、調べてみるとTIMERはしっかり使われている形跡があります。使っているのは誰ぞ?
MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ
前回はUIFlow2版MicroPython搭載のM5Stackに定番の気圧センサBMP280を接続。今回はこれまた定番の温湿度センサDHT11を接続してみます。過去回でESP32版MicroPythonでDHT11を制御していたのでお楽。M5Stackらしくお愛想にLCDに温湿度を表示するようにいたしました。
“MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ” の続きを読む
モダンOSのお砂場(80)UNO R4でFreeRTOS、規定温度越えたらブザーを鳴らす
前回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経由でお願いする形にいたしました。今回のはそのプロトタイプです。