亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STM32F407的高速峰值檢測方法

        2021-08-21 09:46:16魏烈祥汪天照張晶廖輝秦家寶
        電子制作 2021年14期
        關(guān)鍵詞:看門狗模擬信號波峰

        魏烈祥,汪天照,張晶,廖輝,秦家寶

        (湖北方圓環(huán)??萍加邢薰荆蔽錆h,430074)

        模擬信號峰值檢測在儀器儀表和工業(yè)檢測中應(yīng)用非常普遍,如放射性粒子檢測、光譜分析和機(jī)械受損峰值壓力等。常規(guī)方法采用高速AD+FPGA實(shí)現(xiàn),技術(shù)要求高、價(jià)格比較昂貴。為此介紹一種基于STM32F407的低成本高速模擬信號峰值檢測方法,通過三重ADC交替采樣,利用DMA將實(shí)時(shí)采樣數(shù)據(jù)傳送到環(huán)形隊(duì)列存放;動態(tài)設(shè)置STM32F407內(nèi)置模擬看門狗上下限閾值;截取有效峰值信號并進(jìn)行濾波和尋峰處理。通過此方法,AD采樣率高達(dá)8.4MHz, 可以實(shí)時(shí)高速采樣有效的模擬峰值信號,實(shí)現(xiàn)模擬信號的峰值檢測。

        1 基本原理

        傳感器輸出的模擬信號經(jīng)過前置放大、S–K濾波、高斯成形和調(diào)理,送入STM32F407內(nèi)部A/D通道進(jìn)行采樣、濾波和尋峰處理,如圖1所示。

        圖1 電路框圖

        STM32F407是ST(意法半導(dǎo)體)基于ARMCortex?–M4為內(nèi)核的高性能微控制器,所使用的ART技術(shù)使得程序零等待執(zhí)行,程序執(zhí)行的效率非常高。集成了單周期DSP指令和FPU(floating point unit,浮點(diǎn)單元),提升了計(jì)算能力,可以進(jìn)行一些復(fù)雜的計(jì)算和控制。

        STM32F407自帶多通道、三路ADC控制器,每路ADC具有DMA功能,ADC轉(zhuǎn)換精度為12位,其中三路ADC控制器可以實(shí)現(xiàn)對同一通道的信號進(jìn)行交替采樣,實(shí)現(xiàn)對一個(gè)模擬通道信號的高速數(shù)據(jù)采集。每路ADC最大的采樣率達(dá)到了2.8M,三路ADC在規(guī)則組模式下交替采樣最快可以達(dá)到8.4M的采樣率。模擬看門狗可以實(shí)時(shí)監(jiān)控ADC通道模擬信號是否在設(shè)定的上下限閾值范圍內(nèi)[1]。

        ■1.1 多重ADC工作原理

        在規(guī)則組模式下,三重交替ADC工作原理如圖2所示。三路ADC:ADC1、ADC2和ADC3在規(guī)則組模式下交替轉(zhuǎn)換,每一路ADC最小采樣時(shí)間(Sampling time)為3個(gè)ADC時(shí)鐘周期,AD轉(zhuǎn)換時(shí)間(Conversion time )最小12個(gè)ADC時(shí)鐘周期。兩路ADC之間最小間隔(Delay between sampling start of 2 ADC)5個(gè)ADC時(shí)鐘周期。采用STM32F407三重ADC交替采樣技術(shù)對同一模擬通道數(shù)據(jù)采集只需要5個(gè)ADC時(shí)鐘周期,最快采樣時(shí)間不到120ns,最高采樣率可達(dá)8.4MHz。

        圖2 三重交替ADC原理框圖

        ■1.2 模擬看門狗閾值設(shè)置

        STM32F407內(nèi)模擬看門狗可以通過設(shè)置上下限閾值,HTR寄存器設(shè)置上限閾值,LTR寄存器設(shè)置下限閾值,實(shí)時(shí)監(jiān)控ADC模擬輸入信號的幅度是否異常。

        模擬看門狗實(shí)時(shí)監(jiān)控模擬輸入信號,當(dāng)模擬信號高于上限閾值HTR 或小于下限閾值LTR 時(shí),會引發(fā)模擬看門狗中斷。

        本方法的基本思路是:STM32F407的ADC工作在三重ADC交替工作模式,三路ADC對同一通道模擬信號連續(xù)、實(shí)時(shí)采樣,ADC轉(zhuǎn)換后的數(shù)據(jù)通過DMA方式存儲到環(huán)形存儲隊(duì)列AdBuあer中。模擬看門狗實(shí)時(shí)監(jiān)控該通道的模擬信號,通過動態(tài)設(shè)置上下限閾值,在環(huán)形隊(duì)列AdBuあer中提取上升沿(信號大于Vthreshold),下降沿(信號小于Vmin)信號波峰區(qū)域的數(shù)據(jù)序列,如圖3所示。剔除波峰寬度過大和過小的波峰信號(即t1–t0過大或過?。?,對有效模擬信號波峰數(shù)據(jù)(t0到t1之間AD轉(zhuǎn)換數(shù)據(jù))尋峰處理求出tp時(shí)刻峰值Vpp的數(shù)據(jù)并保存[2]。

        圖3 模擬信號峰值波形圖

        2 軟件設(shè)計(jì)

        本方法軟件主要包括ADC和DMA初始化、模擬看門狗中斷程序和尋峰程序。

        圖4 DMA存儲環(huán)形隊(duì)列AdBuffer

        ■2.1 初始化程序

        設(shè)置ADC采用DMA的通道,數(shù)據(jù)從三重模式的 ADC通用規(guī)則數(shù)據(jù)寄存器(ADC–>CDR)傳輸?shù)絻?nèi)存(環(huán)形隊(duì)列AdBuあer)。每次傳輸?shù)拇笮榘胱郑?6位),用于存放12位AD轉(zhuǎn)換數(shù)據(jù),內(nèi)存大小為M個(gè)半字。使用DMA循環(huán)傳輸模式[3]。

        模擬輸入信號接入到三路ADC的模擬通道,每路ADC連續(xù)對模擬通道采樣轉(zhuǎn)換,轉(zhuǎn)換結(jié)束立即啟動DMA,將轉(zhuǎn)換結(jié)果數(shù)據(jù)傳輸?shù)江h(huán)形隊(duì)列AdBuあer保存。三重ADC交替采樣,在時(shí)間上采樣順序?yàn)锳DC1、ADC2、ADC3、ADC1…。模擬看門狗實(shí)時(shí)監(jiān)控三路ADC模擬通道的信號,設(shè)置上下限閾值,啟動模擬看門狗中斷[4]。

        下面是部分初始化程序:

        ■2.2 模擬看門狗中斷、濾波及尋峰程序

        模擬看門狗中斷程序功能是檢測模擬信號波峰的上升沿和下降沿,在下降沿時(shí)對有效模擬信號的波峰數(shù)據(jù)脈寬濾波及尋峰處理。如圖5所示,模擬看門狗實(shí)時(shí)監(jiān)控模擬信號,在檢測模擬信號波峰的上升沿時(shí),將模擬看門狗的上限閾值設(shè)為Vthreshold,下限閾值設(shè)為0,當(dāng)模擬信號大于Vthreshold時(shí)會產(chǎn)生模擬看門狗中斷,表示收到模擬信號的上升沿信號,處理上升沿程序;在檢測模擬信號波峰的下降沿時(shí),將模擬看門狗的上限閾值設(shè)為滿刻度,下降沿設(shè)為Vmin,當(dāng)模擬信號小于Vmin(即下降沿)時(shí)會產(chǎn)生模擬看門狗中斷,表示收到模擬信號的下降沿信號,處理下降沿程序[5]。

        具體流程:進(jìn)入模擬看門狗中斷程序后,首先判斷當(dāng)前中斷是上升沿中斷還是下降沿中斷。如圖3、圖4所示,如果是上升沿中斷,保存該時(shí)刻(t0時(shí)刻)的DMA計(jì)數(shù)器NDTR在環(huán)形隊(duì)列中的位置Addr0,并且重新設(shè)置模擬看門狗的閾值為檢測下降沿的閾值,表示已監(jiān)測到脈沖信號的上升沿,下次需要監(jiān)測脈沖信號的下降沿,退出模擬看門狗中斷;如果是下降沿中斷,表示已監(jiān)測到脈沖信號的下降沿,開始對監(jiān)測到的脈沖上升沿至下降沿之間的波形數(shù)據(jù)進(jìn)行脈寬濾波、最大值尋峰處理。具體過程:記下此時(shí)刻(t1時(shí)刻)的DMA計(jì)數(shù)器NDTR在環(huán)形隊(duì)列中的位置Addr1,將環(huán)形隊(duì)列AdBuあer中上升沿的位置Addr0和下降沿的位置Addr1中的采樣數(shù)據(jù)AdBuあer[Addr0]~ AdBuあer[Addr1]復(fù)制到緩沖區(qū)WaveBuあer中,由于ADC工作在三重ADC交替DMA工作模式,對信號的采樣是連續(xù)、實(shí)時(shí)采樣的,每個(gè)采樣數(shù)據(jù)的AD轉(zhuǎn)換時(shí)間都是一樣的,因此可以通過波形上升沿t0時(shí)刻在循環(huán)隊(duì)列的采樣數(shù)據(jù)AdBuあer[Addr0]和下降沿t1時(shí)刻在循環(huán)隊(duì)列的采樣數(shù)據(jù)AdBuあer[Addr1]之間在循環(huán)隊(duì)列AdBuあer中一共采樣了多少個(gè)數(shù)據(jù)乘以ADC轉(zhuǎn)換時(shí)間來計(jì)算上升沿和下降沿之間的時(shí)間間隔,即檢測到的信號波峰脈寬t,比較t與有效信號的脈寬時(shí)間范圍,當(dāng)t不在有效信號的脈寬時(shí)間范圍內(nèi)時(shí),信號為干擾信號,過濾掉脈寬過寬或過窄的信號,退出中斷程序,不作尋峰處理;否則在緩沖區(qū)WaveBuあer的數(shù)據(jù)中尋找最大值,也就是尋峰處理,尋出的最大值即為峰值數(shù)據(jù)(tp時(shí)刻波峰Vpp的采樣數(shù)據(jù))。此時(shí)信號檢測完畢,需要監(jiān)測下一個(gè)脈沖信號,重新設(shè)置模擬看門狗的閾值為檢測上升沿的閾值,退出模擬看門狗中斷。圖6和圖7是模擬看門狗中斷服務(wù)程序流程圖和尋峰處理流程圖。

        圖6

        圖7

        3 結(jié)束語

        本文利用STM32F407微控制器芯片的特點(diǎn),采用其帶有規(guī)則組交替轉(zhuǎn)換的三路ADC對模擬信號采樣,將ADC采樣率提高了兩倍,利用DMA技術(shù),實(shí)時(shí)保存采樣數(shù)據(jù),同時(shí)結(jié)合模擬看門狗對模擬信號的實(shí)時(shí)監(jiān)控,巧妙的提取信號的上升沿和下降沿,截取峰數(shù)據(jù)序列,實(shí)現(xiàn)模擬信號的峰值檢測,摒棄了傳統(tǒng)的脈沖幅度甄別電路、閾值調(diào)節(jié)電路和脈沖峰值保持電路,使得信號調(diào)理電路簡單、信噪比提高、抗干擾性能好、脈沖計(jì)數(shù)通過率高。

        本方法已成功運(yùn)用在公司的放射性檢測儀器設(shè)備產(chǎn)品中。

        猜你喜歡
        看門狗模擬信號波峰
        作用于直立堤墻與樁柱的波峰高度分析計(jì)算
        把他叫醒
        一種基于ADG426多路模擬開關(guān)的模擬信號輸入接口設(shè)計(jì)
        電子制作(2019年7期)2019-04-25 13:18:00
        一種模擬信號選通運(yùn)算電路的設(shè)計(jì)
        電子測試(2018年14期)2018-09-26 06:04:08
        模擬信號的三種調(diào)制方法比較研究
        電子制作(2017年24期)2017-02-02 07:14:19
        兒童標(biāo)準(zhǔn)12導(dǎo)聯(lián)T波峰末間期的分析
        Dynamic Loads and Wake Prediction for Large Wind Turbines Based on Free Wake Method
        一種采用FPGA實(shí)現(xiàn)的通用看門狗電路
        大眾科技(2015年11期)2015-11-24 01:57:16
        把它叫醒
        基于單片機(jī)的模擬信號自動追蹤控制器
        亚洲色婷婷免费视频高清在线观看| 少妇被粗大进猛进出处故事| 亚洲国产精品久久久久久无码| 亚洲丁香五月天缴情综合| 日韩在线观看你懂的| 亚洲精品一区二区三区av| 青青青免费在线视频亚洲视频 | 少妇愉情理伦片| 国产免费一区二区三区在线观看| 精品国产91久久久久久久a| 国产一区在线视频不卡| 久久精品国产亚洲av无码偷窥| 成av人片一区二区三区久久| 国产午夜无码精品免费看动漫| 在线观看播放免费视频| 18禁止进入1000部高潮网站| 成人免费看吃奶视频网站| 国产在亚洲线视频观看| 中文字幕亚洲中文第一| 男女18禁啪啪无遮挡激烈网站 | 狼人综合干伊人网在线观看| 午夜少妇高潮在线观看| 亚洲熟女乱色综合亚洲图片| 精品亚洲午夜久久久久| 日本精品av中文字幕| 国产精品无码一区二区三区在| 无码国产午夜福利片在线观看| 久久婷婷是五月综合色狠狠| 天涯成人国产亚洲精品一区av| 亚洲精品色午夜无码专区日韩| 久久精品国产亚洲av成人| 加勒比熟女精品一区二区av| 亚洲精品国产av成人精品| 久久夜色精品国产欧美乱| 亚洲av日韩av一卡二卡| 白白色视频这里只有精品| 性色av免费网站| 国产精品密播放国产免费看| 国产蜜臀精品一区二区三区| 99国产精品久久99久久久| 亚洲欧美另类激情综合区|