娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

STM32單片機ADC的模擬看門狗的測試

發布者:EnchantedMelody最新更新時間:2024-05-13 來源: elecfans關鍵字:STM32  單片機  ADC  模擬看門狗 手機看文章 掃描二維碼
隨時隨地手機看文章

ADC的模擬看門狗用于檢查電壓是否越界。他又上下兩個邊界,可分別在寄存器ADC_HTR和ADC_LTR中設置。庫函數是使用ADC_AnalogWatchdogThresholdsConfig設置的,無論是常規通道還是注入通道,都非常簡單

STM32單片機ADC的模擬看門狗的測試

當模擬看門狗檢測到電壓高于上限或者低于下限時將會產生看門狗中斷。捕獲這個中斷,可以做出一些應對措施。

數據手冊上特別之處的一個東西:模擬看門狗說使用的比較數據與ADC_CR2寄存器中設置的數據對齊方式無關。看門狗比較是在數據對齊之前完成的。先進行看門狗比較,再將數據放入ADC_DR數據寄存器

在ST的庫中,只有簡單的三個與看門狗相關的函數:

void ADC_AnalogWatchdogCmd(ADC_TypeDef* ADCx, uint32_t ADC_AnalogWatchdog);

void ADC_AnalogWatchdogThresholdsConfig(ADC_TypeDef* ADCx, uint16_t HighThreshold,uint16_t LowThreshold);

void ADC_AnalogWatchdogSingleChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel);

使用ADC_AnalogWatchdogThresholdsConfig設置觸發看門狗的上下限

使用ADC_AnalogWatchdogSingleChannelConfig配置要使用模擬看門狗的通道

配置完成后使用ADC_AnalogWatchdogCmd啟動模擬看門狗。

我寫的函數很簡單,就這么三行。將模擬看門狗加在ADC1的CH1上。代碼如下:

void ADC_WatchdogConfig(void)

{

ADC_AnalogWatchdogSingleChannelConfig(ADC1,ADC_Channel_0);

ADC_AnalogWatchdogThresholdsConfig(ADC1,1500,0xFFF);

ADC_AnalogWatchdogCmd(ADC1,ADC_AnalogWatchdog_SingleRegEnable);

}

NVIC中初始化模擬看門狗:

void NVIC_Config(void)

{

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //設置中斷優先級分組

NVIC_InitStructure.NVIC_IRQChannel = ADC_IRQn;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x01;

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x00;

NVIC_Init(&NVIC_InitStructure);

}

捕獲看門狗中斷:

void ADC_IRQHandler(void)

{

ADC_ITConfig(ADC1,ADC_IT_AWD,DISABLE);

if(SET == ADC_GetFlagStatus(ADC1,ADC_FLAG_AWD))

{

ADC_ClearFlag(ADC1,ADC_FLAG_AWD);

ADC_ClearITPendingBit(ADC1,ADC_IT_AWD);

printf(“ADC AWD is happened.rn”);

}

ADC_ITConfig(ADC1,ADC_IT_AWD,ENABLE);

}

當然,最后別忘了打開ADC的中斷:

ADC_ITConfig(ADC1,ADC_IT_AWD,ENABLE);


關鍵字:STM32  單片機  ADC  模擬看門狗 引用地址:STM32單片機ADC的模擬看門狗的測試

上一篇:如何通過STM32驅動nRF24L01發送數據
下一篇:基于LinkedInSTM32F4時鐘系統初始化設置

推薦閱讀最新更新時間:2025-05-24 02:06

