使用STM8SF103 ADC采樣電壓
硬件環(huán)境: STM8SF103 TSSOP20封裝
因?yàn)轫?xiàng)目需要用到AD采樣電池電壓,于是便開始了使用STM8S ADC進(jìn)行采樣,也就有了下文。
手冊(cè)上對(duì)STM8S ADC的管腳描述如下:
STM8SF103這款芯片是TSSOP 20管腳封裝,如下:
STM8SF103這款芯片能用的是5個(gè)AD采樣通道,分別是AIN2~AIN6。其實(shí)是還有一個(gè)通道AIN7,但手冊(cè)并沒有對(duì)其描述。
這里還有一個(gè)很奇怪的地方,從ST資料中找到一個(gè)與上面的表數(shù)據(jù)不同的地方,如:
很明顯的說STM8S103是存在這個(gè)AIN7通道的,再加上另外5個(gè)通道,應(yīng)該是6個(gè)通道才對(duì)。
要做AD采樣,首先要解決的就是AD的參考電壓,之前查看手冊(cè)上并沒有描述AIN7通道,有的僅僅是幾個(gè)外部采樣通道。AIN7通道是內(nèi)部通道,用于提供一個(gè)恒定的電壓參考值。
從別的資料找到下面這句話,很明顯是存在這么一個(gè)通道的,后面測(cè)試也證明這個(gè)是正確的。
第一步已經(jīng)解決了,找到了一個(gè)參考電壓,但這個(gè)電壓到底是多少,手冊(cè)也沒有找到痕跡。只能是根據(jù)公式自己算出來。
Vin = (ADC * Vref) / 1024
Vref = Vin * 1024 / ADC (根據(jù)Vin這個(gè)恒定的值算出參考電壓,這里的參考電壓就是VCC且是變化的。實(shí)際上真正的參考電壓是由AIN7提供的1.22V)
使用VCC做為參考電壓,VCC很明顯可以使用萬用表先測(cè)出來,1024是因?yàn)镾TM8S這款的AD是10位精度。
我測(cè)試的VCC為3.19V,AD值基本上是出于穩(wěn)定狀態(tài)392左右,392 * 3.19 / 1024 = 1.221171875 自然就算出了參考電壓值,這里取1.22。為了證明這個(gè)值是正確的,
使用電池供電,VCC為2.93V。分別采樣8次,計(jì)算每一次的VCC電壓。
n AD值 VCC
1 432 2.89V
2 429 2.91V
3 429 2.91V
4 429 2.91V
5 430 2.90V
6 430 2.90V
7 430 2.90V
8 431 2.89V
另外又使用3.19V進(jìn)行測(cè)試,采樣值也是很接近的,平均3.20左右。
還有另外一款STM8S903也有該采樣通道AIN7,所有的AIN通道有8個(gè),7個(gè)內(nèi)部加上1個(gè)外部通道。如果沒有能夠提供參考電壓,則必須使用外部器件供一個(gè)參考電壓給AINx??蛇x用TL430。
由此可以看出: AIN7通道一定是存在于STM8S103的,并且參考電壓為1.22V。
后記:
經(jīng)本人測(cè)試確實(shí)如以上網(wǎng)友所說。
參考:使用STM8SF103 ADC采樣電壓
我用STM32AD大半年也沒有覺得哪里不好。只有設(shè)置和程序不對(duì)的問題,AD多通道,不同通道之間不需要延時(shí)等待。最多做了8通道加一溫度,數(shù)值都是對(duì)的。但是AD采樣的值不是固定的,有個(gè)上下波動(dòng)。這個(gè)和參考電壓有關(guān)。加軟件濾波有助于改善波動(dòng)。(具體版上有ADC值校準(zhǔn)的帖子,可以搜下)
其次,ADC采樣多通道必須要用DMA傳輸,DMA傳輸要注意設(shè)置buffersize以及起始地址。AD多通道之間要排好順序。再則就是先使能DMA,再使能ADC轉(zhuǎn)換。順序不要錯(cuò)了,否則有的你玩的。
使用STM8SF103 ADC采樣電壓
http://blog.csdn.net/liuyu60305002/article/details/7071245
http://bbs.21ic.com/icview-107700-1-1.html
http://bbs.21ic.com/icview-812992-1-1.html
數(shù)字電源設(shè)計(jì)全過程(圖和代碼)
http://bbs.21dianyuan.com/188786.html#revert_content_729541
參考:沒有外部基準(zhǔn)的單片機(jī)如何獲得精準(zhǔn)AD
因?yàn)闆]有外部基準(zhǔn)電壓,而采用內(nèi)部基準(zhǔn)往往就是VDDA的電壓,面對(duì)大批量產(chǎn)品,往往此電壓差異較大,如何消除此影響呢,
1、可以采用一路AD連接一個(gè)類似TL431的外部參考標(biāo)準(zhǔn)電壓來獲得VDDA的電壓從而消除VDDA的不定值對(duì)要測(cè)AD的影響。
2、VDDA上連接一個(gè)與電源電壓相差不大的高精準(zhǔn)電源,比如可以用TL431組成一個(gè)3.3v基準(zhǔn),但考慮TL431基準(zhǔn)2.5,穩(wěn)壓到3.3需要加電阻匹配,電阻的誤差也要考慮,所以此方案沒采用。