ArduinoのA/D:1/1023 vs 1/1024 その後
ちょっとネットを検索。
単純に1/1023や1/1024しているスケッチを見つけるの
じゃなく、いろんな考えを探してみました。
(1)ADCの出力値をアナログ値に換算する考え方
http://kumikomi.k.asablo.jp/blog/2017/09/25/8683672
(2)DL03_ADCの細かい話:2021年06月17日
https://kousukeno.seesaa.net/article/482057043.html
(3)A/D,D/Aの量子化の単位は、 2^n ? 2^n-1?
https://community-ja.renesas.com/cafe_rene/forums-groups/analog/f/analog/1988/a-d-d-a-2-n-2-n-1
(4)analogReadの値の変換を誤解していた話(1023、1024問題)
https://qiita.com/c_in_g/items/a87e5632aacbc79ba5d0
(5)10 bit ADC - divide by 1024 or 1023:Using ArduinoProgramming Questions
https://forum.arduino.cc/t/10-bit-adc-divide-by-1024-or-1023/657174/9
(6)ADC: dividing by 1024 or 1023?
https://forums.adafruit.com/viewtopic.php?f=25&t=25830
(3)と(4)で「2bitでの A/D」を示されています。
この考えで10bitまで有効桁を増やすとどうだ、でエエでしょう。
あと、半値や1/4値で考えるのも良。
それと、「D/Aだとどう考える」です。
A/Dだと電圧変換の結果が小数になるので、四捨五入がどうの
量子化がどうのが出てきます。
しかし、D/Aの入力値は1bit単位の整数。
そして、最大出力電圧は「Vref - 1LSB」。
どう頑張ってもVref電圧そのものは出せません。
出力電圧の変化量は「基準電圧÷分解能」。
正しくD/Aをするには・・・
※ArduinoでのD/Aというと
Arduino、analogWriteは捨てちゃえ。ちゃんとしたPWMを使おう
map関数 の問題とともに、これ↑が絡んできます。
| 固定リンク
「Arduino」カテゴリの記事
- Arduinoで「ボコスカハンマー」 あれれれれっ?!(2023.12.07)
- Arduino UNO R3で±19.9V表示電圧計(2023.10.14)
- 「御詠歌プレーヤー」の製作 (MP3-TF-16Pモジュールの使用例)(2023.08.10)
- Arduino UNO R3のソケット・・思えば違和感がぁ(2023.07.07)
- 初めて買ったArduino UNO・・・今は(2023.05.25)
「1023 vs 1024」カテゴリの記事
- Arduino サーミスタを使った温度測定で 【ゼロ除算問題】(2023.03.23)
- A/Dコンバータでサーミスタの抵抗値を読む サーミスタをつなぐ場所は?(2023.03.21)
- こんなところに「256-1」が(2023.03.08)
- ラズピコのPWM。やっぱしanalogWriteは捨てちゃえ #2(2023.02.22)
- ラズピコのPWM。 やっぱしanalogWriteは捨てちゃえ(2023.02.21)
コメント
『1/1023 vs 1/1024』問題 analogReadを2bitにして確かめてみる
http://igarage.cocolog-nifty.com/blog/2022/11/post-bed4a2.html
投稿: 居酒屋ガレージ店主(JH3DBO) | 2022年11月12日 (土) 16時20分