MicroPython上でも使えるCPython(フルのPython実装)のサブセット・モジュールを見てます。今回はhashlibとな。この年寄はMD5計算できればいいんじゃね、くらいのいい加減さ。ESP32版のMicroPythonみたらばMD5は割愛されてました。SHA256使え(SHA1もある)ということみたい。
“MicroPython的午睡(113) ESP32版、hashlib使ってsha256を計算” の続きを読む
PIC三昧(4) まずはEXT_INTを使ってみる。PIC16F18855
モダーンなPIC16F1xxx マイコンは外部割り込みも2系統の方法をサポートしてます。IOCと呼ばれる方はカッコよく複雑な条件で割り込み処理が開始できます。一方、単にINT Pinとか、EXT_INTと呼ばれる方は「昔ながらの」割り込みピンのようです。まず今回は「昔ながらの」方法で外部割込みをかけてみたいと思います。
モダンOSのお砂場(62) UNO R4、ルネサスRA4M1でFreeRTOS、タスク生成
Arduino UNO R4登場。ルネサスのArmマイコン搭載。32ビット機なのでArduino IDE環境を使いつつ、FreeRTOSベースで使ってみようかと思います。別シリーズでFreeRTOSでLチカのサンプルコードを動かしているので、今回はその構造のおさらいから。まずはタスク2つ作ってダブルLチカ。ありがち。
鳥なき里のマイコン屋(173) 久しぶりのRISC-V、8ピンCH32V003で吉例Lチカ
大分以前にRISC-V搭載マイコンGD32VF103を触っていたことがありました。当時もRISC-V搭載ボードの「お求めやすさ」は印象深かったです。しかしそれを上回るインパクトがあるのがWinChipHead(WCH)ブランドのマイコン群です。超お買い得?既に試された方も多く、今回は先達の跡をたどって吉例Lチカをしてみます。 “鳥なき里のマイコン屋(173) 久しぶりのRISC-V、8ピンCH32V003で吉例Lチカ” の続きを読む
お手軽ツールで今更学ぶアナログ(160) AD2のプロトコル・アナライザ機能を使ってみる
アナデバ様の日本語ページの進捗に追いついたので、今回はまたAnalog Discovery 2の機能を使ってみる編に戻りたいと思います。今回使ってみるのはデジタル機能、プロトコル・アナライザです。いつもロジアナ機能の御供のプロトコル解析の方を使っていたので今までうっちゃっておいたもの。使ってみればこれはこれで便利かと。
“お手軽ツールで今更学ぶアナログ(160) AD2のプロトコル・アナライザ機能を使ってみる” の続きを読む
GoにいればGoに従え(24) TinyGo Driversを使ってNeoPixel接続
前回はちょっとマイナーで冒険的なインタフェースのシリアルLEDを光らせてみました。今回は定番のシリアル接続フルカラーLED Neopixel(WS2812)を光らせてみます。前回と違い「定番デバイス」なのでTinyGo Driversというドライバセットを使うことができます。自前でドライバ書かなくても良いのでお楽。 “GoにいればGoに従え(24) TinyGo Driversを使ってNeoPixel接続” の続きを読む
PIC三昧(3) お手製書き込み治具で小ピンPIC書き込みOK, ダメなやつもあるけれど
PICマイコンが電子工作に向いているのは小ピンDIPパッケージ品の存在が大きいかと思います。はんだ付けでやるにせよ、ブレッドボード上に組み立てるにせよ、小ピンDIPはお楽。手元にも小ピンDIP対応の書き込み治具が欲しくなりました。自作は簡単。電源、グランドに信号線数本を接続するのみ。これで複数種類のパッケージ対応。 “PIC三昧(3) お手製書き込み治具で小ピンPIC書き込みOK, ダメなやつもあるけれど” の続きを読む
部品屋根性(100) WS2812B、NeoPixel、シリアル制御フルカラーLED
このところ、DS18B20、OST4ML5B32Aと1本の信号線で通信するペリフェラルを動かしてきました。そこにNeoPixel、デバイス的にはWS2812が入ってないのはマズいだろ~。ということで今回はシリアル制御LEDの代表選手、NeoPixelことWS2812Bを動かしてその通信波形を眺めてみたいと思います。
MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす
前回は先入れ先出しが可能なデータ構造 deque を使ってみました。今回は入れる順序には関係なく、入れたデータの大小関係によって取り出しの順番が変わる heapq を使ってみます。まさにヒープソートのアルゴリズムみたいです。端からデータをしまっていけば、取り出すときには大小関係順序通りに取り出せるので便利。ホントか? “MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす” の続きを読む
鳥なき里のマイコン屋(172) ルネサスMCU、Arduino UNO R4で吉例Lチカ
Arduinoといえば「電子工作業界?」のデファクト、中でもUNOは数ある一族中の標準機です。UNO R3まではマイクロチップ製のAVRマイコンを搭載。しかし最近になってルネサスのArmコアマイコンRA4M1搭載のUNO R4が発売になりました。ちょっと出遅れましたが購入したので「火を入れて」みたいと思います。
“鳥なき里のマイコン屋(172) ルネサスMCU、Arduino UNO R4で吉例Lチカ” の続きを読む
PIC三昧(2) MCCでPIC16F1xxxx。TMR2+PWM6でPWM出力
PIC16F1xxxの「諸機能」を端から動かしてみる第2回目はPWM(Pulse Width Modulation)出力。任意のデューティサイクルでデジタル出力をペコペコするあれです。Lチカからモータ制御などその利用範囲は広うござんす。しかしPICの場合PWMだけでは動きませぬ。その動作周期を与えるタイマも必要です。
PIC三昧(1) PIC16F18855のCLKOUTとビットバンギングで周波数確認
別シリーズ記事にてMicroChip社の8ビットマイコンPIC16F1xxxのプログラム作成がどうにか軌道に乗りました。さすればということで、PIC16F1xxxの「諸機能」を端から勉強していきたいと思います。とりあえずのターゲット機はPIC16F18855、MPLAB X IDE+MCC Classicにて作業。
MicroPython的午睡(111) ESP32版、乱数をdequeにつめて非同期タスク
今回使用してみるMicroPythonモジュールは、collections, randomそしてuasyncioです。uasyncioで非同期動作のタスク間を、collections.dequeで作ったFIFOで橋渡し、randomモジュールで生成した乱数を受けわたそうというのです。ありがち。短いコードで動作確認。