<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

CW32單片機低電壓檢測器的使用介紹

jf_pJlTbmA9 ? 來源:武漢芯源半導體 ? 作者:武漢芯源半導體 ? 2023-09-18 10:56 ? 次閱讀

CW32的LVD低電壓檢測器適用于監測VDDA電源電壓或外部引腳輸入電壓,當被監測電壓與LVD閾值的比較結果滿足觸發的條件時,LVD將會產生中斷或者復位信號,通常用來處理一些緊急任務。LVD產生的中斷或復位標志,只能通過軟件程序清零,并且只有當中斷或復位標志被清零后,在再次達到觸發條件時,LVD才能再次產生中斷或復位信號。在本文中以CW32L083系列為例,介紹LVD的基本功能和使用例程。

LVD的基本功能介紹:

1、4路監測電壓源

VDDA電源電壓,PA00引腳輸入,PB00引腳輸入,PB11引腳輸入

2、16階閾值電壓,范圍2.02V-3.76V

3、3種觸發條件,可以組合使用

電平觸發:電壓低于閾值

下降沿觸發:電壓跌落到閾值以下的下降沿

上升沿觸發:電壓回升到閾值以上的上升沿

4、可觸發產生中斷或復位信號,二者不能同時產生

5、8階濾波可配置

6、支持遲滯功能

7、支持低功耗模式下運行,中斷喚醒MCU

wKgZomUDxiSAKzmwAAD4iZpez6w697.png

通過LVD的控制寄存器LVD_CR0的SOURCE位域來選擇LVD模塊監控的電壓(VDDA電源/ PA00引腳/PB00引腳/PB11引腳),在監測外部引腳電壓時,需將對應的GPIO端口配置為模擬輸入模式(GPIOx_ANALOG.PINy = 1)。

LVD的比較結果可以從PA01/PA08/PC12/PE02/PF02腳輸出,在此之前,需將對應的GPIO口配置為數字輸出模式,同時選擇端口位LVDOUT復用功能。

LVD 內置的電壓比較器具有遲滯功能,只有當被監測電壓高于或低于閾值電壓達到 20mV 時,比較器輸出信號才會發生翻轉,可避免當 LVD 的監測電壓在閾值電壓附近時,電壓比較器的輸出結果發生頻繁翻轉,增強系統抗干擾能力。具體波形如下圖所示:

wKgaomUDxiWAYk2HAADbJStzDes653.png

LVD的閾值電壓根據LVD控制寄存器LVD_CR0的VTH位控制。

wKgZomUDxieAI7mmAAD_EhGFpXQ115.png

LVD支持數字濾波功能,可以增強系統的魯棒性(系統在一定的參數抖動下,維持起某些性能的特性),可以將LVD電壓比較的輸出結果信號進行數字濾波,小于濾波寬度的信號被濾除,不會被觸發中斷或復位,如下圖所示,圖中兩處噪音或其他信號就被濾除了。

wKgaomUDxiiAYvSMAAB1SDmJUqE230.png

通過設置控制寄存器LVD_CR1的FLTEN位域,可以使能數字濾波模塊,當將該位設置為1的時候,會使能數字濾波模塊。

通過設置控制寄存器 LVD_CR1 的 FLTCLK 位域可以選擇數字濾波的時鐘

? FLTCLK 位為 1,選擇 HSIOSC 作為濾波時鐘

? FLTCLK 位為 0,選擇內置 RC 振蕩器時鐘作為濾波時鐘,其頻率約 150kHz

控制寄存器 LVD_CR1 的 FLTTIME 位域用于選擇數字濾波的時鐘個數,如下表所示:

wKgZomUDxiqAadfhAABuLM8tie0018.png

從 LVD 狀態寄存器 LVD_SR 的 FLTV 位域,可以讀出經 LVD 數字濾波后的信號電平;當 GPIO 的功能復用為 LVD_OUT 時,數字濾波后的信號就可以從 GPIO 輸出,以方便觀察測量。

LVD 支持在低功耗模式下工作,中斷輸出可將芯片從低功耗模式下喚醒。當被監測電壓與 LVD 閾值的比較結果滿足觸發條件時,可產生中斷或復位信號。產生中斷還是復位信號由控制寄存器 LVD_CR0 的 ACTION 位域控制:

? ACTION 為 1,LVD 觸發產生復位 #define LVD_Action_Reset ((uint32_t)0x00000002)

? ACTION 為 0,LVD 觸發產生中斷 #define LVD_Action_Irq ((uint32_t)0x00000000)

