ちょっとは人のためになる事をしないとインターネットコミュニティーの皆様に申し訳がないかと思いながら、自分の備忘録ていどでしかなく、実際の所たいした情報も提供できないでいるブログ
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Vref=5V の場合、10bit A/D読みとり値を数値化するため(0.01V=1となる整数化)
ADRS * 500 / 1023 といった計算をすることになる。5.00Vのとき500が得られるので小数点をはさみつつ簡単に表示できる。 でも、ADRES x 500 が 16bit幅を超えるので、1023で割るために32bit割り算ルーチンを使わなければならなくなる。 乗算一発で出す方法 500/1023≒32032/65536 なので、ADRES x 32032 の上位16bit(/65536)を取り出せば,16bitx16bit=32bitの乗算ルーチンのみで、後処理が楽な値が得られる。誤差的にはADRES x 32031 のほうが有利だけど、x32031だと1023 => 500 が出ないのでレンジをフルに使いたい場合はx32032のほうがよさげ。 [16bit整数] x [整数部0bit 小数部16bit]の固定小数点演算ですね PR |
カレンダー
カテゴリー
フリーエリア
最新CM
[02/07 @naoshi65536]
[02/07 忍]
[09/18 とおりすがり]
[06/26 ilmare]
[03/16 とおりすがり]
最新記事
(01/30)
(01/30)
(08/13)
(05/26)
(04/08)
最新TB
ブログ内検索
カウンター
アクセス解析
|