91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

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

雅特力AT32F423 ADC使用指南

雅特力 AT32 MCU ? 2024-02-22 08:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ADC簡介

ADC控制器的功能極其強(qiáng)大。其包含但不限于以下內(nèi)容

  • 時鐘及狀態(tài),由數(shù)字和模擬時鐘兩個部分組成
  • 分辨率及采樣轉(zhuǎn)換,可配置分辨率為12/10/8/6位的轉(zhuǎn)換,采樣周期支持廣范圍的配置
  • 自校準(zhǔn),自帶校準(zhǔn)功能以糾正數(shù)據(jù)偏移
  • 基本模式,支持多種模式,不同模式可組合使用滿足多種應(yīng)用
  • 不同優(yōu)先權(quán)的通道,普通通道與搶占通道具備不同的優(yōu)先權(quán)
  • 多種獨(dú)立的觸發(fā)源,包括TMR、EXINT、軟觸發(fā)等多種觸發(fā)選擇
  • 數(shù)據(jù)后級處理,包括數(shù)據(jù)的對齊,搶占通道偏移量等多種處理
  • 轉(zhuǎn)換中止,可軟件控制在ADC不掉電狀態(tài)下實(shí)現(xiàn)轉(zhuǎn)換中止
  • 過采樣器,普通及搶占通道均支持過采樣
  • 電壓監(jiān)測,通過對轉(zhuǎn)換結(jié)果的判定來實(shí)現(xiàn)電壓監(jiān)測
  • 中斷及狀態(tài)事件,具備多種標(biāo)志指示ADC狀態(tài),且某些標(biāo)志還具備中斷功能
  • 多種轉(zhuǎn)換數(shù)據(jù)的獲取方式,包括DMA獲取、CPU獲取兩種方式實(shí)現(xiàn)轉(zhuǎn)換數(shù)據(jù)的讀取
  • 多達(dá)26個通道:IN0~IN17,IN20~IN27

圖1. ADC1框圖4847fda8-d117-11ee-9118-92fbcf53809c.png

ADC功能解析

時鐘及狀態(tài)

功能介紹ADC的時鐘分為數(shù)字時鐘與模擬時鐘。其統(tǒng)一通過CRM_APB2EN的ADCxEN位使能。

  • 數(shù)字時鐘:即PCLK2,經(jīng)HCLK分頻而來,提供給數(shù)字部分使用。
  • 模擬時鐘:即ADCCLK,經(jīng)ADC預(yù)分頻器分頻而來,提供給模擬部分使用。模擬時鐘源可以選擇HCLK或PLLCLK,通過CRM_MISC1的PLLCLK_TO_ADC位選擇。

軟件接口ADC時鐘使能,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:486f124e-d117-11ee-9118-92fbcf53809c.png當(dāng)ADC時鐘使能后,軟件即可開始進(jìn)行ADC的一些相關(guān)配置。ADC模擬時鐘源選擇,其軟件實(shí)例如下:487e28b0-d117-11ee-9118-92fbcf53809c.pngADC預(yù)分頻設(shè)定,軟件由ADC公共部分結(jié)構(gòu)體配置完成,其軟件實(shí)例如下:488fadb0-d117-11ee-9118-92fbcf53809c.png此項(xiàng)實(shí)際用于設(shè)定ADC模擬部分的時鐘,其由HCLK或PLLCLK分頻而來。注意:1)模擬部分的ADCCLK由HCLK分頻而來,其不可大于80MHz;2)ADC數(shù)字部分掛在PCLK2上,為避免同步問題,ADCCLK頻率不可高于PCLK2;3)當(dāng)選擇PLLCLK作為ADC模擬時鐘源時,此時必須保證系統(tǒng)時鐘SCLKSEL選擇PLL/2。4)ADC模擬部分電源由ADC_CTRL2的ADCEN,其不受ADC的時鐘狀態(tài)影響。典型的,如果系統(tǒng)需要進(jìn)入深度睡眠模式,如果不關(guān)閉ADCEN,此時ADC模擬器件將還會消耗電流;5)ADC上電有一段等待時間,應(yīng)用應(yīng)該在判定到ADC的RDY flag置位后再執(zhí)行后續(xù)觸發(fā)等操作。

分辨率及采樣轉(zhuǎn)換

功能介紹ADC可隨意設(shè)定12、10、8、6位分辨率使用。ADC可設(shè)定2.5、6.5、12.5、24.5、47.5、92.5、247.5、640.5個采樣周期。ADC對通道數(shù)據(jù)的獲取由采樣和轉(zhuǎn)換兩個部分組成。采樣先于轉(zhuǎn)換執(zhí)行,采樣期間內(nèi)選通需要轉(zhuǎn)換的通道,外部電壓對ADC內(nèi)部采樣電容充電,將持續(xù)執(zhí)行設(shè)定的采樣周期長度時間的充電。采樣結(jié)束后就會自動開始轉(zhuǎn)換,ADC采用逐次逼近的轉(zhuǎn)換方式,可有效保障轉(zhuǎn)換數(shù)據(jù)的準(zhǔn)確性。此轉(zhuǎn)換方式需要分辨率位數(shù)個ADCCLK的轉(zhuǎn)換時間來完成單通道的轉(zhuǎn)換,再結(jié)合數(shù)據(jù)處理,因此單個通道的整體轉(zhuǎn)換時間即489ad140-d117-11ee-9118-92fbcf53809c.png示例:CSPTx選擇6.5周期,CRSEL選擇10位,一次轉(zhuǎn)換需要6.5+10+0.5=17個ADCCLK周期。軟件接口ADC分辨率設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:48ae48d8-d117-11ee-9118-92fbcf53809c.png注意:ADC的自校準(zhǔn)只能在12位分辨率下進(jìn)行,切分辨需安排在校準(zhǔn)完成后執(zhí)行。ADC采樣周期設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:48b894b4-d117-11ee-9118-92fbcf53809c.png注意:不同通道可設(shè)定不同的采樣周期;當(dāng)采用中斷或輪詢方式獲取普通通道數(shù)據(jù),為避免溢出,建議合理增大采樣周期;為避免充電不充分導(dǎo)致轉(zhuǎn)換數(shù)據(jù)不準(zhǔn)確,應(yīng)用允許的條件下,建議合理增大采樣周期。

