0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

模數(shù)轉(zhuǎn)換器(ADC)的使用教學(xué)

jf_qE49KoVBr8 ? 來(lái)源:CW32生態(tài)社區(qū) ? 2024-03-05 15:01 ? 次閱讀

本章為大家?guī)?lái)模數(shù)轉(zhuǎn)換器ADC)的使用教學(xué),按照慣例,我們先來(lái)說(shuō)一下模數(shù)轉(zhuǎn)換器本身。

首先是功能,模數(shù)轉(zhuǎn)換器接收電壓信號(hào)并輸出一個(gè)數(shù)字信號(hào),該數(shù)字信號(hào)是一個(gè)數(shù)字,這個(gè)數(shù)字指示了電壓信號(hào)的大小。通常來(lái)說(shuō),想要判斷大小就需要有對(duì)比,因此該數(shù)字指示的電壓大小實(shí)際上是一個(gè)比較的結(jié)果。ADC將需要測(cè)量的電壓信號(hào)Ut與已知電壓的信號(hào)U作比較,并最終輸出一個(gè)數(shù)字表示Ut相當(dāng)于多少比例的U。

接下來(lái)就可以看看CW32的ADC外設(shè)結(jié)構(gòu)框圖了,圖中按塊劃分了ADC外設(shè)的不同功能區(qū)。

bdfcd276-dabd-11ee-a297-92fbcf53809c.png

ADC會(huì)將左側(cè)紅框中某一指定通道(由程序指定)所連接的電信號(hào)與下方紅框中選定的參考電壓(由程序選定)進(jìn)行比較,完成紫色方框中的步驟后,最終輸出一個(gè)數(shù)字(暫記為value)并存放在右側(cè)紅框中的寄存器里面。Value的范圍取決于ADC的位數(shù),若ADC為12位,則value最大為2^12=4096,最小值為0,value指示了相比于參考電壓U,輸入電壓Ut的值,計(jì)算方法如下:可以認(rèn)為ADC將參考電壓分成了4096份,最終輸出的結(jié)果反映了輸入電壓夠得上其中多少份,例如參考電壓選擇2.5V,最終轉(zhuǎn)換的結(jié)果數(shù)據(jù)為2048,那么就認(rèn)定輸入通道的實(shí)際電壓值是2.5/4096*2048=1.25V,其他情況以此類(lèi)推。由于參考電壓的存在,ADC無(wú)法直接測(cè)量比參考電壓值高的信號(hào),輸入通道連接的電壓不能高于參考電壓。

現(xiàn)在來(lái)簡(jiǎn)單說(shuō)說(shuō)紫色方框內(nèi)的部分,這一部分是ADC的核心部分,根據(jù)ADC轉(zhuǎn)換原理的不同,這一部分的電路結(jié)構(gòu)也不一樣,CW32的ADC是逐次逼近型ADC,它會(huì)先把通道中的電壓信號(hào)采樣并被內(nèi)部的采樣保持放大器輸出且保持穩(wěn)定(這一步叫采樣保持),隨后ADC用逐次逼近的方法得到一個(gè)12位的數(shù)字(這一步叫量化編碼),需要重點(diǎn)關(guān)心的是采樣保持階段的持續(xù)時(shí)間,這個(gè)時(shí)間越久,最終用于量化編碼階段的采樣電壓值就越精確,我們就能得到更精確的轉(zhuǎn)換結(jié)果。

從上述步驟來(lái)看,使用ADC需要進(jìn)行如下操作:

1.必要的IO初始化和外設(shè)時(shí)鐘初始化;

2.正確設(shè)置ADC的采樣通道和參考電壓;

3.選擇合適的ADC采樣時(shí)間;

4.啟動(dòng)ADC并等待轉(zhuǎn)換完成;

5.讀取轉(zhuǎn)換結(jié)果寄存器得到電壓值;

首先需要說(shuō)明的是IO初始化的問(wèn)題。對(duì)于使用ADC功能的IO,它本質(zhì)上并不是“將這個(gè)IO復(fù)用為ADC功能”,而是把這個(gè)IO設(shè)置為模擬輸入,也就是不將IO上的電信號(hào)量化成數(shù)字信號(hào),這一點(diǎn)在GPIO電路結(jié)構(gòu)圖里面可以看到。

be194b7c-dabd-11ee-a297-92fbcf53809c.png

這個(gè)模擬功能從結(jié)果上來(lái)看就是ADC復(fù)用,不過(guò)還是請(qǐng)大家理解其本質(zhì)。