STM32速成筆記(7)—ADC
一、什么是ADC ADC(Analogto-Digital Converter)模擬數字轉換器,是將模擬信號轉換成數字信號的一種外設。比如某一個電阻兩端的是一個模擬信號,單片機無法直接采集,此時需要ADC先將短租兩端的電壓這個模擬信號轉化成數字信號,單片機才能夠進行處理。 二、ADC的用途 ADC具有將模擬信號轉換成數字信號的能力,比如將模擬的電壓轉換成數字信號,單片機進行處理。可以用作溫度監測或者電流監測等方面,用途極廣。 三、STM32F103ZET6的ADC 根據中文參考手冊介紹,STM32F103ZET6單片機有3個12位ADC,共有18個通道,可測量16個外部和2個內部信號源。各通道的A/D轉換可以單次、連續、掃
[單片機]
<font color='red'>STM32</font>速成筆記(7)—<font color='red'>ADC</font>
STM32ADC多路采集 DMA傳輸 數據錯位
解決方法:不要采用連續轉換模式 ADC_InitStructure.ADC_ContinuousConvMode = DISABLE; 需要時才實施轉換 ADC_SoftwareStartConvCmd(ADC1, ENABLE); 轉換后取消轉換 ADC_SoftwareStartConvCmd(ADC1, DISABLE); 經過測試能夠解決stm32 adc dma多通道采樣 數據錯位. DMA為循環模式更改為非循環模式,將開啟DMA傳輸和開啟ADC規則轉換這兩句話單獨拿出。 每一次DMA傳輸都在特定條件下,由我們自己開啟。在每一次DMA傳輸完成進入中斷之前 都將AD轉換器和DMA傳輸關閉,切換通道完成之
[單片機]
<font color='red'>STM32</font>的<font color='red'>ADC</font>多路采集 DMA傳輸 數據錯位
STM32初學筆記5之ADC(上)
自己單獨編寫了一個ADC的單獨API接口文件,如下所示: =============================================================== ADC_Config.C =============================================================== /** ** 文件名稱:ADC_Config.C ** 功能描述:ADC轉換模塊的配置 ** 硬件平臺:ALIENTEK(STM32F103RBT6) ** 編譯環境:Keil uversion4 IDE ** 庫版本 :v3.5.0
[單片機]
<font color='red'>STM32</font>初學筆記5之<font color='red'>ADC</font>(上)
STM32ADC實測
  測試芯片:STM32F103R8T6 (雙AD)   編譯平臺:IAR5.40   測試概述:使用片內振蕩器時鐘HSI,雙ADC同步采樣,ADC1采用DMA1存放,ADC2采用直接讀取。        每讀取十個采樣值計數一次,定時一秒鐘,通過串口將采樣次數送出,測試ADC采樣速率。 一、主頻設為:56MHz   使用HSI,STM32F103最高頻率可達72MHz,主頻在56MHz時AD速率最大。   RCC_PLLConfig(RCC_PLLSource_HSI_Div2,RCC_PLLMul_14);   // 8 2 14 = 56MHz 二、ADC工作頻率:14MHz   RCC_ADCCLKConfig(RC
[單片機]
<font color='red'>STM32</font>的<font color='red'>ADC</font>實測
關于STM32 ADC_速度問題
STM32F103xx系列稱為增強型產品,增強型產品的最高時鐘頻率可以達到72MHz。增強型產品的英文名稱為Performance Line。 STM32F101xx系列稱為基本型產品,基本型產品的最高時鐘頻率可以達到36MHz。基本型產品的英文名稱為Access Line。 根據設計,當ADC模塊的頻率為14MHz時,可以達到ADC的最快采樣轉換速度。 要得到14MHz的ADC頻率,就要求SYSCLK的頻率是14MHz的倍數,即14MHz、28MHz、42MHz、56MHz、70MHz、84MHz等;對于基本型產品14MHz和28MHz處于它的最大允許頻率范圍內;對于增強型產品,14MHz、28MHz、42MHz、56MHz和
[單片機]
51單片機學習:ADC模數轉換實驗--外部通道電壓采集
實驗名稱:ADC模數轉換實驗--外部通道電壓采集 接線說明: 實驗現象:下載程序后,數碼管上顯示AD模塊采集外部通道AIN3的電壓值 注意事項: ***************************************************************************************/ #include public.h #include smg.h #include xpt2046.h /******************************************************************************* * 函 數 名 : main * 函數功能 :
[單片機]
STM8單片機ADC連續采樣模式
STM8S003單片機內部ADC為12位,A/D轉換的各個通道可以執行單次和連續的轉換模式。 單次轉換模式的意思就是,ADC每次轉換一次數據后,就會停止轉換,如果還需要繼續轉換的話,就需要手動開啟第二次轉換功能。 連續轉換模式的意思就是每次轉換結束后,系統會自動開啟第二次轉換,不需要手動設置第二次轉換的開啟,也就是說連續轉換模式只需要開啟一次。 ADC框圖如下: ADC連續模式轉換時序圖如下: 通過時序圖可以看出,在第2次轉換完成后,第一次采樣的結果才會輸出,也就是結果輸出比采樣滯后了一個周期。 下面用代碼來實現ADC的連續轉換模式: #include adc.h #include main.h
[單片機]
STM8<font color='red'>單片機</font><font color='red'>ADC</font>連續采樣模式
基于51單片機的1602+ADC0832煙霧報警系統
本設計基于51單片機,共有ADC0832數模轉換模塊,1602液晶顯示模塊,按鍵控制與聲光報警模塊4大模塊組成!可實現對煙霧濃度的實時監測與反應 之后是仿真目錄 下面是部分代碼,想要了解,可以下載文末完整附件! //基于1602+ADC0832的煙霧/溫度報警系統 //作者:科技小宅神 //創作時間:2020/09/20 //版權:科技小宅神原創!抄襲必究,僅供參考學習! #include reg51.h //包含51單片機寄存器的頭文件 #include 1602.h //調用1602.h文件 #include intrins.h //包含_nop_函數定義的頭文件 #define uchar unsigned char #
[單片機]
基于51<font color='red'>單片機</font>的1602+<font color='red'>ADC</font>0832煙霧報警系統
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 宁乡县| 武安市| 临湘市| 江西省| 张家口市| 兖州市| 三门县| 正阳县| 三江| 景宁| 莆田市| 兴山县| 兴宁市| 白水县| 海城市| 偏关县| 建平县| 锡林浩特市| 皮山县| 盐池县| 甘肃省| 仁布县| 米脂县| 长顺县| 西充县| 柘城县| 昌邑市| 临海市| 新巴尔虎左旗| 大关县| 道孚县| 新田县| 沅陵县| 瓦房店市| 景宁| 商城县| 馆陶县| 屯昌县| 建德市| 关岭| 丹棱县|