LVD可以通過設置控制寄存器 LVD_CR0 的 IE 位域為 1,使能 LVD 中斷,滿足觸發條件時將產生 LVD 中斷,中斷標志位 LVD_SR.INTF 會被硬件置 1,用戶可以向 INTF 位寫 0,清除中斷標志。設置控制寄存器 LVD_CR1 的 LEVEL、FALL、RISE 位域,可選擇不同的中斷或復位觸發方式,三者可組合使用:

? LEVEL 為 1,被監測電壓低于閾值時觸發中斷或產生復位

? FALL 為 1,被監測電壓跌落到閾值以下的下降沿觸發中斷或產生復位

? RISE 為 1,被監測電壓回升到閾值以上的上升沿觸發中斷或產生復位

LVD使用例程介紹:

根據上述內容,可以配置一個關于CW32L083的電壓監測例程,LVD的輸入通道設置為PA00,輸出端口為PA08,門限電壓為2.02V,利用LVD的中斷實現當LVD輸入通道電壓低于或者高于門限電壓時刻(利用上升沿和下降沿),PC03輸出電平翻轉一次。

voidLVD_PortInit(void)
{
GPIO_InitTypeDefGPIO_InitStructure={0};

//打開GPIOA時鐘
__RCC_GPIOA_CLK_ENABLE();

//將PA08設置為LVD比較結果輸出
GPIO_InitStructure.Pins=GPIO_PIN_8;
GPIO_InitStructure.Mode=GPIO_MODE_OUTPUT_PP;
GPIO_Init(CW_GPIOA, GPIO_InitStructure);

//將PA08復用為LVD比較結果輸出
PA08_AFx_LVDOUT();
//將PA00設置為LVD的輸入口
PA00_ANALOG_ENABLE();
}

intmain(void)
{
LVD_InitTypeDefLVD_InitStruct={0};

//LED初始化
LED_Init();

//配置測試IO口
LVD_PortInit();

LVD_InitStruct.LVD_Action=LVD_Action_Irq;//配置中斷功能
LVD_InitStruct.LVD_Source=LVD_Source_PA00;//配置LVD輸入口為PA00
LVD_InitStruct.LVD_Threshold=LVD_Threshold_2p02V;//配置LVD基準電壓為2.02v
LVD_InitStruct.LVD_FilterEn=LVD_Filter_Enable;//LVD濾波模塊開啟
LVD_InitStruct.LVD_FilterClk=LVD_FilterClk_RC150K;//LVD濾波時鐘為150KHz
LVD_InitStruct.LVD_FilterTime=LVD_FilterTime_4095Clk;
LVD_Init( LVD_InitStruct);

LVD_TrigConfig(LVD_TRIG_FALL|LVD_TRIG_RISE,ENABLE);//LVD中斷為上升沿和下降沿觸發
LVD_EnableIrq(LVD_INT_PRIORITY);
LVD_ClearIrq();
FirmwareDelay(4800);
LVD_Enable();//LVD使能

while(1)
{
if(gFlagIrq)
{
PC03_TOG();
gFlagIrq=FALSE;
}
}
}

/**
*@briefLEDI/O初始化
*
*/
voidLED_Init(void)
{
GPIO_InitTypeDefGPIO_InitStructure={0};

//打開GPIOC時鐘
REGBITS_SET(CW_SYSCTRL->AHBEN,SYSCTRL_AHBEN_GPIOC_Msk);

/*ConfiguretheGPIO_LEDpin*/
GPIO_InitStructure.Pins=GPIO_PIN_2|GPIO_PIN_3;
GPIO_InitStructure.Mode=GPIO_MODE_OUTPUT_PP;
GPIO_Init(CW_GPIOC, GPIO_InitStructure);

//LEDsareoff.
PC02_SETLOW();
PC03_SETLOW();
}

//LVD中斷服務函數
voidLVD_IRQHandler(void)
{
LVD_ClearIrq();//清除中斷標志
gFlagIrq=TRUE;//將gFlagIrq賦值為TURE
}

根據上述例程可以得到在PA00的輸入電壓值低于2.02v或高于2.02v的瞬間時刻,LVD會產生中斷,PC03的輸出電平會產生翻轉,可利用CW32L083的開發板和一根杜邦線,將PA00和DVCC連接,在連接上的時刻以及拔掉杜邦線的時刻,LED1的狀態會發生翻轉。

來源:武漢芯源半導體

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6008

    文章

    44044

    瀏覽量

    622445
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16089

    瀏覽量

    344433
  • 檢測器
    +關注

    關注

    1

    文章

    816

    瀏覽量

    47331
  • 武漢芯源
    +關注

    關注

    1

    文章

    58

    瀏覽量

    154