下一個(gè)要說(shuō)的是采樣通道。ADC一般都會(huì)有多個(gè)采樣通道,開(kāi)發(fā)者從中挑選一些通道接入電路來(lái)使用。ADC外設(shè)同一時(shí)間只能對(duì)某一個(gè)通道上的電壓進(jìn)行轉(zhuǎn)換,所以如果需要采樣四個(gè)通道的電壓,只能順序轉(zhuǎn)換,這個(gè)轉(zhuǎn)換順序是可以手動(dòng)設(shè)置的。ADC擁有4個(gè)可填入的配置項(xiàng),暫且稱為序列0~3,ADC會(huì)根據(jù)另外一個(gè)配置項(xiàng)(ADC_SQR寄存器的ENS位段)來(lái)判斷該轉(zhuǎn)換這4個(gè)序列中的哪些,序列里面需要填寫(xiě)的內(nèi)容就是AD采樣的通道號(hào),配置完成之后ADC就會(huì)按照這4個(gè)序列內(nèi)填的通道號(hào)按順序進(jìn)行AD轉(zhuǎn)換。更具體的配置方法直接參考ADC_SQR寄存器描述即可

be1dd6ce-dabd-11ee-a297-92fbcf53809c.png

圖中有一些前文沒(méi)說(shuō)到的配置項(xiàng),因?yàn)檫@些配置項(xiàng)是一些ADC附帶的特殊功能。具體的功能在手冊(cè)ADC章節(jié)的寄存器描述中有詳細(xì)說(shuō)明,代碼中的注釋也已經(jīng)詳細(xì)標(biāo)注。

該配置中,ADC被配置為單通道單次轉(zhuǎn)換模式,也就是說(shuō)ADC一次轉(zhuǎn)換只能轉(zhuǎn)換一個(gè)ADC通道,并且轉(zhuǎn)換完成之后就會(huì)停下來(lái)等待CPU發(fā)出下一次轉(zhuǎn)換開(kāi)始的指令(相對(duì)的,還有連續(xù)模式和掃描模式)。

配置完成后,再編寫(xiě)一個(gè)啟動(dòng)ADC的函數(shù)就行了,該函數(shù)需要包含啟動(dòng)、等待轉(zhuǎn)換完成、返回?cái)?shù)據(jù)的功能,如圖所示:

be340296-dabd-11ee-a297-92fbcf53809c.png

上圖的具體步驟對(duì)應(yīng)了手冊(cè)中描述的步驟,詳細(xì)說(shuō)明見(jiàn)用戶手冊(cè)22.5.1章節(jié)。

ADC一般用法的介紹到此就結(jié)束了,但ADC還有很多其他功能,比如連續(xù)模式、掃描模式、硬件觸發(fā)采集和DMA訪問(wèn),這些模式可以幫助我們更好地使用ADC功能,后續(xù)的章節(jié)會(huì)介紹一種不消耗CPU資源的ADC采集方法,真正實(shí)現(xiàn)全自動(dòng)采集。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 放大器
    +關(guān)注

    關(guān)注

    143

    文章

    13589

    瀏覽量

    213488
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5343

    瀏覽量

    120377
  • 模數(shù)轉(zhuǎn)換器

    關(guān)注

    26

    文章

    3204

    瀏覽量

    126840
  • 電壓信號(hào)
    +關(guān)注

    關(guān)注

    0

    文章

    214

    瀏覽量

    13379
  • ADC采樣
    +關(guān)注

    關(guān)注

    0

    文章

    134

    瀏覽量

    12845

原文標(biāo)題:【CW32學(xué)習(xí)筆記】模數(shù)轉(zhuǎn)換器

