質問編集履歴
5
0x68が増えたことを追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -9,16 +9,6 @@
|
|
9
9
|
|
10
10
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/ef269ab8-5db2-442d-9d7e-53569391a150.jpeg)
|
11
11
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/8dbdfe58-6752-4d97-9cb7-58f8715bd0c6.jpeg)
|
12
|
-
|
13
|
-
(ご回答を受けて繋ぎかえました)
|
14
|
-
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/dce84ee5-ed4c-4a76-b37b-4d29c4b912b3.jpeg)
|
15
|
-
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/ae8a3e8f-d97a-4fee-97bd-4b91692e8c20.jpeg)
|
16
|
-
Spresense SCL -> MPU6050 SCL (ジャンパワイヤ黄)
|
17
|
-
Spresense SDA -> MPU6050 SDA(ジャンパワイヤ白)
|
18
|
-
Spresense Vout -> MPU6050 VCC(ジャンパワイヤ赤)
|
19
|
-
Spresense GND -> MPU6050 GND(ジャンパワイヤ黒)
|
20
|
-
|
21
|
-
|
22
12
|
|
23
13
|
### 実現したいこと
|
24
14
|
MPU6050を使用し、加速度を取得したいと考えています。ただ、Wire.requestFrom()メソッドでエラーが出ており、このエラーを解消したいです。
|
@@ -158,3 +148,21 @@
|
|
158
148
|
}
|
159
149
|
```
|
160
150
|
|
151
|
+
## 追記
|
152
|
+
(ご回答を受けて繋ぎかえました)
|
153
|
+
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/dce84ee5-ed4c-4a76-b37b-4d29c4b912b3.jpeg)
|
154
|
+
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/ae8a3e8f-d97a-4fee-97bd-4b91692e8c20.jpeg)
|
155
|
+
Spresense SCL -> MPU6050 SCL (ジャンパワイヤ黄)
|
156
|
+
Spresense SDA -> MPU6050 SDA(ジャンパワイヤ白)
|
157
|
+
Spresense Vout -> MPU6050 VCC(ジャンパワイヤ赤)
|
158
|
+
Spresense GND -> MPU6050 GND(ジャンパワイヤ黒)
|
159
|
+
|
160
|
+
繋ぎかえたところアドレスに0x68が増えたのでbeginTransmissionとrequestFromの第一引数を0x68に変更しました。
|
161
|
+
```
|
162
|
+
23:50:09.605 -> Scanning...
|
163
|
+
23:50:09.605 -> I2C device found at address 0x62 !
|
164
|
+
23:50:09.642 -> I2C device found at address 0x68 !
|
165
|
+
23:50:09.676 -> done
|
166
|
+
```
|
167
|
+
|
168
|
+
|
4
繋ぎかえた写真追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -9,6 +9,16 @@
|
|
9
9
|
|
10
10
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/ef269ab8-5db2-442d-9d7e-53569391a150.jpeg)
|
11
11
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/8dbdfe58-6752-4d97-9cb7-58f8715bd0c6.jpeg)
|
12
|
+
|
13
|
+
(ご回答を受けて繋ぎかえました)
|
14
|
+
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/dce84ee5-ed4c-4a76-b37b-4d29c4b912b3.jpeg)
|
15
|
+
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-09-24/ae8a3e8f-d97a-4fee-97bd-4b91692e8c20.jpeg)
|
16
|
+
Spresense SCL -> MPU6050 SCL (ジャンパワイヤ黄)
|
17
|
+
Spresense SDA -> MPU6050 SDA(ジャンパワイヤ白)
|
18
|
+
Spresense Vout -> MPU6050 VCC(ジャンパワイヤ赤)
|
19
|
+
Spresense GND -> MPU6050 GND(ジャンパワイヤ黒)
|
20
|
+
|
21
|
+
|
12
22
|
|
13
23
|
### 実現したいこと
|
14
24
|
MPU6050を使用し、加速度を取得したいと考えています。ただ、Wire.requestFrom()メソッドでエラーが出ており、このエラーを解消したいです。
|
3
errno.hについて追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -41,7 +41,7 @@
|
|
41
41
|
下記よりrequestFrom()メソッドの内部の処理を確認しました。(I2C_TRANSFER内部の処理や、retにどんな値が入っているのかライブラリのコードをArduino IDEで直接デバッグしたかったのですが、まだ試せていません。)
|
42
42
|
https://github.com/sonydevworld/spresense-arduino-compatible/blob/master/Arduino15/packages/SPRESENSE/hardware/spresense/1.0.0/libraries/Wire/Wire.cpp
|
43
43
|
|
44
|
-
errno.hより0がどのエラーに該当するのか調べました。し
|
44
|
+
Wire.hで読み込んでいるerrno.hより0がどのエラーに該当するのか調べました。こちらはLinuxの標準ライブラリとのことで関連するerrno-base.hよりエラー番号を確認しましたがどのエラーにも該当しないことがわかりました。
|
45
45
|
https://github.com/torvalds/linux/blob/master/include/uapi/asm-generic/errno-base.h
|
46
46
|
|
47
47
|
Wireライブラリの公式リファレンスを確認しましたが有用な情報は特にありませんでした
|
2
リファレンスについて追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -38,11 +38,15 @@
|
|
38
38
|
```
|
39
39
|
|
40
40
|
### 試したこと
|
41
|
-
下記よりrequestFrom()メソッドの内部の処理を確認しました。I2C_TRANSFER内部の処理や、retにどんな値が入っているのかライブラリのコードをArduino IDEで直接デバッグしたかったのですが、
|
41
|
+
下記よりrequestFrom()メソッドの内部の処理を確認しました。(I2C_TRANSFER内部の処理や、retにどんな値が入っているのかライブラリのコードをArduino IDEで直接デバッグしたかったのですが、まだ試せていません。)
|
42
42
|
https://github.com/sonydevworld/spresense-arduino-compatible/blob/master/Arduino15/packages/SPRESENSE/hardware/spresense/1.0.0/libraries/Wire/Wire.cpp
|
43
43
|
|
44
44
|
errno.hより0がどのエラーに該当するのか調べました。しかし0はどのエラーにも該当しないことがわかりました。
|
45
45
|
https://github.com/torvalds/linux/blob/master/include/uapi/asm-generic/errno-base.h
|
46
|
+
|
47
|
+
Wireライブラリの公式リファレンスを確認しましたが有用な情報は特にありませんでした
|
48
|
+
https://www.arduino.cc/reference/en/#wire
|
49
|
+
https://www.arduino.cc/reference/en/language/functions/communication/wire/requestfrom/
|
46
50
|
|
47
51
|
配線を下記のように変更したほか、元の配線をベースにさまざまな組み合わせを試してみましたが変わらずでした。
|
48
52
|
Spresense SCL -> MPU6050 SCL (ジャンパワイヤ黄)
|
1
サンプル文言の削除とI2Cアドレスの出力結果追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,8 +12,6 @@
|
|
12
12
|
|
13
13
|
### 実現したいこと
|
14
14
|
MPU6050を使用し、加速度を取得したいと考えています。ただ、Wire.requestFrom()メソッドでエラーが出ており、このエラーを解消したいです。
|
15
|
-
|
16
|
-
- [ ] ▲▲機能を動作するようにする
|
17
15
|
|
18
16
|
### 発生している問題・エラーメッセージ
|
19
17
|
下記のエラーが出ています。
|
@@ -53,6 +51,13 @@
|
|
53
51
|
Spresense GND -> MPU6050 GND(ジャンパワイヤ黒)
|
54
52
|
|
55
53
|
下記のi2c_scannerを使用し、アドレスが0x62であることを確認し、beginTransmissionとrequestFromの第一引数に指定するアドレスを0x62にしました。(サンプルコードでは0x68であることが多かったのでこちらに変えて試したりもしました)
|
54
|
+
|
55
|
+
```
|
56
|
+
20:54:35.594 -> Scanning...
|
57
|
+
20:54:35.632 -> I2C device found at address 0x62 !
|
58
|
+
20:54:35.668 -> done
|
59
|
+
```
|
60
|
+
|
56
61
|
```c
|
57
62
|
// --------------------------------------
|
58
63
|
// i2c_scanner
|