收藏 人收藏

    評論

    相關推薦

    基于低功耗32位MCU CW32系列的智能溫控的應用

    25 年 @85℃●最大 24K 字節 RAM,支持奇偶校驗●復位和電源管理--低功耗模式(Sleep,DeepSleep)--上電和掉電復位(POR/BOR)--可編程低電壓檢測器(LVD)●實時
    發表于 08-16 10:20

    CW32 低電壓檢測器介紹

    復位標志,只能通過軟件程序清零,只有當中斷或復位標志被清零后,在再次達到觸發條件時,LVD才能再次產生中斷或復位信號。本文以CW32L083為例,介紹LVD的使用方法。低電壓檢測器(L
    發表于 12-08 14:03

    CW32單片機在智能馬桶的應用介紹

    和調節。本文將介紹CW32單片機在智能馬桶的詳細應用。 圖:CW32的智能馬桶控制板 CW32單片機
    發表于 12-20 10:06

    電池低電壓檢測器電路圖

    電池低電壓檢測器電路圖
    發表于 05-06 23:27 ?2299次閱讀
    電池<b class='flag-5'>低電壓</b><b class='flag-5'>檢測器</b>電路圖

    電池低電壓檢測器電路圖

    電池低電壓檢測器電路圖
    發表于 05-13 15:24 ?986次閱讀
    電池<b class='flag-5'>低電壓</b><b class='flag-5'>檢測器</b>電路圖

    瑞薩單片機電壓檢測器(低壓復位)(六)

    瑞薩單片機電壓檢測器的使用
    發表于 12-20 18:59 ?5次下載
    瑞薩<b class='flag-5'>單片機</b>之<b class='flag-5'>電壓</b><b class='flag-5'>檢測器</b>(低壓復位)(六)

    CW32 低電壓檢測器介紹

    或復位標志,只能通過軟件程序清零,只有當中斷或復位標志被清零后,在再次達到觸發條件時,LVD才能再次產生中斷或復位信號。本文以CW32L083為例,介紹LVD的使用方法。低電壓檢測器
    的頭像 發表于 12-08 14:05 ?518次閱讀
    <b class='flag-5'>CW32</b> <b class='flag-5'>低電壓</b><b class='flag-5'>檢測器</b><b class='flag-5'>介紹</b>

    cw32和stm32的區別

    cw32和stm32的區別 CW32和STM32是兩種常見的單片機,被廣泛應用于各種電子設備中。在本文中,我們將深入探討CW32和STM32之間的區別和優劣勢。 1. 硬件性能 硬件性
    的頭像 發表于 08-16 11:15 ?2536次閱讀

    CW32單片機UART波特率設置介紹

    CW32單片機UART波特率設置介紹
    的頭像 發表于 10-24 17:35 ?530次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>UART波特率設置<b class='flag-5'>介紹</b>

    CW32單片機UART基本數據收發功能介紹

    CW32單片機UART基本數據收發功能介紹
    的頭像 發表于 10-24 16:50 ?451次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>UART基本數據收發功能<b class='flag-5'>介紹</b>

    CW32單片機I2C接口讀寫EEPROM芯片介紹

    CW32單片機I2C接口讀寫EEPROM芯片介紹
    的頭像 發表于 11-09 17:42 ?646次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>I2C接口讀寫EEPROM芯片<b class='flag-5'>介紹</b>

    CW32 PWM輸出功能介紹

    CW32 PWM輸出功能介紹
    的頭像 發表于 09-27 16:12 ?453次閱讀
    <b class='flag-5'>CW32</b> PWM輸出功能<b class='flag-5'>介紹</b>

    基于CW32的物聯網應用

    CW32】基于CW32的物聯網應用
    的頭像 發表于 11-02 15:55 ?375次閱讀
    基于<b class='flag-5'>CW32</b>的物聯網應用

    CW32單片機在智能馬桶的應用介紹

    智能科技的迅速發展使得我們的日常生活變得更加便捷和舒適。智能馬桶作為其中一種智能家居產品,通過單片機接受和處理來自傳感器的數據,然后通過控制模塊對智能馬桶的各項功能進行控制,實現對智能馬桶的全面控制和調節。本文將介紹CW32
    的頭像 發表于 12-20 10:02 ?400次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>在智能馬桶的應用<b class='flag-5'>介紹</b>

    CW32單片機在智能馬桶的應用介紹

    和調節。本文將介紹CW32單片機在智能馬桶的詳細應用。圖:CW32的智能馬桶控制板CW32單片機
    的頭像 發表于 12-20 10:09 ?304次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>在智能馬桶的應用<b class='flag-5'>介紹</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>