Re: dsPIC33EP256GP506雙斜率AD電壓轉換問題

作者 jason680 於 2019年01月08日 09:50:28
提供另一個算法...
ADC=0 , Volt = 0V
ADC=2048, Volt = 2.5V
ADC=4096, Volt = 5V = 5000mV

所以只要能計算出 4096 對映 5000
愈簡單 愈快 愈好

5000/4096
= 1.220703125
= 1 + 1/4 - 1/32 + 1/512
= 1 + 1>>2 - 1>>5 + 1>>9

或者
5000
= 4096 * 1.22073125
= 4096 + 4096/4 - 4096/32 + 4096/512
= 4096 + 4096>>2 - 4096>>5 + 4096>>9

把 5000換成Volt, 4096換成ADC

Volt = ADC * 1.220703125
= ADC + ADC/4 - ADC/32 + ADC/512
= ADC + ADC>>2 - ADC>>5 + ADC>>9

這堨u用到移位及加(減)法,不用用到long
簡單又快速就可得到答案的方法之一

註:這堨摯Q論四捨五入問題
先這樣,有問題再來細細了解

http://www.microchip.com.tw/modules/n ... t_id=44930#forumpost44930

來自: http://www.microchip.com.tw/newbb/viewtopic.php?forum=2&topic_id=22517&post_id=79138