回答編集履歴

3

追記修正

2019/04/03 15:29

投稿

mt08
mt08

スコア1825

test CHANGED
@@ -108,9 +108,9 @@
108
108
 
109
109
 
110
110
 
111
- SGL_DIFF = 1
111
+ - `SGL_DIFF = 1`
112
112
 
113
- ((D2<<2) | (D1 << 1) | D0) => Channel番号
113
+ - `((D2<<2) | (D1 << 1) | D0)` => Channel番号
114
114
 
115
115
 
116
116
 

2

説明追記

2019/04/03 15:29

投稿

mt08
mt08

スコア1825

test CHANGED
@@ -91,3 +91,27 @@
91
91
 
92
92
 
93
93
  ↑で説明したとおり、MCP3008の通信仕様、ですね。
94
+
95
+
96
+
97
+
98
+
99
+ ---
100
+
101
+ 追記:
102
+
103
+ XxkanakoxXさん、
104
+
105
+
106
+
107
+ `((SGL_DIFF << 3) | ((D2<<2) | (D1 << 1) | D0) ) << 4`
108
+
109
+
110
+
111
+ SGL_DIFF = 1
112
+
113
+ ((D2<<2) | (D1 << 1) | D0) => Channel番号
114
+
115
+
116
+
117
+ で、どうでしょう? データシートの図と見比べてみてください

1

修正

2019/04/03 15:27

投稿

mt08
mt08

スコア1825

test CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
 
42
42
 
43
- 同様に、D_OUT側ですが、2バイト目のかいビットと、3バイト目で、10ビットのデータになる、とのことで、 ((adc[1] & 3) << 8) + adc[2]) となります。
43
+ 同様に、D_OUT側ですが、2バイト目の下位2ビットと、3バイト目で、10ビットのデータになる、とのことで、 ((adc[1] & 3) << 8) + adc[2]) となります。
44
44
 
45
45
 
46
46