GY-BNO055をUARTで使う
UARTの設定について
項目 | 値 |
---|---|
ボーレート | 115200 |
データ長 | 8ビット |
パリティビット | なし |
ストップビット | 1ビット |
レジスタへの書き込み方法
以下の順でデータを送ります。
Byte 1 | Start Byte | 0xAA |
---|---|---|
Byte 2 | Write | 0x00 |
Byte 3 | レジスタアドレス | <..> |
Byte 4 | データバイト数 | <..> |
Byte 5 | データバイト1 | <..> |
︙ | ︙ | ︙ |
Byte n+4 | データバイトn | <..> |
センサからの返り値は次のようになっていて、書き込みに成功したかを返します。
Byte 1 | Response Header | 0xEE |
---|---|---|
Byte 2 | Status | 以下の数値 |
0x01: 書き込み成功
0x03: 書き込み失敗
0x04: REGMAP_INVALID_ADDRESS
0x05: REGMAP_WRITE_DISABLED
0x06: WRONG_START_BYTE
0x07: BUS_OVER_RUN_ERROR
0X08: MAX_LENGTH_ERROR
0x09: MIN_LENGTH_ERROR
0x0A: RECEIVE_CHARACTER_TIMEOUT
レジスタからの読み出し
以下の順でデータを送ります。
Byte 1 | Start Byte | 0xAA |
---|---|---|
Byte 2 | Read | 0x01 |
Byte 3 | レジスタアドレス | <..> |
Byte 4 | データバイト数 | <..> |
センサからの返り値は2種類で、読み出しに成功したかと読み出した値を返します。
① 成功した場合は以下のパターンで値を返します。
Byte 1 | Start Byte | 0xBB |
---|---|---|
Byte 2 | データバイト数 | <..> |
Byte 3 | データバイト1 | <..> |
︙ | ︙ | ︙ |
Byte n+2 | データバイトn | <..> |
② 失敗した場合は以下のパターンで値を返します。
Byte 1 | Response Header | 0xEE |
---|---|---|
Byte 2 | Status | 以下の数値 |
0x02: READ_FAIL
0x04: REGMAP_INVALID_ADDRESS
0x05: REGMAP_WRITE_DISABLED
0x06: WRONG_START_BYTE
0x07: BUS_OVER_RUN_ERROR
0X08: MAX_LENGTH_ERROR
0x09: MIN_LENGTH_ERROR
0x0A: RECEIVE_CHARACTER_TIMEOUT