<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

模數轉換器(ADC)的使用教學

武漢芯源半導體 ? 來源:CW32生態社區 ? 2024-03-05 15:01 ? 次閱讀

本章為大家帶來模數轉換器ADC)的使用教學,按照慣例,我們先來說一下模數轉換器本身。

首先是功能,模數轉換器接收電壓信號并輸出一個數字信號,該數字信號是一個數字,這個數字指示了電壓信號的大小。通常來說,想要判斷大小就需要有對比,因此該數字指示的電壓大小實際上是一個比較的結果。ADC將需要測量的電壓信號Ut與已知電壓的信號U作比較,并最終輸出一個數字表示Ut相當于多少比例的U。

接下來就可以看看CW32的ADC外設結構框圖了,圖中按塊劃分了ADC外設的不同功能區。

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

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

現在來簡單說說紫色方框內的部分,這一部分是ADC的核心部分,根據ADC轉換原理的不同,這一部分的電路結構也不一樣,CW32的ADC是逐次逼近型ADC,它會先把通道中的電壓信號采樣并被內部的采樣保持放大器輸出且保持穩定(這一步叫采樣保持),隨后ADC用逐次逼近的方法得到一個12位的數字(這一步叫量化編碼),需要重點關心的是采樣保持階段的持續時間,這個時間越久,最終用于量化編碼階段的采樣電壓值就越精確,我們就能得到更精確的轉換結果。

從上述步驟來看,使用ADC需要進行如下操作:

1.必要的IO初始化和外設時鐘初始化;

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

3.選擇合適的ADC采樣時間;

4.啟動ADC并等待轉換完成;

5.讀取轉換結果寄存器得到電壓值;

首先需要說明的是IO初始化的問題。對于使用ADC功能的IO,它本質上并不是“將這個IO復用為ADC功能”,而是把這個IO設置為模擬輸入,也就是不將IO上的電信號量化成數字信號,這一點在GPIO電路結構圖里面可以看到。

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

這個模擬功能從結果上來看就是ADC復用,不過還是請大家理解其本質。

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

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

圖中有一些前文沒說到的配置項,因為這些配置項是一些ADC附帶的特殊功能。具體的功能在手冊ADC章節的寄存器描述中有詳細說明,代碼中的注釋也已經詳細標注。

該配置中,ADC被配置為單通道單次轉換模式,也就是說ADC一次轉換只能轉換一個ADC通道,并且轉換完成之后就會停下來等待CPU發出下一次轉換開始的指令(相對的,還有連續模式和掃描模式)。

配置完成后,再編寫一個啟動ADC的函數就行了,該函數需要包含啟動、等待轉換完成、返回數據的功能,如圖所示:

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

上圖的具體步驟對應了手冊中描述的步驟,詳細說明見用戶手冊22.5.1章節。

ADC一般用法的介紹到此就結束了,但ADC還有很多其他功能,比如連續模式、掃描模式、硬件觸發采集和DMA訪問,這些模式可以幫助我們更好地使用ADC功能,后續的章節會介紹一種不消耗CPU資源的ADC采集方法,真正實現全自動采集。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 放大器
    +關注

    關注

    142

    文章

    12443

    瀏覽量

    210348
  • 寄存器
    +關注

    關注

    30

    文章

    5104

    瀏覽量

    117975
  • 模數轉換器
    +關注

    關注

    25

    文章

    2310

    瀏覽量

    126127
  • 電壓信號
    +關注

    關注

    0

    文章

    149

    瀏覽量

    12855
  • ADC采樣
    +關注

    關注

    0

    文章

    129

    瀏覽量

    12724

原文標題:【CW32學習筆記】模數轉換器

文章出處:【微信號:武漢芯源半導體,微信公眾號:武漢芯源半導體】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【有那么點詳細的CW32學習筆記】模數轉換器

    本章為大家帶來模數轉換器ADC)的使用教學,按照慣例,我們先來說一下模數轉換器本身。 首先是功能,模數轉換器接收電壓信號并輸出一個數字信號
    的頭像 發表于 02-29 09:41 ?261次閱讀
    【有那么點詳細的CW32學習筆記】<b class='flag-5'>模數轉換器</b>

    數模和模數轉換器

    數模和模數轉換器數模和模數轉換器能將模擬量轉換為數字量的電路稱為模數轉換器,簡稱A/D轉換器ADC
    發表于 09-16 15:59

    5962-9581501HXA高端AD模數轉換器

    AD10242TZ/883B高端AD模數轉換器IC ADC 12BIT 41MSPS DL 68CLCC5962-9581501HXA高端AD模數轉換器IC ADC 12BIT 2 C
    發表于 07-15 11:10

    AD574ASE/883B高端AD模數轉換器IC

    AD9680BCPZRL7-1250高端AD模數轉換器IC ADC 14BIT PIPELINED 64LFCSPAD9691BCPZRL7-1250高端AD模數轉換器IC ADC 1
    發表于 08-14 22:17

    模數轉換器ADC)的配置有哪些流程?

    模數轉換器ADC)是什么?模數轉換器ADC)的配置有哪些流程?配置流程的代碼是什么?
    發表于 07-14 08:43

    ADC模數轉換器

    文章目錄1. ADC1. ADCADC(Analog-to-digital converters,模數轉換器),
    發表于 08-06 06:08

    ADC模數轉換器

    縮寫外設/單元ADC模數轉換器BKP備份寄存CAN控制局域網模塊DMA直接內存存取控制EXTI外部中斷事件控制
    發表于 08-23 06:23

    模數轉換器(ADC)的基本原理是什么?

    模數轉換器(ADC)的基本原理是什么?常用的幾種ADC類型的基本原理及特點是什么?
    發表于 09-28 08:21

    STM32之ADC模數轉換器介紹

    ADC模數轉換器是什么?ADC模數轉換器的相關寄存有哪些?
    發表于 11-08 08:47

    STM32的ADC模數轉換器有哪幾種工作模式及應用呢

    ADC模數轉換器是什么?為什么需要ADC?STM32的ADC模數轉換器有哪幾種工作模式及應用呢?
    發表于 11-15 08:08

    ADC0809模數轉換器主要特性

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

    模數轉換器ADC簡介

    ESP32 之 ESP-IDF 學習筆記(七)——模數轉換器ADC)文章目錄ESP32 之 ESP-IDF 學習筆記(七)——模數轉換器ADC)一、簡介1、兩個
    發表于 02-17 06:28

    模數轉換器ADC簡介

    介紹將模擬電子信號轉換成數字信號的電路,稱為模數轉換器,簡稱A/D轉換器ADC。同理,將數字信號轉換成模擬信號的電路稱為數模
    發表于 02-18 06:54

    為什么我們需要模數轉換器?哪個ADC轉換器更好?

    模數轉換器定義ADC轉換器是將模擬信號轉換為數字信號的系統。這是一個過濾、采樣并保持、量化和編碼的過程。模擬信號通過帶限濾波、采樣保持電路,成為梯形信號,再通過編碼
    發表于 02-15 18:16

    電流積分模數轉換器(ADC),什么是電流積分模數轉換器(AD

    電流積分模數轉換器(ADC),什么是電流積分模數轉換器(ADC) 模數轉換器(Analog to digital Converter,簡稱
    發表于 03-24 13:31 ?2998次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>