哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

使用STM32單片機(jī)進(jìn)行ADC間斷轉(zhuǎn)換模式的應(yīng)用實(shí)例說(shuō)明

茶話MCU ? 來(lái)源:未知 ? 2019-08-03 11:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

有時(shí)我們可能需要對(duì)多個(gè)ADC通道進(jìn)行分組轉(zhuǎn)換,組與組之間希望有可調(diào)的時(shí)間間隔。比方像下面圖示的情形。先轉(zhuǎn)換頭2個(gè)通道,再轉(zhuǎn)換中間2個(gè)通道,之后轉(zhuǎn)換最后的2個(gè)通道。

如果我們采樣查詢或中斷方式,每轉(zhuǎn)換完2個(gè)通道后,然后做后續(xù)通道的切換配置再啟動(dòng)AD模塊也是可以的。至于那個(gè)時(shí)間間隔我們往往會(huì)使用定時(shí)器來(lái)協(xié)助。顯然,這樣做有時(shí)會(huì)顯得有點(diǎn)繁瑣。

像上面這種情況,我們還可以考慮使用ADC的間斷轉(zhuǎn)換模式。即將一個(gè)ADC轉(zhuǎn)換通道序列分成幾組,每來(lái)一次ADC轉(zhuǎn)換觸發(fā)事件,就轉(zhuǎn)換一組AD通道,這樣依次進(jìn)行直至整個(gè)序列轉(zhuǎn)換完畢。

比方,我們用到某ADC模塊的CH1/CH2/CH3/CH4/CH5五個(gè)通道,將它們分成3組,使用定時(shí)器觸發(fā)ADC。第一次觸發(fā)時(shí),進(jìn)行CH1/CH2兩個(gè)通道的AD轉(zhuǎn)換,第二次觸發(fā)時(shí)進(jìn)行CH3/CH4兩個(gè)通道的AD轉(zhuǎn)換,第三次觸發(fā)時(shí),完成CH5通道的AD轉(zhuǎn)換。 第四次觸發(fā)時(shí)進(jìn)行跟第一次觸發(fā)一樣的轉(zhuǎn)換,這樣循環(huán)下去。

不妨基于上面的描述舉一個(gè)實(shí)際的例子演示一下。使用STM32F411-Discovery開(kāi)發(fā)板來(lái)做調(diào)試驗(yàn)證。用到ADC1模塊的從CH1開(kāi)始的連續(xù)5個(gè)AD通道,被分成3組。如下圖所示。

我們使用定時(shí)器更新事件觸發(fā)ADC轉(zhuǎn)換,第1組與第2組轉(zhuǎn)換之間的間隔、第2組與第3組轉(zhuǎn)換的間隔通過(guò)適時(shí)調(diào)整定時(shí)器的計(jì)時(shí)長(zhǎng)短來(lái)控制。

我們使用定時(shí)器更新事件觸發(fā)DMA,通過(guò)DMA修改ARR的值來(lái)調(diào)節(jié)相鄰兩組轉(zhuǎn)換之間的時(shí)間間隔。另外,ADC的轉(zhuǎn)換結(jié)果通過(guò)EOC事件觸發(fā)DMA,并由DMA將轉(zhuǎn)換結(jié)果有序地搬到指定的內(nèi)存空間。

整個(gè)ADC序列的5個(gè)通道轉(zhuǎn)換完成后,進(jìn)入ADC的DMA傳輸完成中斷,在中斷回調(diào)函數(shù)里對(duì)各個(gè)通道的轉(zhuǎn)換結(jié)果進(jìn)行處理。之后,又可以開(kāi)始下一輪ADC轉(zhuǎn)換。

將上面提到的整個(gè)實(shí)現(xiàn)過(guò)程稍微整理下:

1、ADC轉(zhuǎn)換依靠定時(shí)器的更新事件觸發(fā),按照間斷模式進(jìn)行分組轉(zhuǎn)換。

2、開(kāi)啟了兩路DMA傳輸,1路用于ADC結(jié)果的搬運(yùn),另1路用于定時(shí)器ARR值的更新。