文章出處:【微信號(hào):武漢芯源半導(dǎo)體,微信公眾號(hào):武漢芯源半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ADC模數(shù)轉(zhuǎn)換器介紹

    模數(shù)轉(zhuǎn)換器(analog to Digital Converter,簡(jiǎn)稱ADC)是一種數(shù)據(jù)轉(zhuǎn)換器,它通過(guò)將模擬信號(hào)編碼為二進(jìn)制代碼,使數(shù)字電路能夠與現(xiàn)實(shí)世界進(jìn)行接口。
    發(fā)表于 06-26 11:44 ?4559次閱讀
    <b class='flag-5'>ADC</b><b class='flag-5'>模數(shù)轉(zhuǎn)換器</b>介紹

    【有那么點(diǎn)詳細(xì)的CW32學(xué)習(xí)筆記】模數(shù)轉(zhuǎn)換器

    本章為大家?guī)?lái)模數(shù)轉(zhuǎn)換器ADC)的使用教學(xué),按照慣例,我們先來(lái)說(shuō)一下模數(shù)轉(zhuǎn)換器本身。 首先是功能,模數(shù)轉(zhuǎn)換器接收電壓信號(hào)并輸出一個(gè)數(shù)字信號(hào)
    的頭像 發(fā)表于 02-29 09:41 ?781次閱讀
    【有那么點(diǎn)詳細(xì)的CW32學(xué)習(xí)筆記】<b class='flag-5'>模數(shù)轉(zhuǎn)換器</b>

    數(shù)模和模數(shù)轉(zhuǎn)換器

    數(shù)模和模數(shù)轉(zhuǎn)換器數(shù)模和模數(shù)轉(zhuǎn)換器能將模擬量轉(zhuǎn)換為數(shù)字量的電路稱為模數(shù)轉(zhuǎn)換器,簡(jiǎn)稱A/D轉(zhuǎn)換器ADC
    發(fā)表于 09-16 15:59

    5962-9581501HXA高端AD模數(shù)轉(zhuǎn)換器

    AD10242TZ/883B高端AD模數(shù)轉(zhuǎn)換器IC ADC 12BIT 41MSPS DL 68CLCC5962-9581501HXA高端AD模數(shù)轉(zhuǎn)換器IC ADC 12BIT 2 C
    發(fā)表于 07-15 11:10

    模數(shù)轉(zhuǎn)換器ADC)的配置有哪些流程?

    模數(shù)轉(zhuǎn)換器ADC)是什么?模數(shù)轉(zhuǎn)換器ADC)的配置有哪些流程?配置流程的代碼是什么?
    發(fā)表于 07-14 08:43

    ADC模數(shù)轉(zhuǎn)換器

    文章目錄1. ADC1. ADCADC(Analog-to-digital converters,模數(shù)轉(zhuǎn)換器),
    發(fā)表于 08-06 06:08

    模數(shù)轉(zhuǎn)換器(ADC)的基本原理是什么?

    模數(shù)轉(zhuǎn)換器(ADC)的基本原理是什么?常用的幾種ADC類(lèi)型的基本原理及特點(diǎn)是什么?
    發(fā)表于 09-28 08:21

    STM32之ADC模數(shù)轉(zhuǎn)換器介紹

    ADC模數(shù)轉(zhuǎn)換器是什么?ADC模數(shù)轉(zhuǎn)換器的相關(guān)寄存有哪些?
    發(fā)表于 11-08 08:47

    ADC0809模數(shù)轉(zhuǎn)換器主要特性

    ADC0809更詳細(xì)的參數(shù)說(shuō)明可以查看它的芯片手冊(cè)(英文原版)鏈接:文章目錄1、ADC0809模數(shù)轉(zhuǎn)換器主要特性:2、ADC0809外部特征1、AD
    發(fā)表于 12-02 08:24

    模數(shù)轉(zhuǎn)換器ADC簡(jiǎn)介

    ESP32 之 ESP-IDF 學(xué)習(xí)筆記(七)——模數(shù)轉(zhuǎn)換器ADC)文章目錄ESP32 之 ESP-IDF 學(xué)習(xí)筆記(七)——模數(shù)轉(zhuǎn)換器ADC)一、簡(jiǎn)介1、兩個(gè)
    發(fā)表于 02-17 06:28

    模數(shù)轉(zhuǎn)換器ADC簡(jiǎn)介

    介紹將模擬電子信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)的電路,稱為模數(shù)轉(zhuǎn)換器,簡(jiǎn)稱A/D轉(zhuǎn)換器ADC。同理,將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)的電路稱為數(shù)模
    發(fā)表于 02-18 06:54

    為什么我們需要模數(shù)轉(zhuǎn)換器?哪個(gè)ADC轉(zhuǎn)換器更好?

    模數(shù)轉(zhuǎn)換器定義ADC轉(zhuǎn)換器是將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)的系統(tǒng)。這是一個(gè)過(guò)濾、采樣并保持、量化和編碼的過(guò)程。模擬信號(hào)通過(guò)帶限濾波、采樣保持電路,成為梯形信號(hào),再通過(guò)編碼
    發(fā)表于 02-15 18:16

    電流積分模數(shù)轉(zhuǎn)換器(ADC),什么是電流積分模數(shù)轉(zhuǎn)換器(AD

    電流積分模數(shù)轉(zhuǎn)換器(ADC),什么是電流積分模數(shù)轉(zhuǎn)換器(ADC) 模數(shù)轉(zhuǎn)換器(Analog to digital Converter,簡(jiǎn)稱
    發(fā)表于 03-24 13:31 ?3170次閱讀

    淺談CW32系列模數(shù)轉(zhuǎn)換器ADC

    CW32系列模數(shù)轉(zhuǎn)換器ADC
    的頭像 發(fā)表于 10-25 15:43 ?1150次閱讀
    淺談CW32系列<b class='flag-5'>模數(shù)轉(zhuǎn)換器</b>(<b class='flag-5'>ADC</b>)

    ADC模數(shù)轉(zhuǎn)換器的延時(shí)原理

    ADC模數(shù)轉(zhuǎn)換器的延時(shí)原理主要與其內(nèi)部的采樣和保持電路、比較、計(jì)數(shù)等有關(guān)。以下是一般的ADC轉(zhuǎn)換
    的頭像 發(fā)表于 11-16 15:59 ?944次閱讀