自校準(zhǔn)

功能介紹ADC具備自校準(zhǔn)能力,軟件可以執(zhí)行自校準(zhǔn)命令,透過自校準(zhǔn)可以計(jì)算出一個校準(zhǔn)值。不需要軟件干預(yù),ADC會自動將該校準(zhǔn)值反饋回ADC內(nèi)部補(bǔ)償ADC基礎(chǔ)偏差,以保障轉(zhuǎn)換數(shù)據(jù)的準(zhǔn)確性。校準(zhǔn)值有兩種獲取方式:

  • 軟件下自校準(zhǔn)命令,由硬件自動計(jì)算,產(chǎn)生的校準(zhǔn)值保存在ADC->CALVAL寄存器內(nèi)
  • 軟件直接根據(jù)經(jīng)驗(yàn)值,手動設(shè)定校準(zhǔn)值,該值同樣被保存在ADC->CALVAL寄存器內(nèi)

自校準(zhǔn)的軟件流程如下

  • 在12位分辨率狀態(tài)下使能ADC
  • 等待ADC的RDY標(biāo)志置位
  • 執(zhí)行初始化校準(zhǔn)命令并等待初始化校準(zhǔn)完成
  • 執(zhí)行校準(zhǔn)命令并等待校準(zhǔn)完成
  • 根據(jù)應(yīng)用需求切換到期望配置的分辨率
  • 等待ADC的RDY標(biāo)志置位
  • 執(zhí)行完上述流程后,即可開始進(jìn)行ADC的觸發(fā)轉(zhuǎn)換

軟件接口完整的校準(zhǔn)及設(shè)定分辨率需由組合命令實(shí)現(xiàn),依據(jù)校準(zhǔn)值設(shè)定方式可區(qū)分如下兩種自校準(zhǔn)方式,其軟件實(shí)例如下:48c7e9a0-d117-11ee-9118-92fbcf53809c.png寫經(jīng)驗(yàn)值校準(zhǔn)方式,其軟件實(shí)例如下:48dd7270-d117-11ee-9118-92fbcf53809c.png注意:校準(zhǔn)值的存放不會置位OCCE標(biāo)志,不會產(chǎn)生中斷或DMA請求;ADC的自校準(zhǔn)只能在12位分辨率下進(jìn)行,切分辨需安排在校準(zhǔn)完成后執(zhí)行。

基本模式

功能介紹1、序列模式ADC支持序列模式設(shè)定,開啟序列模式后,每次觸發(fā)將序列中的通道依序轉(zhuǎn)換一次。用戶于ADC_OSQx配置普通通道序列,普通通道從OSN1開始轉(zhuǎn)換;于ADC_PSQ配置搶占通道序列,搶占通道是從PSNx開始轉(zhuǎn)換(x=4-PCLEN)。搶占通道轉(zhuǎn)換示例:ADC_PSQ[21:0]=10 00110 00101 00100 00011,此時掃描轉(zhuǎn)換順序?yàn)镃H4、CH5、CH6,而不是CH3、CH4、CH5圖2. 序列模式49031a98-d117-11ee-9118-92fbcf53809c.png2、反復(fù)模式ADC支持反復(fù)模式設(shè)定,開啟反復(fù)模式后,當(dāng)檢測到觸發(fā)后就即會反復(fù)不斷地轉(zhuǎn)換普通通道組。圖3. 反復(fù)模式+搶占自動轉(zhuǎn)換模式分割模式ADC支持分割模式設(shè)定。對于普通通道組,分割模式可依據(jù)設(shè)定將通道組分割成長度較小的子組別。一次觸發(fā)將轉(zhuǎn)換子組別中的所有通道。每次觸發(fā)會依序選擇不同的子組別進(jìn)行轉(zhuǎn)換。對于搶占通道組,分割模式直接以通道為單位進(jìn)行分割,一次觸發(fā)將轉(zhuǎn)換單個通道。每次觸發(fā)會依序選擇不同的通道進(jìn)行轉(zhuǎn)換。圖4. 分割模式491b2bce-d117-11ee-9118-92fbcf53809c.png3、搶占自動轉(zhuǎn)換模式ADC支持搶占自動轉(zhuǎn)換模式設(shè)定,開啟搶占自動轉(zhuǎn)換模式后,當(dāng)普通通道轉(zhuǎn)換完成后,搶占通道將自動接續(xù)著轉(zhuǎn)換,而不需要進(jìn)行搶占通道的觸發(fā)。圖5. 搶占自動轉(zhuǎn)換模式493a4720-d117-11ee-9118-92fbcf53809c.png軟件接口ADC序列模式和反復(fù)模式設(shè)定,由ADC基礎(chǔ)部分結(jié)構(gòu)體配置完成,其軟件實(shí)例如下:495178fa-d117-11ee-9118-92fbcf53809c.png注意:序列模式對普通及搶占通道組均有效;反復(fù)模式僅對普通通道組有效,搶占通道組不具備反復(fù)模式功能;反復(fù)模式與分割模式不可共用;反復(fù)模式可與搶占自動轉(zhuǎn)換模式共用,將實(shí)現(xiàn)依次反復(fù)的轉(zhuǎn)換普通通道序列及搶占通道序列。ADC分割模式設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:49850224-d117-11ee-9118-92fbcf53809c.png注意:分割模式對普通及搶占通道組均有效;搶占通道組分割模式子組別長度不可設(shè)定,其固定為單個通道;分割模式與反復(fù)模式、搶占自動轉(zhuǎn)換模式不可共用,普通通道與搶占通道的分割模式不可共用。搶占自動轉(zhuǎn)換模式設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:498cd940-d117-11ee-9118-92fbcf53809c.png注意:搶占自動轉(zhuǎn)換模式僅對搶占通道組有效;搶占自動轉(zhuǎn)換模式與分割模式不可共用。

