質問編集履歴

5

0x68が増えたことを追記

2022/09/24 14:53

投稿

Manamin
Manamin

スコア14

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

繋ぎかえた写真追加

2022/09/24 14:08

投稿

Manamin
Manamin

スコア14

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について追加

2022/09/24 13:23

投稿

Manamin
Manamin

スコア14

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がどのエラーに該当するのか調べました。し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

リファレンスについて追加

2022/09/24 13:13

投稿

Manamin
Manamin

スコア14

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アドレスの出力結果追加

2022/09/24 11:54

投稿

Manamin
Manamin

スコア14

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