最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

STM32CUBEMX開(kāi)發(fā)GD32F303(11)----ADC在DMA模式下掃描多個(gè)通道

2022-12-14 12:41 作者:記帖  | 我要投稿

概述

本章STM32CUBEMX配置STM32F103,并且在GD32F303中進(jìn)行開(kāi)發(fā),同時(shí)通過(guò)GD32303C_START開(kāi)發(fā)板內(nèi)進(jìn)行驗(yàn)證。 需要GD樣片的可以加Q_QUN申請(qǐng):615061293。

本章主要配置,雙ADC輪詢(xún)模式掃描多個(gè)通道,通過(guò)串口進(jìn)行打印。 查閱手冊(cè)可以得知,PA9、PA10為串口0的輸出和輸入口。?

在這里插入圖片描述

視頻教學(xué)

https://www.bilibili.com/video/BV1hG41187Ah/


csdn課程

課程更加詳細(xì)。?https://download.csdn.net/course/detail/37152

樣品申請(qǐng)

https://www.wjx.top/vm/mB2IKus.aspx

ADC通道配置

ADC1IN0(PA0)IN1(PA3)IN4(PA4)

生成例程

這里準(zhǔn)備了GD32303C_START開(kāi)發(fā)板進(jìn)行驗(yàn)證。?

在這里插入圖片描述

STM32CUBEMX配置

在這里插入圖片描述

勾選中斷。?

在這里插入圖片描述

ADC1配置。

在這里插入圖片描述
  • ADCs_Common_Settings:

    • Mode:Independent mod 獨(dú)立 ADC 模式,當(dāng)使用一個(gè) ADC 時(shí)是獨(dú)立模式,使用兩個(gè) ADC 時(shí)是雙模式,在雙模式下還有很多細(xì)分模式可選,具體配置 ADC_CR1:DUALMOD 位。

  • ADC_Settings:

    • Disabled 禁止間斷模式。這個(gè)在需要考慮功耗問(wèn)題的產(chǎn)品中很有必要,也就是在某個(gè)事件觸發(fā)下,開(kāi)啟轉(zhuǎn)換。

    • Enabled 開(kāi)啟間斷模式。

    • Disabled 單次轉(zhuǎn)換。轉(zhuǎn)換一次后停止需要手動(dòng)控制才重新啟動(dòng)轉(zhuǎn)換。

    • Enabled 自動(dòng)連續(xù)轉(zhuǎn)換。

    • Disabled 禁止掃描模式。如果是單通道 AD 轉(zhuǎn)換使用 DISABLE。

    • Enabled 開(kāi)啟掃描模式。如果是多通道 AD 轉(zhuǎn)換使用 ENABLE。

    • Right alignment 轉(zhuǎn)換結(jié)果數(shù)據(jù)右對(duì)齊,一般我們選擇右對(duì)齊模式。

    • Left alignment 轉(zhuǎn)換結(jié)果數(shù)據(jù)左對(duì)齊。

    • Data Alignment:

    • Scan Conversion Mode:

    • Continuous Conversion Mode:

    • DiscontinuousConvMode:

  • ADC_Regular_ConversionMode:

    • Enable Regular Conversions 是否使能規(guī)則轉(zhuǎn)換。

    • Number Of Conversion ADC轉(zhuǎn)換通道數(shù)目,有幾個(gè)寫(xiě)幾個(gè)就行。

    • External Trigger Conversion Source 外部觸發(fā)選擇。這個(gè)有多個(gè)選擇,一般采用軟件觸發(fā)方式。

  • Rank:

    • Channel ADC轉(zhuǎn)換通道

    • Sampling Time 采樣周期選擇,采樣周期越短,ADC 轉(zhuǎn)換數(shù)據(jù)輸出周期就越短但數(shù)據(jù)精度也越低,采樣周期越長(zhǎng),ADC 轉(zhuǎn)換數(shù)據(jù)輸出周期就越長(zhǎng)同時(shí)數(shù)據(jù)精度越高。

  • ADC_Injected_ConversionMode:

    • Enable Injected Conversions 是否使能注入轉(zhuǎn)換。注入通道只有在規(guī)則通道存在時(shí)才會(huì)出現(xiàn)。

  • WatchDog:

    • Enable Analog WatchDog Mode 是否使能模擬看門(mén)狗中斷。當(dāng)被 ADC 轉(zhuǎn)換的模擬電壓低于低閾值或者高于高閾值時(shí),就會(huì)產(chǎn)生中斷。

DMA開(kāi)啟。?

在這里插入圖片描述

生成獨(dú)立的文件。?

在這里插入圖片描述

keil配置

microlib 進(jìn)行了高度優(yōu)化以使代碼變得很小。 它的功能比缺省 C 庫(kù)少,并且根本不具備某些 ISO C 特性。 某些庫(kù)函數(shù)的運(yùn)行速度也比較慢,如果要使用printf(),必須開(kāi)啟。?

在這里插入圖片描述

代碼

在main.c中,添加頭文件,若不添加會(huì)出現(xiàn) identifier "FILE" is undefined報(bào)錯(cuò)。


函數(shù)聲明和串口重定向:


定義變量,存放采集到的數(shù)據(jù)。


使能ADC傳輸。


主循環(huán)。


ADC回調(diào)函數(shù)。 DMA傳輸?shù)臅r(shí)候如果讀取內(nèi)存片段,會(huì)有仲裁器的問(wèn)題,加了一句關(guān)閉DMA的語(yǔ)句HAL_ADC_Stop_DMA(&hadc1);


最后

以上的代碼會(huì)在Q_qun里分享。Q_qun:615061293。 或者關(guān)注『記帖』,持續(xù)更新文章和學(xué)習(xí)資料!


測(cè)試結(jié)果

輸入固定電壓進(jìn)行測(cè)試。


Normal下測(cè)試結(jié)果如下。?

在這里插入圖片描述

若不試用關(guān)閉DMA的語(yǔ)句HAL_ADC_Stop_DMA(&hadc1); 會(huì)造成數(shù)據(jù)錯(cuò)亂。?

在這里插入圖片描述

Circular可以下可以一直進(jìn)行采集,不需要HAL_ADC_Stop_DMA(&hadc1)都可。

在這里插入圖片描述


STM32CUBEMX開(kāi)發(fā)GD32F303(11)----ADC在DMA模式下掃描多個(gè)通道的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
通许县| 康马县| 汉中市| 柘城县| 金塔县| 那坡县| 台山市| 宁国市| 阳信县| 青冈县| 当涂县| 永康市| 凌源市| 通化县| 南和县| 彰化市| 闽清县| 灵石县| 吉木萨尔县| 乌拉特中旗| 汝阳县| 衡山县| 南涧| 乐清市| 衡水市| 安新县| 仁布县| 武宁县| 平度市| 津南区| 疏勒县| 富顺县| 香港| 崇文区| 洛浦县| 吉木萨尔县| 临清市| 泽州县| 卓资县| 肃宁县| 原平市|