不同優(yōu)先權(quán)的通道

功能介紹ADC設(shè)計(jì)有具備不同優(yōu)先權(quán)的兩種通道組:普通通道組與搶占通道組。

  • 普通通道組

通常用于執(zhí)行常規(guī)的數(shù)據(jù)轉(zhuǎn)換。支持最多配置32個通道,轉(zhuǎn)換將按照設(shè)定的通道順序依次進(jìn)行。其不具備搶占能力。

  • 搶占通道組

通常用于執(zhí)行相對緊急的數(shù)據(jù)轉(zhuǎn)換。支持最多配置4個通道,轉(zhuǎn)換將按照設(shè)定的通道順序依次進(jìn)行。其具備搶占能力,即搶占通道組的轉(zhuǎn)換可以打斷正在執(zhí)行的普通通道轉(zhuǎn)換,待搶占通道組轉(zhuǎn)換完畢后再恢復(fù)執(zhí)行被打斷的普通通道組轉(zhuǎn)換。

軟件接口普通通道組設(shè)定,軟件包括通道數(shù)量、通道數(shù)值、轉(zhuǎn)換順序、采樣周期的設(shè)定,其軟件實(shí)例如下:4998ad4c-d117-11ee-9118-92fbcf53809c.png搶占通道組設(shè)定,軟件包括通道數(shù)量、通道數(shù)值、轉(zhuǎn)換順序、采樣周期的設(shè)定,其軟件實(shí)例如下:49f1e510-d117-11ee-9118-92fbcf53809c.png注意:不同通道可以設(shè)定不同的采樣周期;同一通道可以被反復(fù)編排進(jìn)轉(zhuǎn)換序列進(jìn)行轉(zhuǎn)換;序列模式下,普通通道組從OSN1開始轉(zhuǎn)換,搶占通道組是從PSNx開始轉(zhuǎn)換(x=4-PCLEN)。

多種獨(dú)立的觸發(fā)源

功能介紹ADC支持多種觸發(fā)源,包含軟件寫寄存器觸發(fā)(ADC_CTRL2的OCSWTRG與PCSWTRG)以及外部觸發(fā)。外部觸發(fā)包含定時器觸發(fā)與引腳觸發(fā),外部觸發(fā)可設(shè)定觸發(fā)極性(觸發(fā)極性可選擇禁止邊沿觸發(fā)、上升沿觸發(fā)、下降沿觸發(fā)或任意邊沿觸發(fā))。表1. 普通通道和搶占通道觸發(fā)源4a07b674-d117-11ee-9118-92fbcf53809c.png軟件接口軟件寫寄存器觸發(fā)設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4a1b3820-d117-11ee-9118-92fbcf53809c.png在ADC Ready后,軟件即可執(zhí)行adc_ordinary_software_trigger_enable(ADC1,TRUE);/adc_preempt_software_trigger_enable(ADC1,TRUE);來進(jìn)行普通/搶占通道的觸發(fā)。外部觸發(fā)設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4a2b9198-d117-11ee-9118-92fbcf53809c.png在ADC Ready后,TMR1CH1的上升沿事件就會觸發(fā)普通通道組轉(zhuǎn)換,TMR3CH4的上升沿事件就會觸發(fā)搶占通道組轉(zhuǎn)換。注意:觸發(fā)間隔需要大于通道組轉(zhuǎn)換的時間,轉(zhuǎn)換期間發(fā)生的相同通道組的觸發(fā)會被忽略;使用軟件寫寄存器觸發(fā)時,對應(yīng)觸發(fā)極性必須選擇禁止邊沿觸發(fā);搶占通道轉(zhuǎn)換優(yōu)先權(quán)最高,不管當(dāng)前是否有普通通道轉(zhuǎn)換,其觸發(fā)后就會立即開始響應(yīng)轉(zhuǎn)換;普通觸發(fā)具備記憶功能,在搶占轉(zhuǎn)換時執(zhí)行普通觸發(fā),該觸發(fā)會被記錄并在搶占轉(zhuǎn)換完畢后響應(yīng)。

數(shù)據(jù)后級處理

功能介紹

ADC具備專有的數(shù)據(jù)寄存器,普通通道轉(zhuǎn)換完成后數(shù)據(jù)存儲于普通數(shù)據(jù)寄存器(ADC_ODT),搶占通道轉(zhuǎn)換完成后數(shù)據(jù)存儲于搶占數(shù)據(jù)寄存器x(ADC_PDTx)。數(shù)據(jù)寄存器內(nèi)存儲的是經(jīng)過處理后的數(shù)據(jù)。該處理包括數(shù)據(jù)對齊、搶占數(shù)據(jù)偏移。

  • 數(shù)據(jù)對齊

分左對齊和右對齊。分辨率CRSEL為6位時,數(shù)據(jù)存儲方式以字節(jié)為基準(zhǔn)擺放,其余皆以半字為基準(zhǔn)擺放。

  • 搶占數(shù)據(jù)偏移

搶占通道的數(shù)據(jù)會減去搶占數(shù)據(jù)偏移寄存器x(ADC_PCDTOx)內(nèi)的偏移量,因此搶占通道數(shù)據(jù)有可能為負(fù)值,以SIGN作為符號。圖6. 數(shù)據(jù)內(nèi)容處理4a3c876e-d117-11ee-9118-92fbcf53809c.png軟件接口數(shù)據(jù)對齊設(shè)定,軟件由ADC基礎(chǔ)部分結(jié)構(gòu)體配置完成,其軟件實(shí)例如下:4a5abbc6-d117-11ee-9118-92fbcf53809c.png搶占數(shù)據(jù)偏移設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4a6e01b8-d117-11ee-9118-92fbcf53809c.png

轉(zhuǎn)換中止

功能介紹ADC具備轉(zhuǎn)換中止功能。在ADC轉(zhuǎn)換過程中,用戶可利用ADC_CTRL2的ADABRT使ADC停止轉(zhuǎn)換。停止轉(zhuǎn)換后,轉(zhuǎn)換順序回歸第一個通道,用戶即可重新編排通道順序,再次觸發(fā)ADC將從頭開始執(zhí)行新序列的轉(zhuǎn)換。圖7. 轉(zhuǎn)換中止時序4a8034c8-d117-11ee-9118-92fbcf53809c.png軟件接口轉(zhuǎn)換中止設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4a948b30-d117-11ee-9118-92fbcf53809c.png注意:轉(zhuǎn)換中止命令對普通及搶占通道轉(zhuǎn)換都有效;轉(zhuǎn)換中止功能類似ADC重上電,但是轉(zhuǎn)換中止不會使ADC掉電,不存在ADC上電喚醒時間;轉(zhuǎn)換中止的執(zhí)行需要時間,在執(zhí)行轉(zhuǎn)換中止命令后一定要等待ADABRT位被硬件清除后才可進(jìn)行后續(xù)的觸發(fā)轉(zhuǎn)換。

過采樣器

功能介紹ADC具備過采樣功能。一次過采樣是透過轉(zhuǎn)換多次相同通道,累加轉(zhuǎn)換數(shù)據(jù)后作平均實(shí)現(xiàn)的。

  • 由ADC_OVSP的OSRSEL選擇過采樣率,此位用來定義過采樣倍數(shù);
  • 由ADC_OVSP的OSSSEL選擇過采樣移位,此位用來定義平均系數(shù)。

若平均后數(shù)據(jù)大于16位,只取靠右16位數(shù)據(jù),放入16位數(shù)據(jù)寄存器。使用過采樣時,忽視數(shù)據(jù)對齊及搶占數(shù)據(jù)偏移的設(shè)定,數(shù)據(jù)一律靠右擺放。表2. 最大累加數(shù)據(jù)與過采樣倍數(shù)及位移系數(shù)關(guān)系4aa66cc4-d117-11ee-9118-92fbcf53809c.png

  • 普通通道過采樣被打斷后的恢復(fù)方式

普通通道過采樣中途被搶占通道轉(zhuǎn)換打斷后的恢復(fù)方式由OOSRSEL設(shè)定

  • OOSRSEL=0:接續(xù)模式。保留已累加的數(shù)據(jù),再次開始轉(zhuǎn)換時將從打斷處轉(zhuǎn)換;
  • OOSRSEL=1:重轉(zhuǎn)模式。累加的數(shù)據(jù)被清空,再次開始轉(zhuǎn)換時重新開始該通道的過采樣轉(zhuǎn)換。

圖8. 普通過采樣被打斷后的恢復(fù)方式4ac210b4-d117-11ee-9118-92fbcf53809c.png

  • 普通通道過采樣觸發(fā)模式

普通通道過采樣的觸發(fā)模式由OOSTREN設(shè)定

  • OOSTREN=0:關(guān)閉觸發(fā)模式。通道的所有過采樣轉(zhuǎn)換僅需一次觸發(fā);
  • OOSTREN=1:開啟觸發(fā)模式。通道的每個過采樣轉(zhuǎn)換均需進(jìn)行觸發(fā)。

此模式下,中途被搶占通道觸發(fā)打斷后,須重新觸發(fā)普通通道才會恢復(fù)轉(zhuǎn)換普通通道過采樣。圖9. 普通過采樣觸發(fā)模式4ae277b4-d117-11ee-9118-92fbcf53809c.png

  • 搶占通道過采樣

搶占過采樣可與普通過采樣同時使用,也可分別使用。搶占過采樣不影響到普通過采樣的各種模式。圖10. 搶占自動轉(zhuǎn)換下的過采樣模式4afb3164-d117-11ee-9118-92fbcf53809c.png軟件接口過采樣率、過采樣移位及過采樣使能設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b178346-d117-11ee-9118-92fbcf53809c.png普通通道過采樣被打斷后的恢復(fù)方式設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b24f472-d117-11ee-9118-92fbcf53809c.png普通通道過采樣觸發(fā)模式設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b3d6a34-d117-11ee-9118-92fbcf53809c.png電壓監(jiān)測1、功能介紹ADC具備電壓監(jiān)測功能。用以監(jiān)控輸入電壓與設(shè)定閾值的關(guān)系。當(dāng)轉(zhuǎn)換結(jié)果大于高邊界ADC_VMHB[11:0]寄存器或是小于低邊界ADC_VMLB[11:0]寄存器時,電壓監(jiān)測超出標(biāo)志VMOR會置起。透過VMSGEN選擇對單一通道或是所有通道監(jiān)測。對單一通道監(jiān)測的話,由VMCSEL配置通道。2、軟件接口監(jiān)測單一通道,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b4e46f6-d117-11ee-9118-92fbcf53809c.png監(jiān)測所有通道,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b6df00a-d117-11ee-9118-92fbcf53809c.png注意:電壓監(jiān)測一律以轉(zhuǎn)換的原始數(shù)據(jù)與12位邊界寄存器做比較,無視分辨率、搶占偏移量與數(shù)據(jù)對齊的設(shè)定;若使用過采樣器,則是以ADC_VMHB[15:0]與ADC_VMLB[15:0]完整的16位寄存器與過采樣數(shù)據(jù)作比較。

