熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2021-7-27 15:56
正文摘要:如下圖,ADC_DAT的值后面成10結(jié)果測得電壓還是比較準(zhǔn)確的,但值后面成100,電壓值就不正確了,感覺像ADC_DAT不夠大,導(dǎo)致溢出了,但是值并不是很大,應(yīng)該不會溢出吧,請大佬能解答一下,謝謝(上面的小數(shù)點(diǎn)是我自己 ... |
Y_G_G 發(fā)表于 2021-7-27 20:13 謝謝,沒注意到到返回值是u16的,用Proteus8.9版本的就可以仿真stc單片機(jī) |
1,讀取ADC返回值是u8類型數(shù)據(jù),返回的值卻是u16類型 2,STC單片機(jī)什么時(shí)候可以仿真了呢? 3,如果沒有必要,不要用浮點(diǎn)型數(shù)據(jù),讀取ADC整個(gè)計(jì)算過程用unsigned char 高位和低位合并后的數(shù)據(jù)用unsigned long int 先得到完整的ADC數(shù)字量,先保證數(shù)字量是正常范圍值,最后計(jì)算直接用整型數(shù)據(jù)就可以了,單片機(jī)沒有浮點(diǎn)數(shù)據(jù),C環(huán)境下的浮點(diǎn)是C自己的,不是8051的 比如:10位ADC的量1024個(gè)數(shù)字量,實(shí)際測量值是209,參考電壓5.00V,計(jì)算方法就是:209/1024*5000mV=1020mV±(4.88mV),這4.88mV是誤差,你把這1020mV想辦法輸出就行了 而如果是用20/1024*5.00的結(jié)果不一定是準(zhǔn)確的, |
參與人數(shù) 1 | 黑幣 +5 | 收起 理由 |
---|---|---|
![]() | + 5 |
把這個(gè)數(shù)打印出來就知道了啊 |
Powered by 單片機(jī)教程網(wǎng)