MicroPythonとByteから整数へ
MicroPythonで、I2Cでバイアスからのデータを入出力をする時、データをByte型で与えたり受けたりしないといけない。よくわかんなくて値を直接書いたりしていたのだが、どうもうまくいかず・・・
文字列で指定できれば楽だが値は文字列で表現できないため、書き込みの場合はコマンドバッファを作ってポインタを渡す
from machine import Pin, I2C
im = I2C(1,scl=Pin(19),sda=Pin(18),freq=10000);
cmd2=bytearray(2);
cmd2[0]=0x4E; # Command
cmd2[1]=0x02; # Data
im.writeto(0x68,cmd2);
で、読み込みの場合は、読み込みバイト数に合わせてBufferを作り取り出せばいいのだが、ここでByteOrderというエンディアンでつまづいた。
MicroPythonとnumpy
Pythonつかうなら、Numpy?数値の演算や配列などでPythonで書く時、必ずこれを書く
import numpy as np
MicroPythonでもできるんでしょ?的な感じだったが、ググって読んでも読んでも難解・・コンピアルするとかビルドするとか、Linuxでとか書いてある。だから、Pythonこういうのが嫌いなんだけど。
最終的に、ビルド済みリリース版がここにあった。。picoもどきには、RPI_PICO.uf2を入れてみたらよかったようだ。これは、前回MicroPythonを入れる時に誘導されたファイルが RPI_PICO-20240222-v1.22.2.uf2 だったから、きっとこれだろうということだったわけだが、正解の模様