ByteOrder

MicroPythonとByteから整数へ

ee9king に投稿

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というエンディアンでつまづいた。