|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
討論一個(gè)關(guān)于ad轉(zhuǎn)化精確度問題: |
| 作者:doveyhc 欄目:單片機(jī) |
討論一個(gè)關(guān)于ad轉(zhuǎn)化精確度問題: 本人用的是m8內(nèi)部ad轉(zhuǎn)換,測(cè)量4~20mA信號(hào), 可是精確度很差,不知道為什么,測(cè)量的數(shù)據(jù)越大,數(shù)值越偏小 量程為100時(shí),顯示為97,不知道為什么,請(qǐng)大家指點(diǎn),謝謝。 程序如下: void ad_task(void) { LONG sumValue=0; int ValueAD; uchar i; //int valueDA,averageValueAD; ADCSRA|=(1<<ADFR); //run AD連續(xù)轉(zhuǎn)換 for(i=0;i<16;i++)// { ADCSRA|=(1<<ADSC); //run AD while(!(ADCSRA&(1<<ADSC))); ValueAD=ADCL; ValueAD+=ADCH<<8; sumValue+=ValueAD; } averageValueAD=sumValue>>4; ADCSRA&=~(1<<ADFR); //停止AD連續(xù)轉(zhuǎn)換 } |
| 2樓: | >>參與討論 |
| 作者: doveyhc 于 2006/4/3 15:55:00 發(fā)布:
討論一個(gè)關(guān)于ad轉(zhuǎn)化精確度問題--電路圖 |
|
| 3樓: | >>參與討論 |
| 作者: atme162 于 2006/4/3 18:45:00 發(fā)布:
檢測(cè)一下你的參考電壓是否穩(wěn)定 因?yàn)閰⒖茧妷翰环(wěn)定是造成測(cè)量結(jié)果錯(cuò)誤的直接原因,參考電壓最好設(shè)計(jì)一個(gè)穩(wěn)壓電路,在電源電壓波動(dòng)大的情況下也能保證參考電壓穩(wěn)定輸出,比如用LM385可以實(shí)現(xiàn) |
|
| 4樓: | >>參與討論 |
| 作者: atme162 于 2006/4/3 18:52:00 發(fā)布:
你好,向你請(qǐng)教 剛才開始學(xué)習(xí)AVR單片機(jī),對(duì)它的一些語(yǔ)言不理解,EECR |= (1<<EEMWE);這一句怎么理解,在C語(yǔ)言中<<是向左移動(dòng),而AVR好像不是這樣理解對(duì)嗎?我明白這句意思是置EECR中的EEMWE位,但是怎么理解我就不明白了,請(qǐng)指教,謝謝 |
|
| 5樓: | >>參與討論 |
| 作者: doveyhc 于 2006/4/4 8:38:00 發(fā)布:
你好,向你請(qǐng)教 相當(dāng)于1向左移動(dòng)EEMWE位,再與EECR或啦。。 * - 本貼最后修改時(shí)間:2006-4-5 14:56:53 修改者:doveyhc |
|
| 6樓: | >>參與討論 |
| 作者: apad 于 2006/4/4 8:44:00 發(fā)布:
相當(dāng)于1向左移動(dòng)EEMWE位,再與EECR“或”啦。。 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |