




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第7章STM32模擬數字轉換模塊《嵌入式技術入門與實戰(基于STM32)》目錄認識STM32的ADC任務1STM32ADC應用實戰1認識STM32的ADC第7章STM32模擬數字轉換模塊PartOneADC簡介ADC(AnalogDigitalConverter)-主要完成模擬數字轉換功能模擬量只有轉換成數字量才能被計算機采集,分析和計算。STM32的ADCSTM32F4xx系列芯片上有3個ADC模塊,最高分辨率為12位,是逐次趨近型模數轉換器??膳渲?2位、10位、8位或6位分辨率。具有多達19個復用通道,可測量來自16個外部源、內部溫度、內部參考電壓和備用電壓VBAT通道的信號。多通道輸入時,可以劃分為規則通道和注入通道,規則通道轉換期間可產生DMA請求。各通道的A/D轉換支持單次轉換、連續轉換,多個通道輸入時,支持掃描轉換模式??瑟毩⒃O置各通道采樣時間。ADC內部結構-2ADC內部結構-2ADC的引腳單個ADC引腳共有22個名稱信號類型備注VREF+正模擬參考電壓輸入ADC正參考電壓,1.8V≤VREF+≤VDDAVDDA模擬電源輸入模擬電源電壓等于VDD,全速運行時,2.4V≤VDDA≤VDD(3.6V)低速運行時,1.8≤VDDA≤VDD(3.6V)VREF-負模擬參考電壓輸入ADC低/負參考電壓,VREF-=VSSAVSSA模擬電源接地輸入模擬電源接地電壓等于VssADCx_IN[15:0]模擬輸入信號16個模擬輸入通道EXTI_15外部事件啟動觸發輸入EXTI線15,觸發注入組的轉換EXTI_11外部事件啟動觸發輸入EXTI線11,觸發規則組的轉換ADC開關控制可通過將ADC_CR2寄存器中的ADON位置1來為ADC供電。首次將ADON位置1時,會將ADC從掉電模式中喚醒。SWSTART(規則通道)或JSWSTART(注入通道)位置1時,啟動AD轉換??赏ㄟ^將ADON位清零來停止轉換并使ADC進入掉電模式。在此模式下,ADC幾乎不耗電(只有幾μA)。ADC輸入通道ADC共有19個復用通道,其中有16個外部源和3個內部通道。16個外部輸入通道的輸入源對應于ADCx_IN[15:0]外部模擬輸入引腳輸入,引腳通過復用方式映射到GPIO端口,其復用關系可以查看STM32F407xx數據手冊上的引腳定義。ADC通道選擇STM32特別地加入了多種成組轉換的模式,模擬轉換器中將它們分成兩組:規則通道組和注入通道組。在執行規則通道組掃描轉換時,如有例外處理則可啟用注入通道組的轉換。ADC轉換方式ADC單個通道的轉換支持單次轉換和連續轉換,多通道有掃描模式和不連續采樣模式在單次轉換模式下,ADC只執行一次轉換。完成所選通道的轉換之后,如果轉換了規則通道,轉換數據存儲在16位ADC_DR寄存器中,如果轉換了注入通道,轉換數據存儲在16位ADC_JDR1寄存器中,如果開啟中斷,則產生中斷,然后ADC停止。本任務中我們將使用單次轉換模式。ADC的數據對齊ADC_CR2寄存器中的ALIGN位用于選擇轉換后存儲的數據的對齊方式。可選擇左對齊和右對齊兩種方式。(a)12位數據的右對齊(b)12位數據的左對齊ADC轉換時間STM32F407xx系列芯片的ADC模塊掛接在APB2總線下,其時鐘是對APB2時鐘頻率進行預分頻得到,預分頻值由ADC通用控制寄存器ADC_CCR中的ADCPRE位決定,取值有:00:PCLK22分頻01:PCLK24分頻10:PCLK26分頻11:PCLK28分頻例如,在后面的任務中,APB2設置為最大時鐘頻率84MHz,分頻值為4分頻,因此,ADC的時鐘頻率為21MHz。ADC會在數個ADC時鐘周期內對輸入電壓進行采樣,可使用ADC采樣時間寄存器ADC_SMPR1和ADC_SMPR2中的SMP[2:0]位修改周期數(取值3~480)。每個通道均可以使用不同的采樣時間進行采樣。而不同數據位數的轉換所需的時間為:N位數據*ADC時鐘周期,總轉換時間的計算公式如下:
Tconv=采樣時間+N個周期例如:在本章任務1中,APB2設置為最大時鐘頻率84MHz,ADC時鐘分頻值為4分頻,因此,ADC的時鐘頻率為21MHz。設置480個周期的采樣時間,轉換數據設置為12位,那么總的轉換時間為:Tconv=(480+12)/21000000=23.43us。2任務1STM32ADC應用實戰第7章STM32模擬數字轉換模塊PartTwo案例引入ADC實驗使用STM32F407ZGT6芯片的ADC模擬輸入通道讀取實驗板提供的模擬電壓進行轉換,并顯示在串口調試助手上。任務分析本任務硬件設計上需要確定板級引腳和ADC通道關系,ADC參考電源的連接,搭建輸入電壓環境,本任務中ADC使用實驗板引出的PA5引腳可對應ADC1_IN5的模擬輸入,軟件設計的主要內容是ACD初始化配置、ADC轉換控制以及ADC結果處理的實現。
1、硬件設計與實現ADC供電設計:本任務中,參考電壓設置為3.3VADC的模擬電壓輸入設計我們使用ADC1,選用通道5,其對應的模擬輸入引腳為PA5ADC的模擬電壓輸入設計用一跟杜邦線,一頭插在多功能端口P12的2號STMADC插針上,另外一頭就接要測試的電壓點(不大于3.3V)。
2、軟件設計與實現ADC常用HAL庫函數:HAL_ADC_Init()功能:完成某個ADC初始化配置,入參為ADC_HandleTypeDef結構體類型的ADC外設對象指針,返回HAL狀態值。該函數一般由開發工具自動生成,函數內將調用MCU底層初始化函數HAL_ADC_MspInit()完成引腳、時鐘和中斷的設置。函數原型:HAL_StatusTypeDefHAL_ADC_Init(ADC_HandleTypeDef*hadc)HAL_ADC_ConfigChannel()功能:配置某個ADC通道參數,返回HAL狀態值。該函數一般由開發工具自動生成。函數原型:HAL_StatusTypeDefHAL_ADC_ConfigChannel(ADC_HandleTypeDef*hadc,ADC_ChannelConfTypeDef*sConfig)
HAL_ADC_Start()功能:使能ADC,軟件方式啟動規則通道轉換,返回HAL狀態值。一般和HAL_ADC_PollForConversion()配合使用,啟動后,通過HAL_ADC_PollForConversion()查詢轉換結果。去使能ADC使用函數HAL_ADC_Stop()。HAL_ADC_PollForConversion()功能:輪詢方式等待ADC規則通道轉換完成,返回HAL狀態值。可設置超時退出(第二個入參),即超過設定時間未檢測到轉換完成信號EOC,退出等待。函數原型:HAL_StatusTypeDefHAL_ADC_PollForConversion(ADC_HandleTypeDef*hadc,uint32_tTimeout)HAL_ADC_GetValue功能:從ADC規則數據寄存器(ADC_DR)獲取ADC規則通道轉換結果,返回值為32位整形數字。函數原
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司游艇團建活動方案
- 高等教育評估師資格考試的相關試題及答案
- 2025年虛擬現實技術工程師考試試卷及答案
- 2025年現代農業技術推廣考試試卷及答案
- 2025年心理咨詢師職業資格考試試卷及答案
- 2025年食品安全管理體系考試試題及答案
- 2025年生物醫學工程技術考試卷及答案
- 2025年數據科學與大數據技術專業考試題及答案
- 2025年名師課堂與教學改革實踐能力考核試題及答案
- 2025年護理心理學考試題及答案
- 智能制造變革者
- 《輪胎制造工藝簡介》課件
- 危險廢物管理培訓材料
- 加工中心操機編程培訓
- 2024年玉溪市事業單位招考及易考易錯模擬試題(共500題)試卷后附參考答案
- GB/T 44679-2024叉車禁用與報廢技術規范
- 江西省九江市2023-2024學年高二下學期7月期末考試物理試題(解析版)
- 肺結核防治知識講座課件
- 汽車維修行業的法規和政策
- 科學種植活動促進小學生實踐能力提升的探究
- 變電站-配電房掛軌巡檢機器人技術方案
評論
0/150
提交評論