中斷及狀態(tài)事件

功能介紹

ADC含有多種中斷及狀態(tài)標(biāo)志。應(yīng)用需要結(jié)合這些標(biāo)志進(jìn)行程序設(shè)計(jì)。

  • ADC準(zhǔn)備就緒標(biāo)志(RDY)

指示ADC狀態(tài),只讀位,軟件不可清除,無產(chǎn)生中斷能力。

ADC上電完畢后會置位,只有RDY標(biāo)志置位后,才可進(jìn)行校準(zhǔn)及觸發(fā)轉(zhuǎn)換。

  • 普通通道轉(zhuǎn)換溢出標(biāo)志(OCCO)

指示ADC轉(zhuǎn)換數(shù)據(jù)溢出,標(biāo)志由軟件對其自身寫零清除,有產(chǎn)生中斷能力。

無獨(dú)立的溢出檢測使能位,在使能DMA傳輸或者EOCSFEN=1時有效,當(dāng)上一筆轉(zhuǎn)換數(shù)據(jù)未被讀走,下一筆轉(zhuǎn)換數(shù)據(jù)已產(chǎn)生時就會置位此標(biāo)志。標(biāo)志清除后的轉(zhuǎn)換恢復(fù)分如下兩種情況:此標(biāo)志置位后,當(dāng)前轉(zhuǎn)換停止,轉(zhuǎn)換序列不被清零,因此可不用復(fù)位ADC,直接清除標(biāo)志再次觸發(fā)轉(zhuǎn)換即可。

  • 普通通道轉(zhuǎn)換開始標(biāo)志(OCCS)

指示普通通道轉(zhuǎn)換開始,由軟件對其自身寫零清除,無產(chǎn)生中斷能力。

  • 搶占通道轉(zhuǎn)換開始標(biāo)志(PCCS)

指示搶占通道轉(zhuǎn)換開始,由軟件對其自身寫零清除,無產(chǎn)生中斷能力。

  • 搶占通道組轉(zhuǎn)換結(jié)束標(biāo)志(PCCE)

指示搶占通道組轉(zhuǎn)換完成,由軟件對其自身寫零清除,有產(chǎn)生中斷能力。

在搶占通道組轉(zhuǎn)換完成后置位,通常應(yīng)用使用此標(biāo)志來讀取搶占通道組的轉(zhuǎn)換數(shù)據(jù)。

  • 普通通道轉(zhuǎn)換結(jié)束標(biāo)志(OCCE)

指示普通通道轉(zhuǎn)換完成,由軟件對其自身寫零或讀ODT寄存器清除,有產(chǎn)生中斷能力。

在普通通道轉(zhuǎn)換完成后置位,應(yīng)用可使用此標(biāo)志來讀取普通通道的轉(zhuǎn)換數(shù)據(jù)(EOCSFEN=1)。

注意:DMA讀取轉(zhuǎn)換數(shù)據(jù)會同步清除OCCE標(biāo)志,因此在使用DMA時禁止再使用OCCE標(biāo)志。

  • 電壓監(jiān)測超出范圍標(biāo)志(VMOR)

指示通道電壓超出設(shè)定閾值,由軟件對其自身寫零清除,有產(chǎn)生中斷能力。

在ADC的通道轉(zhuǎn)換數(shù)據(jù)超過設(shè)定閾值后置位,通常應(yīng)用使用此標(biāo)志來監(jiān)控通道電壓。

軟件接口中斷使能設(shè)定,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b86d188-d117-11ee-9118-92fbcf53809c.png標(biāo)志狀態(tài)獲取,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4b90e150-d117-11ee-9118-92fbcf53809c.png標(biāo)志狀態(tài)清除,軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4ba6e860-d117-11ee-9118-92fbcf53809c.png多種轉(zhuǎn)換數(shù)據(jù)的獲取方式功能介紹

ADC具備多種轉(zhuǎn)換數(shù)據(jù)的獲取方式。不同通道類型、不同組合模式可支持的數(shù)據(jù)獲取方式不同。

  • CPU讀取搶占通道數(shù)據(jù)

搶占通道不具備DMA能力,因此不管什么組合模式,搶占通道數(shù)據(jù)均由CPU讀取搶占數(shù)據(jù)寄存器x(ADC_PDTx)獲得。

  • CPU讀取普通通道數(shù)據(jù)

軟件設(shè)置ADC_CTRL2的EOCSFEN位讓每次普通數(shù)據(jù)寄存器更新時置位OCCE標(biāo)志,軟件通過OCCE標(biāo)志讀取轉(zhuǎn)換數(shù)據(jù)。

  • DMA讀取普通通道數(shù)據(jù)

普通通道數(shù)據(jù)存儲于ADC自己獨(dú)立的數(shù)據(jù)寄存器中。軟件設(shè)置OCDMAEN及OCDRCEN位讓每次普通數(shù)據(jù)寄存器更新時產(chǎn)生DMA請求,DMA在每次收到DMA請求時讀取轉(zhuǎn)換數(shù)據(jù)。軟件接口CPU讀取搶占通道數(shù)據(jù),軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4bb13fea-d117-11ee-9118-92fbcf53809c.pngCPU讀取普通通道數(shù)據(jù),軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:

4bc265c2-d117-11ee-9118-92fbcf53809c.png

DMA讀取普通通道數(shù)據(jù),軟件由單獨(dú)的函數(shù)接口實(shí)現(xiàn),其軟件實(shí)例如下:4bcc5082-d117-11ee-9118-92fbcf53809c.png注意:使用CPU讀取普通轉(zhuǎn)換數(shù)據(jù)時,為避免溢出,通道采樣周期需要足夠大。

ADC配置解析

