HAL庫啟動ADC的三個函數的區別

HAL_ADC_Start

應該是啟動ADC轉換的最基本函數。只是啟動一次轉換,然后需要用戶自己去查詢轉換是否完成,或者可能只是單次轉換。比如,當調用這個函數后,ADC開始轉換,但程序需要不斷檢查某個標志位來看轉換是否完成,然后才能讀取結果。這種方法可能在簡單的應用中使用,比如只需要偶爾采樣一個模擬信號的時候。

  • ?簡單粗暴版:你喊一聲“開始轉換!”,ADC就吭哧吭哧干活。但干完活它不會主動告訴你,你得自己時不時瞅一眼(輪詢),問它“好了沒?”。
  • ?適用場景:適合偶爾測一次數據的情況,比如每隔幾秒讀取一次溫度傳感器。

HAL_ADC_Start_IT

HAL_ADC_Start_IT,這個函數應該中斷有關。IT通常代表中斷,所以這個函數啟動ADC轉換,并且允許在轉換完成時觸發中斷。這樣,當ADC轉換完成后,CPU會被中斷,然后執行中斷服務程序,在中斷里讀取ADC的結果。這樣就不需要程序不斷地輪詢狀態標志,而是可以去做其他事情,等轉換完成時自動處理。這種方式適用于需要定期采樣,但又不想讓CPU一直等待的情況,可以提高效率。

  • ?貼心助手版:你喊“開始轉換,完事了叫我!”,ADC干完活立馬拍你肩膀(觸發中斷),喊你趕緊取數據。這樣你就不用一直盯著,可以先去刷會兒手機(CPU處理其他任務)。
  • ?適用場景:需要及時處理每次采樣但頻率不高的情況,比如每毫秒讀取一次按鍵狀態。

HAL_ADC_Start_DMA

DMA是直接內存訪問,這個函數是在啟動ADC轉換的同時,配置DMA來自動將轉換結果傳送到內存中的緩沖區,而不需要CPU的干預。這樣,ADC每完成一次轉換(或者在連續模式下多次轉換),DMA會自動把數據搬運到指定的數組或內存區域。這對于需要高速采樣或者大量數據采集的應用非常有用,因為這樣可以大大減少CPU的負擔,讓CPU可以去處理其他任務,而DMA和ADC自動完成數據的采集和傳輸。

  • ?全自動土豪版:你提前準備好一個大籃子(內存數組),喊一聲“開始轉換,往這里塞!”。ADC和DMA這對好基友就會默默干活,ADC負責采樣,DMA負責搬數據到籃子。裝滿一籃子才叫你,中間完全不用你操心。
  • ?適用場景:高速連續采集,比如錄音、心電圖等需要處理大量數據的場景。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/71643.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/71643.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/71643.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

EXIT原理和使用

要用到的控制器NVIC(中斷總控制器)、EXIT(外部中斷控制器) (EXIT是NVIC是下屬) GPIO外部中斷簡圖 EXIT的基本概念 EXIT主要特性 EXTI工作原理框圖(從輸入線開始看) 6個寄存器 EXTI和IO的映射關系 AFIO簡介 EXTI與IO對應關系 如…

經典核密度估計(Kernel Density Estimation):從直覺到數學

