MicroPython的午睡(113) ESP32版、hashlib使ってsha256を計算

ImportHashlib
Joseph Halfmoon

MicroPython上でも使えるCPython(フルのPython実装)のサブセット・モジュールを見てます。今回はhashlibとな。この年寄はMD5計算できればいいんじゃね、くらいのいい加減さ。ESP32版のMicroPythonみたらばMD5は割愛されてました。SHA256使え(SHA1もある)ということみたい。
“MicroPython的午睡(113) ESP32版、hashlib使ってsha256を計算” の続きを読む

PIC三昧(4) まずはEXT_INTを使ってみる。PIC16F18855

EXT_INT_DUT
Joseph Halfmoon

モダーンなPIC16F1xxx マイコンは外部割り込みも2系統の方法をサポートしてます。IOCと呼ばれる方はカッコよく複雑な条件で割り込み処理が開始できます。一方、単にINT Pinとか、EXT_INTと呼ばれる方は「昔ながらの」割り込みピンのようです。まず今回は「昔ながらの」方法で外部割込みをかけてみたいと思います。

“PIC三昧(4) まずはEXT_INTを使ってみる。PIC16F18855” の続きを読む

モダンOSのお砂場(62) UNO R4、ルネサスRA4M1でFreeRTOS、タスク生成

FreeRTOS_Arduino
Joseph Halfmoon

Arduino UNO R4登場。ルネサスのArmマイコン搭載。32ビット機なのでArduino IDE環境を使いつつ、FreeRTOSベースで使ってみようかと思います。別シリーズでFreeRTOSでLチカのサンプルコードを動かしているので、今回はその構造のおさらいから。まずはタスク2つ作ってダブルLチカ。ありがち。

“モダンOSのお砂場(62) UNO R4、ルネサスRA4M1でFreeRTOS、タスク生成” の続きを読む

鳥なき里のマイコン屋(173) 久しぶりのRISC-V、8ピンCH32V003で吉例Lチカ

CH32V003BB
Joseph Halfmoon

大分以前にRISC-V搭載マイコンGD32VF103を触っていたことがありました。当時もRISC-V搭載ボードの「お求めやすさ」は印象深かったです。しかしそれを上回るインパクトがあるのがWinChipHead(WCH)ブランドのマイコン群です。超お買い得?既に試された方も多く、今回は先達の跡をたどって吉例Lチカをしてみます。 “鳥なき里のマイコン屋(173) 久しぶりのRISC-V、8ピンCH32V003で吉例Lチカ” の続きを読む

お手軽ツールで今更学ぶアナログ(160) AD2のプロトコル・アナライザ機能を使ってみる

SPI_Protocol00A
Joseph Halfmoon

アナデバ様の日本語ページの進捗に追いついたので、今回はまたAnalog Discovery 2の機能を使ってみる編に戻りたいと思います。今回使ってみるのはデジタル機能、プロトコル・アナライザです。いつもロジアナ機能の御供のプロトコル解析の方を使っていたので今までうっちゃっておいたもの。使ってみればこれはこれで便利かと。
“お手軽ツールで今更学ぶアナログ(160) AD2のプロトコル・アナライザ機能を使ってみる” の続きを読む

GoにいればGoに従え(24) TinyGo Driversを使ってNeoPixel接続

mb20NeoPixel
Joseph Halfmoon

前回はちょっとマイナーで冒険的なインタフェースのシリアルLEDを光らせてみました。今回は定番のシリアル接続フルカラーLED Neopixel(WS2812)を光らせてみます。前回と違い「定番デバイス」なのでTinyGo Driversというドライバセットを使うことができます。自前でドライバ書かなくても良いのでお楽。 “GoにいればGoに従え(24) TinyGo Driversを使ってNeoPixel接続” の続きを読む

PIC三昧(3) お手製書き込み治具で小ピンPIC書き込みOK, ダメなやつもあるけれど

WritingJIG
Joseph Halfmoon

PICマイコンが電子工作に向いているのは小ピンDIPパッケージ品の存在が大きいかと思います。はんだ付けでやるにせよ、ブレッドボード上に組み立てるにせよ、小ピンDIPはお楽。手元にも小ピンDIP対応の書き込み治具が欲しくなりました。自作は簡単。電源、グランドに信号線数本を接続するのみ。これで複数種類のパッケージ対応。 “PIC三昧(3) お手製書き込み治具で小ピンPIC書き込みOK, ダメなやつもあるけれど” の続きを読む