以下對ADC的配置流程及數(shù)據(jù)獲取方法進(jìn)行說明。

ADC配置流程

ADC的配置一般包括如下內(nèi)容

  • 外部觸發(fā)源配置ADC外部觸發(fā)源有TMR或EXINT,其配置無特殊性,參考普通的TMR或EXINT配置即可。注意:此處僅是觸發(fā)源的配置,觸發(fā)源的使能需在ADC全部配置完畢后才可進(jìn)行。
  • DMA配置使能ADC普通通道轉(zhuǎn)換數(shù)據(jù)可通過DMA傳輸,若應(yīng)用需要DMA傳輸時,需提前進(jìn)行DMA的初始化配置,其配置無特殊性,參考普通的DMA配置即可。
  • 開啟ADC數(shù)字時鐘開啟ADC數(shù)字時鐘,允許進(jìn)行相關(guān)功能配置。
  • ADC公共部分結(jié)構(gòu)體配置 包括ADC分頻、內(nèi)部溫度傳感器及Vintrv相關(guān)配置。ADC分頻設(shè)定ADC模擬部分的時鐘,其由HCLK或PLLCLK分頻而來,由PLLCLK_TO_ADCbit選擇HCLK或PLLCLK,可設(shè)定2~17中的任意一種分頻。DMA請求接續(xù)使能設(shè)定在傳輸完DMA設(shè)定個數(shù)數(shù)據(jù)后,普通通道轉(zhuǎn)換完畢是否再產(chǎn)生DMA請求。內(nèi)部溫度傳感器及Vintrv使能內(nèi)部溫度傳感器及內(nèi)部參考電壓,其分別連接到ADC1的CH16和CH17。
  • ADC基礎(chǔ)部分結(jié)構(gòu)體配置包括序列模式、反復(fù)模式、數(shù)據(jù)對齊、普通轉(zhuǎn)換序列長度。序列模式不論普通還是搶占組,只要配置有多個通道,就需要開啟序列模式。反復(fù)模式若應(yīng)用需要周期性的觸發(fā)轉(zhuǎn)換時,就需要關(guān)閉反復(fù)模式,不然周期性的觸發(fā)將變得無效。當(dāng)應(yīng)用不想周期性的觸發(fā),而期望單次觸發(fā)后就不停的轉(zhuǎn)換設(shè)定通道組時需開啟反復(fù)模式。數(shù)據(jù)對齊設(shè)定轉(zhuǎn)換數(shù)據(jù)靠右或是靠左對齊放置于數(shù)據(jù)寄存器。普通轉(zhuǎn)換序列長度可設(shè)定1~32中的任何一個長度,指示單個普通序列包含的通道個數(shù),需與實(shí)際普通通道序列個數(shù)一致。
  • 普通通道配置包含通道配置、觸發(fā)配置、數(shù)據(jù)傳輸方式。通道配置由轉(zhuǎn)換順序、通道值、采樣周期的設(shè)定組成。其中不同順序可配置相同通道值。觸發(fā)配置由觸發(fā)源和觸發(fā)邊沿檢測的設(shè)定組成。若使用軟件觸發(fā)時,需要禁止觸發(fā)邊沿檢測。數(shù)據(jù)傳輸方式可設(shè)定CPU或DMA傳輸轉(zhuǎn)換數(shù)據(jù)。
  • 搶占通道配置包含通道個數(shù)、通道配置、觸發(fā)配置。通道個數(shù)可設(shè)定1~4中的任何一個長度,指示單個搶占序列包含的通道個數(shù),需與實(shí)際搶占通道序列個數(shù)一致。通道配置由轉(zhuǎn)換順序、通道值、采樣周期的設(shè)定組成。其中不同順序可配置相同通道值。觸發(fā)配置由觸發(fā)源和觸發(fā)邊沿檢測的設(shè)定組成。若使用軟件觸發(fā)時,需要禁止觸發(fā)邊沿檢測。
  • 特殊模式配置(非必需)分割模式包括每次觸發(fā)轉(zhuǎn)換的普通通道個數(shù)、普通通道分割模式使能、搶占通道分割模式使能。搶占自動轉(zhuǎn)換模式用于設(shè)定普通組轉(zhuǎn)換結(jié)束后的搶占通道組自動轉(zhuǎn)換使能。過采樣包括過采樣率、過采樣移位、普通過采樣觸發(fā)模式使能、普通過采樣重轉(zhuǎn)模式選擇、普通及搶占過采樣使能的設(shè)定。
  • 中斷配置

使能對應(yīng)中斷,包括溢出中斷、普通通道轉(zhuǎn)換結(jié)束中斷、搶占通道組轉(zhuǎn)換結(jié)束中斷、電壓檢測超過范圍中斷中的一個或多個。

  • ADC上電使能ADC讓ADC上電,由于上電需要穩(wěn)定時間,因此ADC上電后需等待ADC的RDY標(biāo)志處于置位后才可進(jìn)行后續(xù)動作。
  • ADC校準(zhǔn)為保障ADC轉(zhuǎn)換數(shù)據(jù)準(zhǔn)確,在ADC上電后需進(jìn)行校準(zhǔn)。其包含:A/D初始化校準(zhǔn)、等待初始化校準(zhǔn)完成、A/D校準(zhǔn)、等待校準(zhǔn)完成。
  • ADC分辨率調(diào)整在ADC校準(zhǔn)完畢后,即可進(jìn)行分辨率切換。切換分辨率后,軟件需要等待ADC的RDY標(biāo)志處于置位后才可進(jìn)行后續(xù)動作。

至此,ADC的初始化配置就算全部完成。隨后,可通過軟件或使能硬件觸發(fā)源進(jìn)行觸發(fā)轉(zhuǎn)換。

ADC數(shù)據(jù)獲取方法