經典核密度估計(Kernel Density Estimation):從直覺到數學 作為一名在大模型時代進入深度學習領域的研究者,你可能對 Transformer、擴散模型等現代技術駕輕就熟。然而,在閱讀一些生成模型的文獻(如 Explic…

Halcon 算子 一維碼檢測識別、項目案例

首先我們要明白碼的識別思路 把窗口全部關閉讀取新的圖片圖像預處理創建條碼模型設置模型參數搜索模型獲取條碼結果顯示條碼結果 圖像預處理和條碼增強 對比度太低: scale_image(或使用外部程序scale_image_range),增強圖像的對比度圖像模糊…

vue-cli3+vue2+elementUI+avue升級到vite+vue3+elementPlus+avue總結

上一個新公司接手了一個vue-cli3vue2vue-router3.0elementUI2.15avue2.6的后臺管理項目,因為vue2在2023年底已經不更新維護了,elementUI也只支持到vue2,然后總結了一下vue3的優勢,最后批準升級成為了vitevue3vue-router4.5element…

SpringBoot實戰(三十五)微服務集成OAuth2.0(UAA)

目錄 一、知識回顧1.1 什么是 OAuth2 協議?1.2 OAuth2 的4個角色1.3 OAuth2 的3種令牌1.4 OAuth2 的5種認證方式1.5 OAuth2 內置接口地址 二、UAA介紹2.1 概述2.2 UAA的主要功能2.3 UAA 的應用場景 三、微服務集成3.1 集成示例介紹3.2 集成測試 一、知識回顧 在進行…

紅果短劇安卓+IOS雙端源碼,專業短劇開發公司

給大家拆解一下紅果短劇/河馬短劇,這種看光解鎖視頻,可以掙金幣的短劇APP。給大家分享一個相似的短劇APP源碼,這個系統已接入穿山甲廣告、百度廣告、快手廣告、騰訊廣告等,類似紅果短劇的玩法,可以看劇賺錢&#xff0c…

從0開始的操作系統手搓教程23:構建輸入子系統——實現鍵盤驅動1——熱身驅動

目錄 所以,鍵盤是如何工作的 說一說我們的8042 輸出緩沖區寄存器 狀態寄存器 控制寄存器 動手! 注冊中斷 簡單整個鍵盤驅動 Reference ScanCode Table 我們下一步就是準備進一步完善我們系統的交互性。基于這個,我們想到的第一個可以…

百度SEO關鍵詞布局從堆砌到場景化的轉型指南

百度SEO關鍵詞布局:從“堆砌”到“場景化”的轉型指南 引言 在搜索引擎優化(SEO)領域,關鍵詞布局一直是核心策略之一。然而,隨著搜索引擎算法的不斷升級和用戶需求的多樣化,傳統的“關鍵詞堆砌”策略已經…

Python ? Unix時間戳轉日期或日期轉時間戳工具分享

設計一款Unix時間戳和日期轉換工具,其代碼如下: from datetime import datetimeclass Change_Date_Time(object):def __init__(self, date_strNone, date_numNone):self.date_str date_strself.date_num date_num# 轉時間戳def datetime2timestamp(s…

【目標檢測】【NeuralPS 2023】Gold-YOLO:通過收集與分發機制實現的高效目標檢測器

Gold-YOLO: Efficient Object Detector via Gather-and-Distribute Mechanism Gold-YOLO:通過收集與分發機制實現的高效目標檢測器 0.論文摘要 在過去的幾年中,YOLO系列模型已成為實時目標檢測領域的領先方法。許多研究通過修改架構、增強數…

π0源碼解析——一個模型控制7種機械臂:對開源VLA sota之π0源碼的全面分析,含我司的部分落地實踐

前言 ChatGPT出來后的兩年多,也是我瘋狂寫博的兩年多(年初deepseek更引爆了下),比如從創業起步時的15年到后來22年之間 每年2-6篇的,干到了23年30篇、24年65篇、25年前兩月18篇,成了我在大模型和具身的原始技術積累 如今一轉眼…

K8s 1.27.1 實戰系列(六)Pod

一、Pod介紹 1、Pod 的定義與核心設計 Pod 是 Kubernetes 的最小調度單元,由一個或多個容器組成,這些容器共享網絡、存儲、進程命名空間等資源,形成緊密協作的應用單元。Pod 的設計靈感來源于“豌豆莢”模型,容器如同豆子,共享同一環境但保持隔離性。其核心設計目標包括…

企業日常工作中常用的 Linux 操作系統命令整理

Linux 操作系統命令整理 在企業級運維、開發和日常工作中,Linux 命令是繞不開的核心技能。不論是日志排查、進程管理,還是高效運維優化,掌握這些命令都能讓你事半功倍!本篇文章整理了自己在日常工作中積累最常用的 Linux 命令&am…

實現NTLM relay攻擊工具的Python代碼示例

以下是一個實現NTLM relay攻擊工具的Python代碼示例,該工具可以完成自動掃描IP、配置相關協議、獲取hash、自動化設置和執行攻擊步驟等功能。 代碼思路 IP掃描:使用scapy庫進行IP掃描,找出活躍的IP地址。Responder配置:自動配置…

Kotlin和Java區別

哈哈哈,前段時間,面試的時候,突然問到我Kotlin和Java的區別,一下子把我問懵逼了,確實沒遇到問這個的,想了下,說了下Kotlin的編譯時空檢查機制,代碼更簡潔,很多封裝好的AP…

【大模型】大模型分類

大模型(Large Models)通常指參數量巨大、計算能力強大的機器學習模型,尤其在自然語言處理(NLP)、計算機視覺(CV)等領域表現突出。以下是大模型的常見分類方式: 1. 按應用領域分類 …

centos中使用svn整理

centos中使用svn整理 1. 安裝 SVN 客戶端2. 常見 SVN 用法及示例2.1 創建 SVN 倉庫2.2 檢出(Checkout)項目2.3 添加文件到版本控制2.4 提交(Commit)更改2.5 更新(Update)本地工作副本2.6 查看文件狀態2.7 查…

游戲元宇宙崛起:AI代理IP驅動虛擬世界“無限可能”?

在科技飛速發展的當下,游戲元宇宙正以一種前所未有的姿態崛起,它猶如一顆璀璨的新星,吸引著無數人的目光。而AI代理IP,正成為驅動這個虛擬世界展現“無限可能”的關鍵力量。 「快代理|11年專注企業級代理IP云服務 —…

基于Servlet + JSP 的物業管理系統

Javaweb物業管理系統|Java|Servlet | JavaWeb|web網站| 分管理員登錄,用戶登錄。 一、內容 項目源碼 配套文檔 環境部署教程 項目運行教程 二、技術介紹 技術應用: Servlet JavaBean CSS JSP 開發環…

Billing的patient balance的2個例子

Billing的patient balance的2個例子 第一個例子 下面是 0852醫院的00005641的計算: 主保險 Allowable: 78.81 Applied:61.79 CoInsurance:17.02 第二保險 Allowable: 15.76 Applied:15.76 我們在計算時是用主保險的Allowable: 78.81&#xff…