標(biāo)題: STC15W系列單片機(jī)AD轉(zhuǎn)換為什么數(shù)據(jù)很不穩(wěn)定 [打印本頁]

作者: sdsslh    時間: 2019-7-28 11:16
標(biāo)題: STC15W系列單片機(jī)AD轉(zhuǎn)換為什么數(shù)據(jù)很不穩(wěn)定
本帖最后由 sdsslh 于 2019-7-28 11:26 編輯

小弟最近在做一個項(xiàng)目,使用的單片機(jī)是STC15W4k58s4,然后做ADC,一個溫度傳感器,一個壓力傳感器,電路沒問題,輸入到單片機(jī)自帶ADC中進(jìn)行AD轉(zhuǎn)換的時候,串口接收到的數(shù)據(jù)為什么很不穩(wěn)定,我使用了內(nèi)部bandgap精確計(jì)算參考電壓,而且使用了7805對單片機(jī)進(jìn)行5V的供電,而且我在輸入ADC的時候還加了濾波電容,我用萬用表實(shí)測的輸入ADC的電壓非常穩(wěn)定,可是輸入ADC以后,輸出的數(shù)據(jù)卻很不穩(wěn)定,溫度傳感器數(shù)據(jù)不穩(wěn)定,但是壓力傳感器數(shù)據(jù)較為穩(wěn)定。ADC使用的是查詢方式,雙通道,溫度傳感器ADC后誤差在+-0.05mv,請問這是怎么回事,求大神解答,方便看我的代碼的話,求大神留下個聯(lián)系方式,謝謝
作者: sdsslh    時間: 2019-7-28 11:25
奇怪的是,我這個壓力傳感器傳來的數(shù)據(jù)就比較穩(wěn)定,但是溫度傳感器經(jīng)AD轉(zhuǎn)換后誤差在+-0.05mv左右
作者: sdsslh    時間: 2019-7-28 15:19
aaaaaa。 發(fā)表于 2019-7-28 14:49
樓主,你的問題解決了嗎

沒有解決
作者: yzwzfyz    時間: 2019-7-29 09:08
通道開關(guān)提前打開,稍等一會再起動AD。
作者: cjm82    時間: 2019-7-29 14:26
有些ADC采樣有個類似電容充電的過程,不知道你用的那個是不是這種,當(dāng)你信號源內(nèi)阻比較大而采樣的保持時間又不夠時就會發(fā)生這種情況.一般加大采樣的保持時間會有改善.或者在信號和ADC接口之間用運(yùn)放搭個跟隨器試試,之前我試過用一個100K的NTC熱敏電阻和1個1K的精密電阻分壓測量溫度,在高溫時,采集的數(shù)據(jù)基本跳動很小,比較準(zhǔn)確.但在室溫時,數(shù)據(jù)跳動就很大.
還有種辦法就是,比如實(shí)際需要12位精度,用16位的ADC,采樣后,丟掉低4位.這樣采集到的數(shù)據(jù)就基本不跳動了,當(dāng)然這種做法成本較高.
作者: wulin    時間: 2019-7-29 17:02
sdsslh 發(fā)表于 2019-7-28 15:19
沒有解決

沒有看到你的程序及電路圖,不好直接判斷。數(shù)據(jù)有小幅波動是正常的,通常需要加軟件濾波。環(huán)境共模干擾無所不在。如果可能你試試20ms取樣10~20次分別保存結(jié)果,去掉最大和最小值再取平均值,通?梢垣@得穩(wěn)定的ADC數(shù)據(jù)。
作者: angmall    時間: 2019-7-29 19:36
如果可以的話,你采樣的次數(shù)要多一些,130次,然后再減去一個最大值和一個最小值,再除以128,這效果會好一點(diǎn)
不管是參考電壓還是采樣的平均次數(shù),都盡可能的和2的次冪有關(guān)

作者: 51hei1005    時間: 2019-7-29 22:53
我前用兩天STC15W408AS做氣壓儀表遇到的問題是內(nèi)部bandgap參考電壓誤差較大,棄之。用7805供電,采集AD后直接用5V換算,滿足了要求。每個周期采集八遍AD,冒泡排序后,取中間四個求平均值。
作者: qingcaodi128    時間: 2020-2-21 14:07
STC15W408AS,內(nèi)部BandGap參考電壓 我按照例程讀取這個參考電壓,根本不穩(wěn)定一直在變化!

由于內(nèi)部BandGap參考電
//壓很穩(wěn)定,  哈哈哈,搞笑!
作者: haierzaifei11    時間: 2020-2-21 15:02
STC15W408AS,內(nèi)部BandGap參考電壓
作者: zwxmlp    時間: 2020-4-26 14:19
stm32f107的12位ad抖動在100-200mv,你這個已經(jīng)很好了,12位的話也就1mv的精度
作者: zwxmlp    時間: 2020-4-26 14:21
sdsslh 發(fā)表于 2019-7-28 11:25
奇怪的是,我這個壓力傳感器傳來的數(shù)據(jù)就比較穩(wěn)定,但是溫度傳感器經(jīng)AD轉(zhuǎn)換后誤差在+-0.05mv左右

0.05mv的話精度已達(dá)到14位了是不是弄錯了0.05V
作者: Camel2020    時間: 2020-5-11 20:37
萬用表的內(nèi)阻10M ohm左右,ADC不準(zhǔn)一般與采樣時間,輸入電阻有關(guān),因?yàn)闆]有看到電路圖不好判定,如果實(shí)在不準(zhǔn)可以使用補(bǔ)償?shù)姆绞浇鉀Q,一般單片機(jī)ADC模塊都有補(bǔ)償?shù)慕忉專瑈=ax+b的方式, 希望對你有幫助,如何希望進(jìn)一步了解,可以相互學(xué)習(xí).
作者: yhy08090    時間: 2021-5-18 15:27
本帖最后由 yhy08090 于 2021-5-19 11:12 編輯
Camel2020 發(fā)表于 2020-5-11 20:37
萬用表的內(nèi)阻10M ohm左右,ADC不準(zhǔn)一般與采樣時間,輸入電阻有關(guān),因?yàn)闆]有看到電路圖不好判定,如果實(shí)在不 ...

我也有這個問題,我的adc口沒有外接什么電路,就單單adc口進(jìn)行采樣,我用的STC官方提供的STC15對應(yīng)的ADC查詢方式的demo,求哪位知道的大神幫忙指點(diǎn)哈子
作者: wufa1986    時間: 2021-5-18 17:15
這好像是51架構(gòu)單片機(jī)的通病,快速切換通道導(dǎo)致數(shù)據(jù)不準(zhǔn),我用過很多種51好像都有這個問題
作者: yhy08090    時間: 2021-5-19 10:51
本帖最后由 yhy08090 于 2021-5-19 13:40 編輯
wufa1986 發(fā)表于 2021-5-18 17:15
這好像是51架構(gòu)單片機(jī)的通病,快速切換通道導(dǎo)致數(shù)據(jù)不準(zhǔn),我用過很多種51好像都有這個問題

那都是怎么處理這些不準(zhǔn)確的數(shù)據(jù)的?我現(xiàn)在加了軟件濾波,數(shù)據(jù)仍然一直波動很大

作者: xiaoyuxinke    時間: 2022-4-5 17:28
打開ADC電源后適當(dāng)延時,一個通道處理完后再適當(dāng)延時,很方便的方法.




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1