
前々回、ラズパイPico上でuarrayとuctypesを使い、連続したメモリ上に置かれるバイナリ配列を操作してみました。メモリに制約のあるマイコン上のMicroPythonでは必須でしょう。今回はこれまたMicroPythonの特徴の一つであるFlash上のストレージに対してバイナリ配列の読み書きをやってみます。
デバイス作る人>>デバイス使う人>>デバイスおたく
前々回、ラズパイPico上でuarrayとuctypesを使い、連続したメモリ上に置かれるバイナリ配列を操作してみました。メモリに制約のあるマイコン上のMicroPythonでは必須でしょう。今回はこれまたMicroPythonの特徴の一つであるFlash上のストレージに対してバイナリ配列の読み書きをやってみます。
前回は「絶対番地アクセス可能なヤバイ奴」uctypesモジュールと structモジュールが「相互運用可能」ということで便利だと喜びました。「絶対番地」でアクセスできるので当たり前っちゃ当たりまえです。今回は、arrayモジュールの配列もまたuctypesでアクセスできるというこれまた当たり前の件を実習してみます。 “MicroPython的午睡(71) ラズパイPico、uctypesとuarray” の続きを読む
前回、前々回とuctypesモジュールを使ってCの「構造体」的なものにアクセスしてみました。しかしMicroPythonには、その名もズバリのstructモジュールがあるのです。こちらはCの「構造体」的なものにパックしたりアンパックしたりできるもの。「似たもの同士」だから、相互に運用可能じゃないかい?やってみました。 “MicroPython的午睡(70) ラズパイPico、uctypesとstruct” の続きを読む
前回はMicroPythonのuctypesモジュールを使って、ラズパイPicoのCPUレジスタを直接読んでみました。しかし読み取りだけ、書き込みもビットフィールド・アクセスもやってないです。直接IO制御するなら練習しておかないと。今回はメモリ上のバイトアレイを練習相手に書き込みとビットフィールド操作をやってみます。
“MicroPython的午睡(69) ラズパイPico、構造体アクセス、ビットフィールド含む” の続きを読む
前回記事から約4か月もMicroPythonご無沙汰です。別処理系に手を伸ばしたせいで棚上げ状態。これではイケナイということでMicroPython再開でございます。しかし忘却力です。どうやってMicroPythonしたらよかったんだけ?まずはターゲットになるボードを取り出さないと。。。ラズパイPicoであります。 “MicroPython的午睡(68) ラズパイPico、IOレジスタへの直接アクセス” の続きを読む
前回MicroChip社製MCP4018デジタルポテンショメータをラズパイPicoに取り付けて制御。I2Cで制御できる「可変抵抗」です。今回は応用例としてデータシートに載っているアナログコンパレータの閾値調整をやってみます。想定の応用はセンサなどからのアナログ信号がある閾値を超えたらマイコンに割り込むとか。
前回、懐かしの三洋電機製LC7366NをラズパイPicoのMicroPythonから制御してDMTFトーン(プッシュホンのピポパポ音)を発生してみました。1音、それも波形のみ観察でした。今回はスピーカを取り付けて16音全てを「聞いて」みたいと思います。耳で聞くのは良いけれど、トーンをデコードしてくれる相手がいないです。
別投稿で音声フォルマント周波数をとり扱いました。その「反対」で音声フォルマントを外した代表例?DTMF=Dual-Tone Multi-Frequencyトーン生成用のICをラズパイPico上のMicroPythonから制御してみる1回目です。DTMF、電話の「ピポパポ」音。スマホでも「まだ」使えるけれど使わないか?
前回WatchDogタイマを使ってみたのは、M5ATOMLite用の「環境測定&MQTT報告」スクリプトを長時間走らせているとハングする現象の対策のためでした。しかしWatchDogで復旧を試みるまえに原因に当たりをつけておきたいです。そこで「ダイイングメッセージ」が残るようにスクリプトを改変。