部品屋根性(100) WS2812B、NeoPixel、シリアル制御フルカラーLED

WS2812B_x3units
Joseph Halfmoon

このところ、DS18B20、OST4ML5B32Aと1本の信号線で通信するペリフェラルを動かしてきました。そこにNeoPixel、デバイス的にはWS2812が入ってないのはマズいだろ~。ということで今回はシリアル制御LEDの代表選手、NeoPixelことWS2812Bを動かしてその通信波形を眺めてみたいと思います。

“部品屋根性(100) WS2812B、NeoPixel、シリアル制御フルカラーLED” の続きを読む

MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす

heapqScriptEC
Joseph Halfmoon

前回は先入れ先出しが可能なデータ構造 deque を使ってみました。今回は入れる順序には関係なく、入れたデータの大小関係によって取り出しの順番が変わる heapq を使ってみます。まさにヒープソートのアルゴリズムみたいです。端からデータをしまっていけば、取り出すときには大小関係順序通りに取り出せるので便利。ホントか? “MicroPython的午睡(112) ESP32版、heapqで乱雑タプルを昇順にとりだす” の続きを読む

鳥なき里のマイコン屋(172) ルネサスMCU、Arduino UNO R4で吉例Lチカ

ArduinoUNO_R4_MINIMA_package
Joseph Halfmoon

Arduinoといえば「電子工作業界?」のデファクト、中でもUNOは数ある一族中の標準機です。UNO R3まではマイクロチップ製のAVRマイコンを搭載。しかし最近になってルネサスのArmコアマイコンRA4M1搭載のUNO R4が発売になりました。ちょっと出遅れましたが購入したので「火を入れて」みたいと思います。
“鳥なき里のマイコン屋(172) ルネサスMCU、Arduino UNO R4で吉例Lチカ” の続きを読む

PIC三昧(2) MCCでPIC16F1xxxx。TMR2+PWM6でPWM出力

pwmWaveForm
Joseph Halfmoon

PIC16F1xxxの「諸機能」を端から動かしてみる第2回目はPWM(Pulse Width Modulation)出力。任意のデューティサイクルでデジタル出力をペコペコするあれです。Lチカからモータ制御などその利用範囲は広うござんす。しかしPICの場合PWMだけでは動きませぬ。その動作周期を与えるタイマも必要です。

“PIC三昧(2) MCCでPIC16F1xxxx。TMR2+PWM6でPWM出力” の続きを読む

PIC三昧(1) PIC16F18855のCLKOUTとビットバンギングで周波数確認

FOSCFreq_BitBang
Joseph Halfmoon

別シリーズ記事にてMicroChip社の8ビットマイコンPIC16F1xxxのプログラム作成がどうにか軌道に乗りました。さすればということで、PIC16F1xxxの「諸機能」を端から勉強していきたいと思います。とりあえずのターゲット機はPIC16F18855、MPLAB X IDE+MCC Classicにて作業。

“PIC三昧(1) PIC16F18855のCLKOUTとビットバンギングで周波数確認” の続きを読む

MicroPython的午睡(111) ESP32版、乱数をdequeにつめて非同期タスク

AsyncIODequeSRC
Joseph Halfmoon

今回使用してみるMicroPythonモジュールは、collections, randomそしてuasyncioです。uasyncioで非同期動作のタスク間を、collections.dequeで作ったFIFOで橋渡し、randomモジュールで生成した乱数を受けわたそうというのです。ありがち。短いコードで動作確認。

“MicroPython的午睡(111) ESP32版、乱数をdequeにつめて非同期タスク” の続きを読む

RustにいればRustに従え(16) rp2040-project-template

RPblink2
Joseph Halfmoon

前回rp-halのお陰でrust言語で書かれたサンプルソースをビルドし、Raspberry Pi Picoに書き込んで動作確認ができました。しかしHALのサンプルプロジェクトをHALの環境内でビルドしただけです。自前のプロジェクトを作りたいのだけれどどうしたら良いの?なんかメンドクさそうだし。そんなことはお見通し。

“RustにいればRustに従え(16) rp2040-project-template” の続きを読む