ADC支持多種數(shù)據(jù)獲取方法,通常可概括為如下幾種

  • CPU獲取搶占通道數(shù)據(jù)搶占通道數(shù)據(jù)不具備DMA能力,只能透過CPU獲取。推薦使用中斷獲取,方法如下1) 搶占通道組轉(zhuǎn)換結(jié)束中斷使能;2) 搶占通道組轉(zhuǎn)換結(jié)束中斷函數(shù)內(nèi)將轉(zhuǎn)換數(shù)據(jù)緩存進(jìn)數(shù)組內(nèi);3) 其他應(yīng)用邏輯內(nèi)透過數(shù)組內(nèi)的數(shù)據(jù)進(jìn)行數(shù)據(jù)的后續(xù)算法處理。
  • CPU讀取普通通道數(shù)據(jù)423額外支持通過CPU讀取普通通道數(shù)據(jù)。為保障數(shù)據(jù)讀取的實(shí)時性,同樣推薦使用中斷獲取,方法如下1) 軟件設(shè)置ADC_CTRL2的EOCSFEN位讓每次數(shù)據(jù)寄存器更新時置位OCCE標(biāo)志;2) 普通通道組轉(zhuǎn)換結(jié)束中斷使能;3) 普通通道組轉(zhuǎn)換結(jié)束中斷函數(shù)內(nèi)將轉(zhuǎn)換數(shù)據(jù)緩存進(jìn)數(shù)組內(nèi);4) 其他應(yīng)用邏輯內(nèi)透過數(shù)組內(nèi)的數(shù)據(jù)進(jìn)行數(shù)據(jù)的后續(xù)算法處理。
  • DMA讀取普通通道數(shù)據(jù)普通通道數(shù)據(jù)具備DMA能力。為避免軟件耗時,可直接采用DMA讀取轉(zhuǎn)換數(shù)據(jù),方法如下1) 初始化并使能DMA;2) 使能ADC的DMA模式;3) 在DMA傳輸完成中斷函數(shù)內(nèi)獲取DMA的buffer數(shù)據(jù);4) 其他應(yīng)用邏輯內(nèi)透過buffer數(shù)據(jù)進(jìn)行數(shù)據(jù)的后續(xù)算法處理。

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

    關(guān)注

    99

    文章

    6698

    瀏覽量

    549159
  • 雅特力
    +關(guān)注

    關(guān)注

    0

    文章

    179

    瀏覽量

    8571
  • AT32
    +關(guān)注

    關(guān)注

    1

    文章

    121

    瀏覽量

    2705
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Quartus工具使用指南

    電子發(fā)燒友網(wǎng)站提供《Quartus工具使用指南.pdf》資料免費(fèi)下載
    發(fā)表于 07-15 16:34 ?0次下載

    AT32F402/F405入門使用指南

    搭建AT32開發(fā)環(huán)境一、調(diào)試工具及開發(fā)板目前AT32F402/AT32F405開發(fā)板都自帶AT-Link-EZ調(diào)試工具,AT-Link-EZ如下圖左邊紅框所示,它也可拆開后單獨(dú)搭配其他電路板使用,支持IDE在線調(diào)試、在線燒錄、USB轉(zhuǎn)串口等功能。圖1.AT-START
    的頭像 發(fā)表于 03-28 18:59 ?735次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>402/<b class='flag-5'>F</b>405入門<b class='flag-5'>使用指南</b>

    力推出AT32F455/F456/F457系列微控制器,驅(qū)動工業(yè)物聯(lián)網(wǎng)創(chuàng)新發(fā)展

    隨著工業(yè)物聯(lián)網(wǎng)(IIoT)的快速發(fā)展,對微控制器的性能與智能化要求不斷提升,促使其在計(jì)算能力、功耗優(yōu)化和連接性等方面持續(xù)創(chuàng)新,從而加速推動智能制造、設(shè)備互聯(lián)與數(shù)據(jù)驅(qū)動決策的升級。近期,科技推出
    的頭像 發(fā)表于 03-28 18:59 ?545次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b>力推出AT32<b class='flag-5'>F</b>455/<b class='flag-5'>F</b>456/<b class='flag-5'>F</b>457系列微控制器,驅(qū)動工業(yè)物聯(lián)網(wǎng)創(chuàng)新發(fā)展

    喜訊!榮獲21ic“技術(shù)先鋒成就獎”

    近日,21ic電子網(wǎng)2024年度獎項(xiàng)評選結(jié)果正式揭曉!這些獎項(xiàng)旨在表彰在芯片研發(fā)、市場拓展、生態(tài)協(xié)作等領(lǐng)域表現(xiàn)卓越的企業(yè)與團(tuán)隊(duì)。科技憑借深厚的技術(shù)實(shí)力與銳意進(jìn)取的創(chuàng)新精神,榮獲21ic電子網(wǎng)
    的頭像 發(fā)表于 03-07 18:46 ?458次閱讀
    喜訊!<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>榮獲21ic“技術(shù)先鋒成就獎”

    基于AT32F421的遙控攀爬車電調(diào)應(yīng)用方案

    目的,而以征服崎嶇路面和各種地形障礙為目標(biāo),通常需要應(yīng)對陡峭坡道、松軟沙地以及崎嶇巖石等復(fù)雜路面。基于AT32F421設(shè)計(jì)的搖控攀爬車電調(diào),自適應(yīng)調(diào)節(jié)扭矩輸出
    的頭像 發(fā)表于 01-20 18:36 ?481次閱讀
    基于<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>421的遙控攀爬車電調(diào)應(yīng)用方案

    AT32F423 PWC應(yīng)用筆記

    電子發(fā)燒友網(wǎng)站提供《AT32F423 PWC應(yīng)用筆記.pdf》資料免費(fèi)下載
    發(fā)表于 01-15 15:30 ?0次下載
    <b class='flag-5'>AT32F423</b> PWC應(yīng)用筆記

    AT32F402/F405時鐘配置

    電子發(fā)燒友網(wǎng)站提供《AT32F402/F405時鐘配置.pdf》資料免費(fèi)下載
    發(fā)表于 01-15 15:24 ?0次下載
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>402/<b class='flag-5'>F</b>405時鐘配置

    AT32F402/F405 ADC使用指南

    ADC簡介ADC控制器的功能極其強(qiáng)大。其包含但不限于以下內(nèi)容時鐘及狀態(tài),由數(shù)字和模擬時鐘兩個部分組成支持分辨率為12位的轉(zhuǎn)換,采樣周期支持廣范圍的配置自校準(zhǔn),自帶校準(zhǔn)功能以糾正數(shù)據(jù)偏移基本模式,支持
    的頭像 發(fā)表于 01-10 17:27 ?1011次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>402/<b class='flag-5'>F</b>405 <b class='flag-5'>ADC</b><b class='flag-5'>使用指南</b>

    TPS2556EVM-423和TPS2557EVM-423用戶指南

    電子發(fā)燒友網(wǎng)站提供《TPS2556EVM-423和TPS2557EVM-423用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-19 16:49 ?0次下載
    TPS2556EVM-<b class='flag-5'>423</b>和TPS2557EVM-<b class='flag-5'>423</b>用戶<b class='flag-5'>指南</b>

    喜訊!科技榮膺“2024年度電機(jī)控制十大主控芯片”

    11月21日,在電子發(fā)燒友舉辦的2024電機(jī)控制先進(jìn)技術(shù)研討會暨電機(jī)控制技術(shù)市場表現(xiàn)獎頒獎典禮上,科技AT32F415憑借高效的性能和在電機(jī)控制市場的優(yōu)異表現(xiàn),榮獲“2024年度
    的頭像 發(fā)表于 11-23 01:04 ?838次閱讀
    喜訊!<b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>科技榮膺“2024年度電機(jī)控制十大主控芯片”

    發(fā)布高性能電機(jī)控制專用MCU

    近日,科技正式推出了其首款高性能電機(jī)控制專用MCU——AT32M412/M416。這款MCU專為出行工具、家電及工業(yè)控制等應(yīng)用而設(shè)計(jì),旨在滿足市場對于高效、精準(zhǔn)電機(jī)控制解決方案的迫切需求。
    的頭像 發(fā)表于 11-01 18:11 ?1326次閱讀

    代理 AT32F423VCT7 LQFP100 可替代ST/GD 搭載32位ARM?Cortex?-M4

    科技AT32F423系列超值型ARM?Cortex?-M4F微控制器,高達(dá)150MHz的CPU運(yùn)算速度與內(nèi)建的單精度浮點(diǎn)運(yùn)算單元(FP
    的頭像 發(fā)表于 09-19 10:28 ?924次閱讀

    AT32講堂088 | AT32F402/F405時鐘配置

    介紹如何結(jié)合提供的V2.x.x的板級支持包(BSP)來配置時鐘。以下介紹時鐘配置的方法主要分兩種:1、以手動編寫代碼調(diào)用BSP中提供的驅(qū)動函數(shù)接口來進(jìn)行時鐘配
    的頭像 發(fā)表于 09-15 08:08 ?1015次閱讀
    AT32講堂088 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32<b class='flag-5'>F</b>402/<b class='flag-5'>F</b>405時鐘配置

    AT32講堂087 | AT32 IDE快速入門指南

    新建項(xiàng)目新項(xiàng)目向?qū)T32ID提供支持MCU的C語言項(xiàng)目模板,方便用戶快速創(chuàng)建項(xiàng)目。菜單欄【File】>【New】>【CProject】。新建項(xiàng)目向?qū)У膶υ捒驅(qū)⒊霈F(xiàn)。在對
    的頭像 發(fā)表于 09-15 08:08 ?1387次閱讀
    AT32講堂087 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32 IDE快速入門<b class='flag-5'>指南</b>

    STM32CUBEMX(7)--移植AT32F403AVGT(兼容STM32F103VGT6),DAC輸出電壓

    概述 本篇文章主要介紹如何使用STM32CubeMX移植到AT32F403AVGT7,并通過DAC輸出電壓,在芯片中有2個12位的DAC口可以供選擇。 硬件準(zhǔn)備 首先需要準(zhǔn)備一
    發(fā)表于 09-06 16:40
    主站蜘蛛池模板: 七月色婷婷 | 一个色中文字幕 | 最色成人网 | 唐人呦一呦xxxx视频 | 欧美黄色三级 | 久操免费在线视频 | 成人午夜久久 | 欧美一级片免费在线观看 | 伊人网视频 | 全部免费特黄特色大片视频 | 99久久99这里只有免费费精品 | 国产理论在线观看 | 日韩美香港a一级毛片 | 国产成人a毛片 | 中文字幕在线播放第一页 | 中文字幕一区二区三区免费视频 | 亚洲国产精品国产自在在线 | tube 69sex 第一次 | 久久久综合久久 | 亚洲久优优色优在线播放 | 五月丁香 | 欧美日韩色综合网站 | 亚洲伊人色一综合网 | 在线免费色视频 | 国产精品你懂的在线播放 | 亚洲看片 | 最新理论三级中文在线观看 | 亚洲色啦啦狠狠网站 | 天天草夜夜爽 | 国产精品国产三级国产普通话对白 | 亚洲男人的天堂在线观看 | 欧美成人xxxx | 亚洲婷婷六月 | 激情婷婷综合 | 乱j伦小说在线阅读 | 国产高清一区二区三区四区 | 日本电影在线观看黄 | 91成人免费福利网站在线 | 国产成人精品日本亚洲语音1 | 黄色视屏日本 | 欧美日韩精品乱国产 |