こんなところに「256-1」が
トランジスタ技術2012年1月号
特集が「エレクトロニクス格言集」
その中の第3章 アナログ2:計測&センサ
・3-6 抵抗分圧比をA-D変換するときの
基準電圧ICは無駄使い
サーミスタの抵抗値を直列に入れたRpの値から
求めようという手法の解説です。
抵抗の算出式から基準電圧値は不要で、
ADCの分解能が分かれば良いと。
この「?」と記したところに「2^N - 1」が出現!
8ビットA-Dなら255に、10ビットなら1023にという
ことなんですが・・・これは間違い。
フルスケール値 + 1、つまり分解能で計算しなくては
なりません。
これだとA-D値が1/2(半値)になるとき、「Rx = Rp」
となりません。
で、仮にADCが8ビットとすると
Nx = 255 * Rx/(Rx+Rp) これを変形していくと
Rx = Rp * (Nx / (255 - Nx))
Rx 未接続のとき、つまり∞の時。
この時のA-D値はフルスケールになってNx=255。
すると、分母の (255 - Nx) がゼロになってしまい、
DIV0エラーに!
255じゃなく、256だと 256 - 255 = 1で
Rx = Rp * 255。
Rp値の255倍以上の時(無限もOK)に
A-D値255が出てきます。
ということで 「2^N - 1」は大間違い。
半値や1/4値、3/4値で確かめれば「なんかおかしい」
っと思うはずなんですが・・・。
| 固定リンク
「重箱の隅」カテゴリの記事
- トラ技Jr. 2023年春号(2023.04.12)
- Arduino サーミスタを使った温度測定で 【ゼロ除算問題】(2023.03.23)
- A/Dコンバータでサーミスタの抵抗値を読む サーミスタをつなぐ場所は?(2023.03.21)
- こんなところに「256-1」が(2023.03.08)
- ありゃま。ラズピコがおかしくなった。 PWMを調べたかったのに(2023.02.14)
「温度測定」カテゴリの記事
- Arduino サーミスタを使った温度測定で 【ゼロ除算問題】(2023.03.23)
- A/Dコンバータでサーミスタの抵抗値を読む サーミスタをつなぐ場所は?(2023.03.21)
- トラ技の目次検索 『サーミスタ』(2023.03.19)
- こんなところに「256-1」が(2023.03.08)
- 5chサーミスタ温度計のA/D入力、map関数を使って補正(2022.10.06)
「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)
「トランジスタ技術」カテゴリの記事
- 「漆谷正義」さんとむちゃ接近遭遇していた(2023.05.08)
- オペアンプ NJU7062の駆動能力を見る(2023.05.06)
- トラ技Jr.のレールスプリッタ回路(2023.04.14)
- トラ技Jr. 2023年春号(2023.04.12)
- トランジスタ技術2023年5月号 PICマイコンの話(2023.04.10)
コメント