ADC的模擬看門狗用于檢查電壓是否越界。他又上下兩個邊界,可分別在寄存器ADC_HTR和ADC_LTR中設(shè)置。庫函數(shù)是使用ADC_AnalogWatchdogThresholdsConfig設(shè)置的,無論是常規(guī)通道還是注入通道,都非常簡單
當(dāng)模擬看門狗檢測到電壓高于上限或者低于下限時將會產(chǎn)生看門狗中斷。捕獲這個中斷,可以做出一些應(yīng)對措施。
數(shù)據(jù)手冊上特別之處的一個東西:模擬看門狗說使用的比較數(shù)據(jù)與ADC_CR2寄存器中設(shè)置的數(shù)據(jù)對齊方式無關(guān)??撮T狗比較是在數(shù)據(jù)對齊之前完成的。先進(jìn)行看門狗比較,再將數(shù)據(jù)放入ADC_DR數(shù)據(jù)寄存器。
在ST的庫中,只有簡單的三個與看門狗相關(guān)的函數(shù):
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設(shè)置觸發(fā)看門狗的上下限
使用ADC_AnalogWatchdogSingleChannelConfig配置要使用模擬看門狗的通道
配置完成后使用ADC_AnalogWatchdogCmd啟動模擬看門狗。
我寫的函數(shù)很簡單,就這么三行。將模擬看門狗加在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); //設(shè)置中斷優(yōu)先級分組
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);
}
當(dāng)然,最后別忘了打開ADC的中斷:
ADC_ITConfig(ADC1,ADC_IT_AWD,ENABLE);
上一篇:如何通過STM32驅(qū)動nRF24L01發(fā)送數(shù)據(jù)
下一篇:基于LinkedInSTM32F4時鐘系統(tǒng)初始化設(shè)置
推薦閱讀最新更新時間:2025-06-21 01:26





- 熱門資源推薦
- 熱門放大器推薦
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- Microchip 升級數(shù)字信號控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導(dǎo)體STM32MP23x:突破成本限制的工業(yè)AI應(yīng)用核心
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- LT8705AIFE 用于超級電容器備用電源的降壓-升壓型 DC/DC 控制器的典型應(yīng)用
- #第五屆立創(chuàng)電子設(shè)計大賽#MetooKey硬件密碼管理器
- USB電壓電流表
- 汽車中的真空管熒光顯示器(VFD)參考設(shè)計
- OP297GSZ-REEL精密正峰值檢波器的典型應(yīng)用
- 2相雙極步進(jìn)電機(jī)驅(qū)動IC —— TB62214AFNG
- LT3055 系列的典型應(yīng)用 - 具有精密電流限制和診斷功能的 500mA、線性穩(wěn)壓器
- AD9265-105EBZ,是 16 位 105 Msps 評估板(與 HSC-ADC-EVALCZ 兼容)
- Arduino based AD8307 PowerMeter
- EVAL-ADF7021-NDBEZ,基于 ADF7021-N 421 - 440 MHz ISM 頻段收發(fā)器的子板,帶有外部電感 VCO
- 優(yōu)派曲面電競顯示器VX2716-2KC-PRO助你輕松開啟暢玩模式
- 英特爾再談收購格芯;三星可折疊手機(jī)預(yù)售超S21
- 高亮商務(wù)新光源 優(yōu)派推出全新商用投影機(jī)LS500WH
- 51單片機(jī)實(shí)現(xiàn)數(shù)碼管作為儀表盤顯示跑馬燈的方向,速度和運(yùn)
- 安霸AI域控制器CV3解析:算法優(yōu)先、為融合優(yōu)化、可裁剪擴(kuò)展
- atmega8 例程:T1定時器 CTC模式 方波輸出
- 市場陷入存量競爭后:手機(jī)產(chǎn)業(yè)怎樣突圍?
- Q值的丈量
- 西門子和三菱系列PLC的基本邏輯指令
- 單片機(jī)位帶牽涉的指針變量問題
- "智能汽車芯片大戰(zhàn)升級:高通最新方案為何獲中國車企追捧?
- 電壓精度0.5% @25°C!思瑞浦發(fā)布全新車規(guī)并聯(lián)基準(zhǔn)芯片TPR43xQ系列產(chǎn)品
- AI技術(shù)在方便面生產(chǎn)質(zhì)量監(jiān)控中的應(yīng)用
- 潤石科技推出RS3215-Q1系列低壓差線性穩(wěn)壓器
- CANape 23開啟智能測試新時代(下)
- 軟件定義汽車電源管理設(shè)計:NXP的PMIC選型攻略解析
- 深度測評時空壺X1同聲傳譯器:全球最先進(jìn)AI同傳設(shè)備的非凡實(shí)力
- 作為領(lǐng)先的垂直整合制造商(IDM),英飛凌在 300mm氮化鎵生產(chǎn)路線圖方面取得突破
- 鐵威馬F6-424 Max:六盤位擴(kuò)容+國產(chǎn)系統(tǒng)兼容,小白也能玩轉(zhuǎn)NAS
- 開關(guān)電源給鉛酸電池恒流恒壓充電的電流跳動問題解析
- 2020Q1智能手機(jī)顯示面板市場份額排行,第一名毫無懸念
- 英特爾助推物聯(lián)網(wǎng)創(chuàng)新應(yīng)用落地,2020 EdgeX中國挑戰(zhàn)賽打響
- Nordic低功耗藍(lán)牙SoC無線跟蹤器產(chǎn)品讓你不在丟三落四
- 推動SOC全生命周期管理設(shè)計,西門子收購UltraSoC
- BionicFlower仿生花:仿生機(jī)器花朵
- 蕪湖市機(jī)器人產(chǎn)業(yè)發(fā)展勢頭良好 產(chǎn)值預(yù)計全年同比增長18%
- 浙江提升關(guān)鍵技術(shù)創(chuàng)新能力 專注打造全國智能機(jī)器人產(chǎn)業(yè)高地
- 韓國為了應(yīng)對高齡化社會帶來的影響 推出了預(yù)防癡呆癥的機(jī)器人
- 農(nóng)業(yè)機(jī)器人崛起會對農(nóng)民有不好的影響嗎
- 多項(xiàng)成果落地 國際機(jī)器人檢測認(rèn)證與長三角產(chǎn)業(yè)創(chuàng)新大會圓滿舉行