- void PVD_IRQHandler(void)
- {
- if (EXTI_GetITStatus(EXTI_Line16) != RESET)
- {
- //清理16號中斷線
- EXTI_ClearITPendingBit(EXTI_Line16);
- //警報燈LE0翻轉
- LED0 = !LED0;
- AT24CXX_Write(0, (u8*)PVD, sizeof(PVD));
- }
- }
- void PVD_Init(void)
- {
-
- NVIC_InitTypeDef NVIC_InitStruct;
- EXTI_InitTypeDef EXTI_InitStructure;
- NVIC_InitStruct.NVIC_IRQChannel = PVD_IRQn;
- NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority = 0;
- NVIC_InitStruct.NVIC_IRQChannelSubPriority = 2;
- NVIC_InitStruct.NVIC_IRQChannelCmd = ENABLE;
- NVIC_Init(&NVIC_InitStruct);//允許中斷
-
- EXTI_ClearITPendingBit(EXTI_Line16);
- EXTI_InitStructure.EXTI_Line = EXTI_Line16;
- EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
- EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling;//EXTI_Trigger_Falling ;//EXTI_Trigger_Rising;
- EXTI_InitStructure.EXTI_LineCmd = ENABLE;
- EXTI_Init(&EXTI_InitStructure);
-
-
- // 以下PVD_Init 一份. main函數在 PVD_Init();前一份
- PWR_PVDLevelConfig(PWR_PVDLevel_2V5);
- PWR_PVDCmd(ENABLE);
- RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE); //_PWR, ENABLE);
- }
復制代碼
【必讀】版權免責聲明
1、本主題所有言論和內容純屬會員個人意見,與本論壇立場無關。2、本站對所發內容真實性、客觀性、可用性不做任何保證也不負任何責任,網友之間僅出于學習目的進行交流。3、對提供的數字內容不擁有任何權利,其版權歸原著者擁有。請勿將該數字內容進行商業交易、轉載等行為,該內容只為學習所提供,使用后發生的一切問題與本站無關。 4、本網站不保證本站提供的下載資源的準確性、安全性和完整性;同時本網站也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的損失或傷害。 5、本網站所有軟件和資料均為網友推薦收集整理而來,僅供學習用途使用,請務必下載后兩小時內刪除,禁止商用。6、如有侵犯你版權的,請及時聯系我們(電子郵箱1370723259@qq.com)指出,本站將立即改正。
|