第1次定時(shí)觸發(fā)事件發(fā)生時(shí),完成第一組AD通道【CH1、CH2】的轉(zhuǎn)換,同時(shí)觸發(fā)定時(shí)器的DMA傳輸,修改ARR的值,由其決定第1次觸發(fā)事件與第2次觸發(fā)事件的的時(shí)間間隔;當(dāng)?shù)?次定時(shí)觸發(fā)事件發(fā)生時(shí),完成第二組AD通道【CH3、CH4】的轉(zhuǎn)換,同時(shí)觸發(fā)定時(shí)器的DMA傳輸,修改ARR的值,以決定第2次觸發(fā)事件與第3次觸發(fā)事件的時(shí)間間隔;當(dāng)?shù)?次觸發(fā)事件發(fā)生時(shí),這里只做第3組AD通道【CH5】的轉(zhuǎn)換,不通過(guò)DMA對(duì)ARR進(jìn)行修改,其值將在ADC的DMA傳輸完成中斷的回調(diào)函數(shù)里由用戶指定。

下面將整個(gè)配置和代碼實(shí)現(xiàn)的全過(guò)程貼出來(lái),以供參考。使用STM32CubeMx工具進(jìn)行圖形化配置,基于ST公司的STM32Cube庫(kù)來(lái)組織代碼。

假設(shè)第一組AD通道轉(zhuǎn)換后經(jīng)過(guò)0x7000個(gè)時(shí)間單位觸發(fā)第二組AD通道的轉(zhuǎn)換,再過(guò)0x5000個(gè)時(shí)間單位觸發(fā)第三組AD通道轉(zhuǎn)換?!緦?shí)際應(yīng)用時(shí),時(shí)基參數(shù)視具體情況而定】

一、基于CubeMx的配置【RCC/SYS的配置從略】。

1.1TIM3的配置,TIM3的更新事件觸發(fā)ADC轉(zhuǎn)換,并觸發(fā)DMA做ARR的更新。

1.2 ADC的配置?!具x擇5個(gè)ADC通道,間斷轉(zhuǎn)換模式,啟用ADC的DMA傳輸】

二、生成初始化代碼。

基于STM32Cube庫(kù),生成基于ARM KEIL MDK集成開(kāi)發(fā)環(huán)境的工程代碼。

三、添加用戶代碼?!敬a基于STM32Cube庫(kù)】

首先介紹下用戶代碼里用到的2個(gè)數(shù)組,分別是Adc_Value[5]和Data_Arr[2].

其中Adc_Value[5]用來(lái)存放ADC通道的的轉(zhuǎn)換結(jié)果,Data_Arr[2]用來(lái)存放ARR的數(shù)據(jù)以改變計(jì)時(shí)周期。二者分別被不同的DMA流訪問(wèn)。

3.1 在main()里添加如下用戶代碼。

第1行,清除定時(shí)器更新事件標(biāo)志。

紅色方框內(nèi)的兩行分別對(duì)ADC/TIM3的DMA傳輸做啟動(dòng)配置。

第4行使能TIM3更新事件的DMA請(qǐng)求。

4、結(jié)果驗(yàn)證。

將硬件連接好,編譯代碼,運(yùn)行后可以看到轉(zhuǎn)換結(jié)果。5個(gè)AD通道分為三組按預(yù)定時(shí)間間隔被依次觸發(fā)轉(zhuǎn)換,轉(zhuǎn)換結(jié)果被DMA搬到指定的內(nèi)存空間。通過(guò)調(diào)試器,我們可以看到ADC結(jié)果及定時(shí)器ARR的相應(yīng)變化。

