LSM303AGR

micro:bitが持つ磁力計と加速度計のふたつのセンサは、LSM303AGRという集積回路にひとつにまとめられており、I2Cバスでアクセス可能です。センサはそれぞれ独立したI2Cスレーブとして動作し、別々のアドレスを持ちます。

各センサは測定した環境情報をそれぞれのメモリに保存します。ですからセンサとのやりとりは、主にそのメモリの読み取りとなります。

センサのメモリは、バイト単位でアドレスを指定できるレジスタの集まりとして作られています。レジスタに書き込むことで、センサの設定を変更することもできます。そういう意味では、マイクロコントローラ内のペリフェラルに似ているかもしれません。異なる点は、センサのレジスタはマイクロコントローラのメモリにマッピングされておらず、I2Cバスでアクセスする必要があることです。

LSM303AGRについての一番の情報源はデータシートです。どうやってセンサのレジスタを読むのかを確認してください。ここに書いてあります。

Section 6.1.1 I2C Operation - Page 38 - LSM303AGR Data Sheet

他にこの本に関係のある情報といえば、レジスタについての記述でしょう。このセクションです。

Section 8 Register description - Page 46 - LSM303AGR Data Sheet