小結(jié):這里主要是拋磚引玉似地介紹下STM32芯片ADC間斷轉(zhuǎn)換模式,同時(shí)用到了定時(shí)器和DMA兩個(gè)外設(shè)。希望能給讀者帶來(lái)些參考或啟示,將來(lái)在自己的開(kāi)發(fā)中變通使用。這幾個(gè)外設(shè)都是STM32芯片最常用、最基礎(chǔ)的外設(shè),掌握之后若能靈活使用,會(huì)讓我們的STM32開(kāi)發(fā)工作更加得心應(yīng)手。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6078

    文章

    45573

    瀏覽量

    673419
  • adc
    adc
    +關(guān)注

    關(guān)注

    100

    文章

    7946

    瀏覽量

    556864
  • STM32
    +關(guān)注

    關(guān)注

    2312

    文章

    11189

    瀏覽量

    374557
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3372

    瀏覽量

    124464

原文標(biāo)題:STM32 ADC間斷轉(zhuǎn)換模式應(yīng)用示例

文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    STM32和51單片機(jī)使用教程之實(shí)例說(shuō)明資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是STM32和51單片機(jī)使用教程之實(shí)例說(shuō)明資料免費(fèi)下載包括了:51單片機(jī)12864貪吃蛇游戲的設(shè)計(jì)精講,
    發(fā)表于 10-17 16:53 ?31次下載
    <b class='flag-5'>STM32</b>和51<b class='flag-5'>單片機(jī)</b>使用教程之<b class='flag-5'>實(shí)例</b><b class='flag-5'>說(shuō)明</b>資料免費(fèi)下載

    單片機(jī)教程之單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)例資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)教程之單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)例資料說(shuō)明主要內(nèi)容包括了:1 單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)方法,2
    發(fā)表于 12-18 16:48 ?51次下載
    <b class='flag-5'>單片機(jī)</b>教程之<b class='flag-5'>單片機(jī)</b>應(yīng)用系統(tǒng)的設(shè)計(jì)與<b class='flag-5'>實(shí)例</b>資料<b class='flag-5'>說(shuō)明</b>

    如何實(shí)現(xiàn)STM32F407單片機(jī)ADC轉(zhuǎn)換

    ADC轉(zhuǎn)換是把外面輸入到引腳的電壓值轉(zhuǎn)換成數(shù)字信號(hào),單片機(jī)里面有一個(gè)模擬至數(shù)字的轉(zhuǎn)換模塊,我們可以控制它采集引腳的電壓,
    發(fā)表于 12-26 15:08 ?2.8w次閱讀
    如何實(shí)現(xiàn)<b class='flag-5'>STM32</b>F407<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>ADC</b><b class='flag-5'>轉(zhuǎn)換</b>

    51單片機(jī)與計(jì)算機(jī)進(jìn)行異步串行通信的實(shí)例說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)與計(jì)算機(jī)進(jìn)行異步串行通信的實(shí)例說(shuō)明。
    發(fā)表于 08-08 17:33 ?2次下載
    51<b class='flag-5'>單片機(jī)</b>與計(jì)算機(jī)<b class='flag-5'>進(jìn)行</b>異步串行通信的<b class='flag-5'>實(shí)例</b><b class='flag-5'>說(shuō)明</b>

    如何配置minicom與51單片機(jī)進(jìn)行串口通信詳細(xì)實(shí)例說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何配置minicom與51單片機(jī)進(jìn)行串口通信詳細(xì)實(shí)例說(shuō)明。
    發(fā)表于 07-10 17:40 ?0次下載
    如何配置minicom與51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>進(jìn)行</b>串口通信詳細(xì)<b class='flag-5'>實(shí)例</b><b class='flag-5'>說(shuō)明</b>

    使用STM32單片機(jī)進(jìn)行電能測(cè)量的資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是設(shè)計(jì)使用STM32單片機(jī)和CS9505進(jìn)行電能測(cè)量的資料說(shuō)明。
    發(fā)表于 04-25 08:00 ?4次下載
    使用<b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>進(jìn)行</b>電能測(cè)量的資料<b class='flag-5'>說(shuō)明</b>

    如何使用STM32單片機(jī)進(jìn)行超聲波測(cè)距的程序和資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用STM32單片機(jī)進(jìn)行超聲波測(cè)距的程序和資料說(shuō)明。
    發(fā)表于 05-15 08:00 ?18次下載
    如何使用<b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>進(jìn)行</b>超聲波測(cè)距的程序和資料<b class='flag-5'>說(shuō)明</b>

    使用STM32F103RB單片機(jī)實(shí)現(xiàn)ADC實(shí)驗(yàn)的資料詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用STM32F103RB單片機(jī)實(shí)現(xiàn)ADC實(shí)驗(yàn)的資料詳細(xì)說(shuō)明。
    發(fā)表于 04-07 08:00 ?7次下載
    使用<b class='flag-5'>STM32</b>F103RB<b class='flag-5'>單片機(jī)</b>實(shí)現(xiàn)<b class='flag-5'>ADC</b>實(shí)驗(yàn)的資料詳細(xì)<b class='flag-5'>說(shuō)明</b>

    使用單片機(jī)實(shí)現(xiàn)ADC0809模數(shù)轉(zhuǎn)換與顯示的C語(yǔ)言實(shí)例免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)ADC0809模數(shù)轉(zhuǎn)換與顯示的C語(yǔ)言實(shí)例免費(fèi)下載
    發(fā)表于 03-31 11:20 ?29次下載

    單片機(jī)實(shí)例--ADC0809 AD轉(zhuǎn)換器基本應(yīng)用

    單片機(jī)實(shí)例--ADC0809 AD轉(zhuǎn)換器基本應(yīng)用(西工大現(xiàn)代電源技術(shù)考試)-該文檔為單片機(jī)實(shí)例-
    發(fā)表于 09-22 17:34 ?25次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>實(shí)例</b>--<b class='flag-5'>ADC</b>0809 AD<b class='flag-5'>轉(zhuǎn)換</b>器基本應(yīng)用

    MSP430單片機(jī)F54系列的單片機(jī)內(nèi)部的ADC轉(zhuǎn)換實(shí)例

    MSP430單片機(jī)F54系列的單片機(jī)內(nèi)部的ADC轉(zhuǎn)換實(shí)例(深圳核達(dá)中遠(yuǎn)通電源技術(shù)開(kāi)發(fā)有限公司招聘)-?這是MSP430
    發(fā)表于 09-22 18:47 ?9次下載
    MSP430<b class='flag-5'>單片機(jī)</b>F54系列的<b class='flag-5'>單片機(jī)</b>內(nèi)部的<b class='flag-5'>ADC</b><b class='flag-5'>轉(zhuǎn)換</b><b class='flag-5'>實(shí)例</b>

    STM32單片機(jī)雨滴模塊

    STM32單片機(jī)雨滴模塊提示:文章寫完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔文章目錄STM32單片機(jī)雨滴模塊前言一、設(shè)備說(shuō)明二、
    發(fā)表于 11-18 20:36 ?48次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b>雨滴模塊

    STM32單片機(jī)ADC采集

    STM32單片機(jī)ADC采集
    發(fā)表于 11-18 20:36 ?75次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>ADC</b>采集

    STM8S單片機(jī)進(jìn)行的光敏電阻ADC轉(zhuǎn)換功能

    使用STM8S單片機(jī)進(jìn)行的光敏電阻ADC轉(zhuǎn)換功能介紹。
    發(fā)表于 04-06 14:27 ?8次下載

    基于STM32單片機(jī)ADC使用庫(kù)文件設(shè)計(jì)源代碼

    基于STM32單片機(jī)ADC使用庫(kù)文件設(shè)計(jì)源代碼
    發(fā)表于 04-26 15:07 ?8次下載
    呼伦贝尔市| 平顺县| 岳池县| 成都市| 大名县| 庆安县| 民县| 水城县| 基隆市| 栾城县| 孙吴县| 正阳县| 深圳市| 津市市| 来宾市| 弥渡县| 志丹县| 疏勒县| 贺兰县| 扶风县| 洛扎县| 拉萨市| 剑河县| 彝良县| 万盛区| 长岛县| 扬州市| 万荣县| 客服| 商南县| 苏州市| 平山县| 崇阳县| 林州市| 连江县| 新绛县| 广南县| 北票市| 克拉玛依市| 西峡县| 壶关县|